.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.osc-hero{min-height:clamp(560px,72vw,790px);display:grid;align-items:end;isolation:isolate;background:#071b2e}
.osc-hero-picture,.osc-hero-picture img,.osc-hero-fallback,.osc-hero-overlay{position:absolute;inset:0;width:100%;height:100%}
.osc-hero-picture{z-index:-3;display:block}.osc-hero-picture img{object-fit:cover}.osc-hero-fallback{z-index:-3;background:linear-gradient(135deg,#071b2e,#1f6b9f)}
.osc-hero-overlay{z-index:-2;background:linear-gradient(90deg,rgba(4,15,26,.8) 0%,rgba(4,15,26,.53) 48%,rgba(4,15,26,.2) 75%,rgba(4,15,26,.38) 100%),linear-gradient(0deg,rgba(4,15,26,.58),transparent 48%)}
.osc-hero-content{padding-top:110px;padding-bottom:74px}.osc-hero-title-panel{max-width:850px;padding:34px 38px 35px;background:rgba(7,27,46,.56);border-left:4px solid #d99a2b;border-radius:0 8px 8px 0;box-shadow:0 18px 50px rgba(0,0,0,.2);backdrop-filter:blur(3px)}
.osc-hero h1{margin-bottom:24px;font-size:clamp(3rem,6.5vw,6rem);text-shadow:0 2px 22px rgba(0,0,0,.32)}.osc-hero .osc-status-badge{margin-top:0;background:rgba(2,12,21,.6)}
.osc-project-intro{text-align:center;background:#fff}.osc-project-intro .narrow{max-width:860px}.osc-project-intro .lead{color:#102a43;font-size:clamp(1.24rem,2.2vw,1.58rem);line-height:1.65}.osc-project-intro .button-row{justify-content:center;margin-top:30px}.osc-intro-updated{margin:20px 0 0;color:#52606d;font-size:.82rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em}
.osc-media-heading{display:flex;justify-content:space-between;gap:42px;align-items:end}.osc-media-heading>div{max-width:760px}.osc-media-heading p:last-child{margin-bottom:0}.osc-image-count{flex:0 0 auto;color:#52606d;font-size:.78rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.osc-carousel{max-width:1120px;margin:42px auto 0}.osc-carousel-viewport{overflow:hidden;border:1px solid #c8d4dd;border-radius:12px;background:#071b2e;box-shadow:0 20px 48px rgba(16,42,67,.14);touch-action:pan-y pinch-zoom}.osc-carousel-track{display:flex;padding:0;margin:0;list-style:none;will-change:transform}.osc-carousel-slide{min-width:100%;margin:0}.osc-media-open{width:100%;padding:0;display:block;color:inherit;text-align:left;background:#fff;border:0;cursor:zoom-in}.osc-media-open:focus-visible{outline:4px solid #d99a2b;outline-offset:-4px}.osc-slide-picture,.osc-slide-picture img{display:block;width:100%}.osc-slide-picture img{height:auto;aspect-ratio:16/9;object-fit:cover;background:#dce6ed}.osc-media-caption{min-height:78px;display:flex;justify-content:space-between;gap:25px;align-items:center;padding:17px 21px;color:#102a43;background:#fff}.osc-media-caption strong{font-size:1rem}.osc-media-caption small{color:#52606d;text-align:right}
.osc-carousel-controls{display:flex;justify-content:center;align-items:center;gap:19px;margin-top:18px}.osc-carousel-arrow{width:48px;height:48px;display:grid;place-items:center;color:#fff;background:#102a43;border:1px solid #102a43;border-radius:50%;font-size:1.35rem;cursor:pointer}.osc-carousel-arrow:hover{color:#071b2e;background:#d99a2b;border-color:#d99a2b}.osc-carousel-arrow:focus-visible,.osc-lightbox button:focus-visible{outline:3px solid #1f6b9f;outline-offset:3px}.osc-carousel-status{min-width:72px;margin:0;color:#102a43;text-align:center;font-size:.84rem;font-weight:850;letter-spacing:.08em}
.osc-original-details{background:#fff}.osc-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:0;margin:40px 0 0;list-style:none}.osc-detail-grid li{min-width:0}.osc-detail-grid .osc-media-open{height:100%;overflow:hidden;border:1px solid #d6e0e7;border-radius:9px;box-shadow:0 10px 25px rgba(16,42,67,.08)}.osc-detail-picture,.osc-detail-picture img{display:block;width:100%}.osc-detail-picture img{aspect-ratio:4/3;object-fit:cover;background:#e9eff3}.osc-detail-grid .osc-media-caption{min-height:104px;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:5px;padding:15px}.osc-detail-grid .osc-media-caption small{text-align:left}
.osc-historic-footage{color:#e7eef3;background:linear-gradient(145deg,#071b2e,#102f49)}.osc-historic-footage h2,.osc-historic-footage h3{color:#fff}.osc-historic-footage .eyebrow{color:#eeb95a}.osc-historic-footage .section-heading>p:last-child{max-width:760px;color:#cbd9e2}.osc-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:42px}.osc-video-card{overflow:hidden;background:#fff;border:1px solid #4b687d;border-radius:10px;box-shadow:0 18px 40px rgba(0,0,0,.24)}.osc-video-frame{aspect-ratio:16/9;background:#02080d}.osc-video-frame video{width:100%;height:100%;display:block;object-fit:contain}.osc-video-copy{padding:18px 20px 20px}.osc-video-copy h3{margin:0 0 7px;color:#102a43;font-size:1.15rem}.osc-video-copy p{margin:0;color:#52606d;font-size:.8rem}
.osc-condition-grid{grid-template-columns:minmax(0,860px);justify-content:center}.osc-condition-grid>div:first-child{max-width:860px}
.osc-lightbox{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;color:#fff;background:rgba(2,10,17,.97);border:0}.osc-lightbox::backdrop{background:rgba(2,10,17,.88)}.osc-lightbox-shell{position:relative;width:100%;height:100%;display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;padding:28px}.osc-lightbox figure{min-width:0;max-width:min(1400px,100%);max-height:calc(100vh - 56px);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto}.osc-lightbox img{display:block;max-width:100%;max-height:calc(100vh - 125px);object-fit:contain}.osc-lightbox figcaption{width:100%;padding:14px 4px;color:#dbe6ed;text-align:center}.osc-lightbox button{width:48px;height:48px;display:grid;place-items:center;color:#fff;background:rgba(16,42,67,.82);border:1px solid #70889a;border-radius:50%;font-size:1.45rem;cursor:pointer}.osc-lightbox-close{position:absolute;z-index:2;top:20px;right:20px}.osc-lightbox-nav{justify-self:center}
@media(max-width:768px){.osc-hero{min-height:620px}.osc-hero-overlay{background:linear-gradient(0deg,rgba(4,15,26,.86) 0%,rgba(4,15,26,.42) 70%,rgba(4,15,26,.24) 100%)}.osc-hero-content{padding-top:180px;padding-bottom:44px}.osc-hero-title-panel{padding:25px 22px 27px}.osc-hero h1{font-size:clamp(2.65rem,12vw,4.6rem)}.osc-media-heading{display:block}.osc-image-count{margin-top:12px}.osc-media-caption{min-height:98px;flex-direction:column;align-items:flex-start;gap:5px}.osc-media-caption small{text-align:left}.osc-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.osc-video-grid{grid-template-columns:1fr}.osc-lightbox-shell{grid-template-columns:52px minmax(0,1fr) 52px;padding:18px 5px}.osc-lightbox button{width:42px;height:42px}.osc-lightbox-close{top:12px;right:12px}.osc-lightbox img{max-height:calc(100vh - 145px)}}
@media(max-width:420px){.osc-hero{min-height:570px}.osc-hero-content{padding-top:145px}.osc-hero-title-panel{padding:20px 17px 22px;border-left-width:3px}.osc-hero h1{font-size:2.7rem}.osc-status-badge strong{font-size:.68rem}.osc-status-badge span{font-size:.7rem}.osc-project-intro{text-align:left}.osc-project-intro .button-row{justify-content:flex-start}.osc-carousel{margin-top:28px}.osc-slide-picture img{aspect-ratio:4/3}.osc-detail-grid{grid-template-columns:1fr}.osc-detail-picture img{aspect-ratio:16/10}.osc-lightbox-shell{grid-template-columns:44px minmax(0,1fr) 44px}.osc-lightbox button{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.osc-carousel-track{transition:none!important}}

/* Modal controls remain comfortably touchable and inside the viewport. */
@media(max-width:768px){
  .osc-lightbox-shell{grid-template-columns:56px minmax(0,1fr) 56px;padding:18px 10px}
  .osc-lightbox button{min-width:44px;min-height:44px;width:48px;height:48px}
  .osc-lightbox-close{top:14px;right:16px}
  .osc-lightbox-prev{margin-left:4px}.osc-lightbox-next{margin-right:4px}
}
@media(max-width:420px){
  .osc-lightbox-shell{grid-template-columns:52px minmax(0,1fr) 52px;padding-inline:8px}
  .osc-lightbox button{width:44px;height:44px}
  .osc-lightbox-close{right:14px}
}
