body,html{-webkit-font-smoothing:antialiased;background:#06121b;color:#e6f2f6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;padding:0;text-rendering:optimizeLegibility}*{box-sizing:border-box}img{display:block;max-width:100%}.serif{font-family:Playfair Display,Georgia,Times New Roman,serif}.hero{background:linear-gradient(180deg,#06121b,#0c2f44 60%,#15506b);color:#fff;overflow:hidden;position:relative;width:100%}.hero-cover{display:grid;grid-template-columns:1fr 1fr 1fr;height:44vh;max-height:520px;min-height:280px}.hero-cover figure{margin:0;overflow:hidden;position:relative}.hero-cover img{height:100%;object-fit:cover;transition:transform 8s ease;width:100%}.hero-cover figure:hover img{transform:scale(1.06)}.hero-band{inset:auto 0 0 0;padding:28px 6vw 36px;position:absolute;text-align:center;z-index:2}.hero-eyebrow{color:#7ec47a;font-size:11px;letter-spacing:.32em;margin:0 0 8px;text-transform:uppercase}.hero-title{font-family:Playfair Display,serif;font-size:clamp(28px,5.5vw,54px);font-weight:600;line-height:1.05;margin:0;text-shadow:0 2px 12px #00000073}.hero-subtitle{color:#cce4ea;font-size:clamp(12px,1.4vw,15px);margin:12px auto 0;max-width:720px;opacity:.9}.hero-rule{color:#7ec47a;font-size:12px;letter-spacing:.28em;margin-top:14px;text-transform:uppercase}.camera-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(2,1fr)}@media (max-width:599px){.camera-grid{gap:12px;grid-template-columns:1fr}}@media (min-width:1180px){.camera-grid{grid-template-columns:repeat(3,1fr)}}.event-card{background:#0c2230;border:1px solid #9ac6d329;border-radius:12px;overflow:hidden;transition:border-color .2s ease,transform .2s ease}.event-card:hover{border-color:#7ec47a73}.event-card img{aspect-ratio:16/9;background:#06121b;object-fit:cover;width:100%}.event-meta{padding:12px 14px}.fav-carousel{-webkit-overflow-scrolling:touch;display:flex;gap:16px;margin:0 -4px;overflow-x:auto;overflow-y:hidden;padding:4px 4px 16px;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none}.fav-carousel::-webkit-scrollbar{display:none}.fav-carousel-item{flex:0 0 80%;scroll-snap-align:center}@media (min-width:600px){.fav-carousel-item{flex:0 0 60%}}@media (min-width:900px){.fav-carousel-item{flex:0 0 42%}}@media (min-width:1200px){.fav-carousel-item{flex:0 0 32%}}@media (min-width:1600px){.fav-carousel-item{flex:0 0 24%}}