/* Source palettes and airport applications. */
.af-case [hidden] {display:none!important}
.af-palette-tabs {display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.af-palette-tabs button {font:inherit;font-size:14px;min-height:44px;padding:11px 18px;border:1px solid #b9c6d4;background:transparent;color:#001e4e;cursor:pointer;border-radius:30px}
.af-palette-tabs button[aria-selected=true] {background:#001e4e;color:white;border-color:#001e4e}
.af-palette-tabs button:hover {box-shadow:inset 0 0 0 1px #001e4e}
.af-case button:focus-visible {outline:3px solid #ee7623;outline-offset:5px}
.af-palette-purpose {color:#53647a;max-width:760px;margin:0 0 24px!important;min-height:58px}
.af-swatches {display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0}
.af-swatch {position:relative;min-width:0;min-height:260px;background:var(--swatch);color:var(--swatch-ink);border:1px solid #001e4e12;padding:24px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;gap:22px;font:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s}
.af-swatch>span {font-size:13px;line-height:1.5;max-width:190px;overflow-wrap:break-word}
.af-swatch>strong {font-size:clamp(19px,2vw,31px);font-weight:500;letter-spacing:-.04em}
.af-swatch>small {font-size:11px;line-height:1.5}
.af-swatch[aria-pressed=true] {z-index:1;box-shadow:inset 0 0 0 3px currentColor}
.af-swatch[aria-pressed=true]:after {content:'✓';position:absolute;right:14px;top:12px;font-size:16px}
.af-swatch:hover {transform:translateY(-5px);z-index:2}
.af-colour-detail {display:grid;grid-template-columns:1fr 1.6fr;gap:22px 40px;border-top:1px solid #b8c4d0;padding-top:30px;margin-top:30px;min-height:185px}
.af-case .af-colour-detail h3 {font-size:27px;margin-top:10px;letter-spacing:-.04em}
.af-colour-detail dl {display:grid;grid-template-columns:1fr 1.2fr 1.5fr;gap:20px;align-self:center}
.af-colour-detail dt {font-size:11px;color:#53647a;letter-spacing:.08em;margin-bottom:10px}
.af-colour-detail dd {font-size:16px;margin:0;line-height:1.5}
.af-case .af-colour-source-note {grid-column:2;font-size:12px;line-height:1.6;color:#66513b;min-height:38px}
.af-case .af-colour-footnote {font-size:12px;line-height:1.7;color:#53647a;max-width:760px;margin-top:22px}
.af-case .af-environment-layout {display:block}
.af-environment-copy {display:grid;grid-template-columns:1fr 2fr 1.4fr;gap:32px;margin-bottom:45px}
.af-environment-copy h2 {font-size:clamp(34px,4.4vw,68px);line-height:1.08}
.af-environment-copy p {font-size:15px;color:#53647a}
.af-environment-gallery {display:grid;grid-template-columns:1fr 1fr;gap:35px 25px}
.af-environment-card:first-child {grid-column:1/-1}
.af-open-detail {display:block;width:100%;position:relative;border:0;background:#f5f6f8;padding:0;cursor:zoom-in}
.af-open-detail img {display:block;width:100%;height:350px;object-fit:contain}
.af-environment-card:first-child .af-open-detail img {height:auto;max-height:650px}
.af-open-detail>span {position:absolute;right:18px;bottom:18px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#001e4e;background:white;box-shadow:0 2px 12px #001e4e15;font-size:22px}
.af-environment-card figcaption {padding-top:17px}
.af-environment-card figcaption strong {font-size:20px;font-weight:500}
.af-case .af-environment-card figcaption p {font-size:14px;line-height:1.7;color:#53647a;margin-top:9px}
.af-case .af-environment-note {font-size:12px;color:#53647a;line-height:1.7;margin-top:26px;max-width:800px}
.af-detail-dialog {border:0;background:#f4f6f8;color:#001e4e;padding:20px;width:min(1200px,94vw);max-height:94svh;overflow:auto}
.af-detail-dialog::backdrop {background:#00132acc;backdrop-filter:blur(4px)}
.af-detail-toolbar {display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:15px;font-size:15px}
.af-close-detail {font:inherit;font-size:27px;color:#001e4e;border:1px solid #c8d0dc;background:white;width:44px;height:44px;flex:none;border-radius:50%;cursor:pointer}
.af-detail-dialog>img {display:block;width:100%;height:auto;max-height:78svh;object-fit:contain}
@media(max-width:760px) {
  .af-palette-tabs {gap:7px;margin-bottom:22px}
  .af-palette-tabs button {font-size:12px;padding:10px 15px}
  .af-palette-purpose {min-height:100px;font-size:15px!important}
  .af-swatches {grid-template-columns:1fr 1fr}
  .af-swatch {padding:18px 15px;min-height:190px;gap:20px}
  .af-swatch>span {font-size:11px;padding-right:10px}
  .af-swatch>strong {font-size:22px}
  .af-swatch>small {font-size:10px}
  .af-colour-detail {grid-template-columns:1fr;gap:25px;min-height:260px}
  .af-colour-detail dl {gap:12px;grid-template-columns:1fr 1fr}
  .af-colour-detail dl>div:last-child {grid-column:1/-1}
  .af-colour-detail dd {font-size:15px}
  .af-case .af-colour-source-note {grid-column:1}
  .af-environment-copy {grid-template-columns:1fr;gap:18px;margin-bottom:30px}
  .af-environment-gallery {grid-template-columns:1fr;gap:30px}
  .af-open-detail img {height:auto;max-height:440px}
  .af-detail-dialog {padding:14px}
}
@media(prefers-reduced-motion:reduce) {.af-swatch{transition:none}.af-swatch:hover{transform:none}}
