/* HA-HA editorial Instagram news: scoped to the news page */
.haha-news { padding: 12px 3vw 90px; font-family: futura-pt, Arial, sans-serif; color: #111; }
.haha-news-heading { display:flex; justify-content:space-between; align-items:baseline; border-bottom:1px solid #222; padding-bottom:12px; margin-bottom:35px; gap:20px; }
.haha-news-heading h1 { font: 700 clamp(32px,5vw,64px)/1 futura-pt,Arial,sans-serif; letter-spacing:-.03em; padding:0; margin:0; }
.haha-news-heading span { font-size:11px; letter-spacing:.13em; text-align:right; }
.haha-news-feed { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px 2.5vw; }
.haha-news-item { min-width:0; }
.haha-news-item:nth-child(5n + 1) { grid-column:span 2; }
.haha-news-image { display:block; background:#eee; overflow:hidden; aspect-ratio: 4/3; }
.haha-news-item:nth-child(5n + 1) .haha-news-image { aspect-ratio: 16/9; }
.haha-news-image img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .45s ease; }
.haha-news-image:hover img { transform:scale(1.025); }
.haha-news-meta { display:flex; justify-content:space-between; gap:12px; margin-top:14px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.haha-news-caption { margin:10px 0 0; font-size:clamp(16px,1.5vw,21px); line-height:1.35; font-weight:400; overflow-wrap:anywhere; white-space:pre-line; }
.haha-news-more { color:inherit; text-decoration:none; border-bottom:1px solid currentColor; }
.haha-news-status { text-align:center; padding:35px 15px; font-size:13px; }
#haha-news-sentinel { height:1px; }
@media(max-width:650px) {
 .haha-news { padding:15px 5vw 60px; }
 .haha-news-heading { margin-bottom:25px; }
 .haha-news-heading span { font-size:9px; }
 .haha-news-feed { grid-template-columns:1fr; gap:42px; }
 .haha-news-item:nth-child(5n + 1) { grid-column:auto; }
 .haha-news-image, .haha-news-item:nth-child(5n + 1) .haha-news-image { aspect-ratio:4/3; }
}


/* Carousel navigation stays inside the existing image frame */
.haha-news-image { position:relative; width:100%; overflow:hidden; }
.haha-news-media-holder { position:absolute; inset:0; }
.haha-news-media-holder img, .haha-news-media-holder video { width:100%; height:100%; display:block; object-fit:cover; }
.haha-news-image:has(.haha-news-prev:not([hidden])) { cursor:pointer; }
.haha-news-prev, .haha-news-next { position:absolute; top:50%; transform:translateY(-50%); z-index:2; border:0; background:rgba(0,0,0,.28); color:white; width:38px; height:56px; font:38px/1 Arial,sans-serif; cursor:pointer; display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity .2s; }
.haha-news-prev { left:0; } .haha-news-next { right:0; }
.haha-news-image:hover .haha-news-prev, .haha-news-image:hover .haha-news-next, .haha-news-prev:focus-visible, .haha-news-next:focus-visible { opacity:1; }
.haha-news-prev[hidden], .haha-news-next[hidden] { display:none !important; }
@media (hover:none) { .haha-news-prev, .haha-news-next { opacity:0.8; width:30px; height:48px; font-size:30px; } }
