
/* Capabilities specific enhancements */
.table { width:100%; border-collapse:collapse; margin:1rem 0; }
.table th, .table td { border:1px solid rgba(200,161,90,.35); padding:.6rem; text-align:left; }
.table th { background:#111827; color:#e5e7eb; }
.table caption { text-align:left; font-weight:700; margin-bottom:.5rem; color:#e5e7eb; }
.cap-gallery {position:relative}
.cap-gallery .track {display:flex; gap:.75rem; overflow-x:auto; scroll-snap-type:x mandatory; padding:.5rem 0}
.cap-gallery .track img {width:300px; height:220px; object-fit:cover; border:2px solid var(--accent); border-radius:10px; scroll-snap-align:start; background:#0b1220}
.cap-gallery .arrows {display:flex; gap:.5rem; justify-content:flex-end; margin:.25rem 0}
.cap-gallery button {background:#0b1220; border:1px solid rgba(200,161,90,.35); color:#e5e7eb; padding:.4rem .6rem; border-radius:8px}
.cap-gallery button:hover {border-color:#c8a15a}
/* Full-bleed hero */
.hero-cap {position:relative; min-height:420px; display:flex; align-items:center; justify-content:center; text-align:center; width:100vw; left:50%; right:50%; margin-left:-50vw; margin-right:-50vw}
.hero-cap video {position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:contrast(1.05) brightness(0.9)}
.hero-cap .overlay {position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0.55), rgba(0,0,0,0.65))}
.hero-cap .content {position:relative; z-index:1; max-width:860px; padding:2rem; margin:0 auto; text-align:center}
