.cam-main{max-width:1440px;margin:auto;padding:36px 28px 64px}.cam-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.cam-heading h1{font-size:clamp(42px,6vw,76px);letter-spacing:-3px;margin:8px 0;color:#102a43;line-height:1.05}.cam-heading em{color:#087dba;font-style:normal}.cam-tagline{font-size:20px;margin:16px 0 24px}.cam-totals{font-size:16px;color:#3e5c75;max-width:280px;line-height:1.7}.cam-totals strong{display:block;color:#102a43;font-size:32px}.cam-controls{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:16px;margin:12px 0 26px;background:#eff5f9;padding:20px;border-radius:16px}.cam-controls label{font-size:14px;font-weight:700;display:grid;gap:8px}.cam-controls input,.cam-controls select{font:inherit;font-size:16px;width:100%;min-width:0;background:white;padding:12px;border:1px solid #bbcbd7;border-radius:8px;color:#102a43}.cam-stage{background:#091d2e;border-radius:20px;overflow:hidden;color:#fff;margin-bottom:32px;box-shadow:0 14px 36px #102a4318}.stage-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px}.stage-top .eyebrow{color:#92b6d1}.stage-top h2{font-size:26px;margin:6px 0 0;color:white}.stage-top a{font-size:16px;background:#fff;color:#12334c;border-radius:8px;padding:12px 16px;text-decoration:none}.cam-viewer{min-height:240px;background:#061521;display:flex;align-items:center;justify-content:center;position:relative;text-align:center;padding:24px}.cam-viewer img{display:block;width:100%;max-height:540px;object-fit:contain}.cam-viewer:has(img){padding:0}.cam-viewer p{max-width:620px;line-height:1.7;font-size:16px;color:#d4e3ed}.cam-viewer a{display:inline-block;color:#08283e;background:#9edcf7;padding:13px 20px;border-radius:8px;font-weight:700;margin-top:8px;text-decoration:none}.cam-image-button{display:block;background:none;border:0;padding:0;cursor:zoom-in;width:100%}.cam-angles{display:flex;gap:8px;flex-wrap:wrap;padding:16px 24px}.cam-angles button{border:1px solid #59718a;background:transparent;color:white;padding:10px 14px;border-radius:8px;font-size:14px;cursor:pointer}.cam-angles button[aria-pressed=true]{background:#b1e6ff;color:#12334c;border-color:#b1e6ff}.cam-caption{padding:0 24px 20px;margin:0;font-size:14px;line-height:1.6;color:#c3d7e6}.cam-results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.cam-results-heading h2{font-size:28px;letter-spacing:-.7px}.cam-results-heading p{font-size:14px;color:#436279}.cam-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.cam-card{background:white;border:1px solid #ccdce7;border-radius:14px;overflow:hidden;box-shadow:0 4px 14px #15364a06}.cam-card.selected{border:2px solid #0986c7}.cam-card-top{display:flex;align-items:center;justify-content:space-between;background:#eaf3f9;padding:14px 18px}.cam-code{font-weight:800;letter-spacing:1px;color:#0c6898;font-size:18px}.cam-card small{font-size:12px;color:#47667f}.cam-card-body{padding:18px}.cam-card h3{font-size:20px;margin:0 0 10px;line-height:1.3}.cam-card p{font-size:14px;color:#526d82;margin:8px 0;line-height:1.5}.cam-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:20px}.cam-card button,.cam-more{font:inherit;font-size:16px;background:#102f49;color:#fff;border:0;padding:11px 16px;border-radius:8px;cursor:pointer}.cam-card a{font-size:14px;color:#096b9f}.cam-more{display:block;margin:24px auto}.cam-more[hidden]{display:none}.cam-networks{border-top:1px solid #d5e1ea;margin-top:40px;padding-top:24px}.cam-networks h2{font-size:24px}.cam-networks a{display:inline-block;margin:8px 20px 8px 0;font-size:16px;color:#086894}.cam-networks p{font-size:14px;line-height:1.7;color:#526b7c;max-width:900px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #08a6df;outline-offset:3px}.cam-error{padding:20px;background:#eff5f9;border-radius:12px}.cam-fullscreen{width:min(95vw,1400px);max-width:95vw;padding:16px;background:#061521;color:white;border:1px solid #45677e;border-radius:12px}.cam-fullscreen::backdrop{background:#000c}.cam-fullscreen img{max-width:100%;max-height:80vh;display:block;margin:auto}.cam-fullscreen button{float:right;padding:10px 20px;margin-bottom:12px;font:inherit;background:white;border:0;border-radius:6px;cursor:pointer}
@media(max-width:900px){.cam-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cam-controls{grid-template-columns:1fr 1fr}.cam-controls label:first-child{grid-column:1/-1}.cam-heading{align-items:start}.cam-totals strong{font-size:24px}}@media(max-width:560px){.cam-main{padding:24px 16px 40px}.cam-heading{display:block}.cam-totals{max-width:none;margin:8px 0 20px}.cam-totals strong{display:inline;font-size:20px}.cam-grid{grid-template-columns:1fr}.cam-controls{grid-template-columns:1fr;padding:16px}.stage-top{display:block;padding:20px}.stage-top a{display:inline-block;margin-top:16px}.cam-results-heading{display:block}.cam-results-heading h2{margin-bottom:4px}.cam-heading h1{letter-spacing:-2px}.cam-angles{padding:16px}.cam-viewer{min-height:200px}}
.stage-top a[hidden]{display:none}
.cam-viewer p.cam-error{color:#17394f;background:#eff5f9}

/* Keep the airport count separate from the directory coverage on every screen. */
.cam-totals strong{display:block!important;line-height:1.3;margin-bottom:6px}.cam-coverage{display:block;line-height:1.5}.cam-totals small{display:block;font-size:12px;line-height:1.5;margin-top:8px}
