*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:#0B1626;-webkit-font-smoothing:antialiased}
a{color:#EEF1F4}a:hover{color:#7FB3D5}
img{max-width:100%}
.hidden{display:none!important}
.hero>.slide-bg{position:absolute;inset:0}
.hero header,.hero>div{position:relative}
.dot{width:28px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;display:flex;align-items:center}
.dot span{display:block;width:28px;height:3px;background:rgba(238,241,244,.35)}
.dot.is-active span{background:#EEF1F4}
.arrow{width:44px;height:44px;border-radius:50%;border:1px solid #EEF1F4;background:rgba(11,22,38,.4);cursor:pointer;display:flex;align-items:center;justify-content:center}
.filter{background:transparent;color:#EEF1F4;border:1px solid #2E4262}
.filter.is-active{background:#EEF1F4;color:#0B1626;border-color:#EEF1F4}
.pill{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1px solid #2E4262;border-radius:999px;color:#EEF1F4;text-decoration:none;font-family:'IBM Plex Mono',monospace;font-size:13px}
.chip{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid #2E4262;border-radius:999px;color:#C3CEDB;text-decoration:none;font-size:14px}
.chip.is-active{background:#EEF1F4;color:#0B1626;border-color:#EEF1F4}
.hero-media iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.modal{position:fixed;inset:0;z-index:50;background:rgba(5,11,20,.92);display:flex;align-items:center;justify-content:center;padding:24px}
.modal-box{position:relative;width:min(1200px,100%);aspect-ratio:16/9}
.modal-box iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.modal-close{position:absolute;top:-52px;right:0;width:44px;height:44px;border-radius:50%;border:1px solid #EEF1F4;background:transparent;color:#EEF1F4;font-size:22px;cursor:pointer}
@media (max-width:900px){
 .slide-poster{display:none}
 .photo-band{grid-template-columns:1fr 1fr!important;grid-template-rows:auto!important}
 .photo-band img{grid-row:auto!important;aspect-ratio:4/3}
 .photo-band img:first-child{grid-column:1/-1}
 .hero-media{aspect-ratio:16/9!important}
 .gallery{grid-template-columns:1fr!important}
}
@media (max-width:600px){
 .hero>div{padding-left:20px!important;padding-right:20px!important}
 .hero header{padding:20px!important}
 .dot{width:18px}.dot span{width:18px}
}
