/* SAHP PIO News: cards, News page, single post, home section and announcement strip. */
.news-section,.article-section{background:var(--paper);color:var(--ink)}
.news-section .section-lead{color:var(--ink-2)}
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.news-card{display:flex;flex-direction:column;border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:var(--ink);background:#fff;box-shadow:0 1px 0 rgba(11,23,48,.06),0 18px 40px -26px rgba(11,23,48,.45);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.news-card:hover{transform:translateY(-4px);box-shadow:0 1px 0 rgba(11,23,48,.06),0 26px 50px -24px rgba(11,23,48,.55)}
.news-card:focus-visible{outline-offset:4px}
.news-card.big{grid-column:span 2;flex-direction:row}
.news-card.big .news-cover{flex:1.25;aspect-ratio:auto;min-height:320px}
.news-card.big .news-text{flex:1;justify-content:center;padding:30px 32px}
.news-card.big h3{font-size:1.9rem}
.news-cover{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,var(--navy-800),var(--navy-950));overflow:hidden}
.news-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.news-card:hover .news-cover img{transform:scale(1.04)}
.news-cover.empty{display:grid;place-items:center}
.news-cover img.seal{width:40%;height:auto;object-fit:contain;opacity:.85}
.news-badge{position:absolute;left:12px;bottom:12px;padding:4px 10px;border-radius:999px;background:rgba(4,11,29,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:.76rem;font-weight:650;letter-spacing:.04em}
.news-text{display:flex;flex-direction:column;gap:8px;padding:20px 22px 22px;flex:1}
.news-text time{font-size:.78rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-3)}
.news-text h3{margin:0;font-family:var(--display);font-size:1.45rem;line-height:1.08;text-transform:uppercase;letter-spacing:.01em}
.news-text p{margin:0;color:var(--ink-2);font-size:.95rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-more{margin-top:auto;padding-top:6px;font-weight:650;font-size:.9rem;color:var(--navy-700)}
.news-empty{color:var(--ink-2);padding:30px 0}
.news-empty h1{font-family:var(--display);text-transform:uppercase;margin:0 0 8px;color:var(--ink)}

/* Home: latest from the PIO (dark band under the banner) */
.news-home{background:linear-gradient(180deg,var(--navy-900),var(--navy-950));color:var(--text)}
.news-home .news-card{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}
.news-home .news-card:hover{box-shadow:inset 0 0 0 1px var(--line-2),0 24px 50px -30px rgba(0,0,0,.8)}
.news-home .news-text p{color:var(--muted)}
.news-home .news-more{color:var(--gold-2)}
.news-home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px 40px;flex-wrap:wrap;margin-bottom:34px}
.news-home-head .section-head{margin:0}

/* Single post */
.article-wrap{max-width:860px;margin-inline:auto}
.news-back{display:inline-block;margin-bottom:26px;font-weight:650;text-decoration:none;color:var(--navy-700)}
.news-back:hover{color:var(--gold-3)}
.article-head h1{font-family:var(--display);font-size:clamp(2.2rem,5vw,3.6rem);line-height:.98;text-transform:uppercase;margin:6px 0 12px;color:var(--ink)}
.article-meta{margin:0 0 28px;color:var(--ink-2);font-weight:500}
.news-images{display:grid;gap:10px;margin:0 0 28px}
.news-images.n2{grid-template-columns:1fr 1fr}
.news-images.n3,.news-images.n4{grid-template-columns:1fr 1fr}
.news-images.n3 .news-img:first-child{grid-column:span 2}
.news-img{display:block;border-radius:var(--r);overflow:hidden;background:var(--paper-2)}
.news-img img{width:100%;height:auto;max-height:80vh;object-fit:contain;background:#0b1730}
.news-images:not(.n1) .news-img:not(:first-child) img{height:100%;object-fit:cover}
.news-video,.news-yt,.news-ytframe{display:block;width:100%;aspect-ratio:16/9;height:auto;margin:0 0 24px;border:0;border-radius:var(--r);background:#000}
.news-yt{position:relative;padding:0;cursor:pointer;overflow:hidden}
.news-yt img{width:100%;height:100%;object-fit:cover;opacity:.85}
.news-yt .play{position:absolute;inset:0;margin:auto;width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--gold-ink);font-size:1.6rem;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.news-links{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.article-body{font-size:1.08rem;line-height:1.75;color:#1d2a44}
.article-body p{margin:0 0 1.1em}
.article-body h2,.article-body h3,.article-body h4{font-family:var(--display);text-transform:uppercase;color:var(--ink);line-height:1.1;margin:1.4em 0 .5em}
.article-body h2{font-size:1.9rem}.article-body h3{font-size:1.5rem}.article-body h4{font-size:1.25rem}
.article-body strong{color:var(--ink)}
.article-body a{color:var(--navy-600)}
.article-body ul{padding-left:1.3em;margin:0 0 1.1em}
.article-body blockquote{margin:0 0 1.1em;padding:12px 18px;border-left:4px solid var(--gold);background:#fff;border-radius:0 var(--r-sm) var(--r-sm) 0}
.article-body .small{font-size:.85rem;color:var(--ink-2)}
.article-body code{background:var(--paper-2);color:var(--ink)}
.article-body .spoiler{background:#1d2a44;color:transparent;border-radius:4px;cursor:pointer}
.article-body .spoiler:focus,.article-body .spoiler:hover{color:inherit;background:var(--paper-2)}
.article-foot{margin-top:36px;padding-top:18px;border-top:1px solid rgba(11,23,48,.1);color:var(--ink-2);font-size:.92rem}

/* Announcement strip at the top of every page */
.news-strip{display:flex;align-items:center;gap:12px;height:36px;padding:0 16px;background:linear-gradient(90deg,var(--gold-3),var(--gold),var(--gold-2));color:var(--gold-ink);font-size:.88rem;font-weight:600}
.news-strip a{flex:1;min-width:0;display:flex;align-items:center;gap:10px;justify-content:center;color:inherit;text-decoration:none}
.news-strip .tag{flex:none;padding:2px 8px;border-radius:999px;background:rgba(28,20,5,.14);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.news-strip .txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.news-strip .date{flex:none;opacity:.75;font-weight:500}
.news-strip a:hover .txt{text-decoration:underline}
.news-strip button{flex:none;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer;font-size:1.1rem;line-height:1}
.news-strip button:hover{background:rgba(28,20,5,.14)}
body.has-strip .hero{padding-top:150px}
body.has-strip:not([data-page="home"]) #main > .page-on{padding-top:186px}

@media (max-width:900px){
  .news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .news-card.big{grid-column:span 2}
}
@media (max-width:640px){
  .news-grid{grid-template-columns:1fr}
  .news-card.big{grid-column:auto;flex-direction:column}
  .news-card.big .news-cover{min-height:0;aspect-ratio:16/10}
  .news-card.big .news-text{padding:20px 22px 22px}
  .news-card.big h3{font-size:1.45rem}
  .news-strip .date{display:none}
  .news-images.n2,.news-images.n3,.news-images.n4{grid-template-columns:1fr}
  .news-images.n3 .news-img:first-child{grid-column:auto}
  body.has-strip:not([data-page="home"]) #main > .page-on{padding-top:150px}
}
@media (prefers-reduced-motion:reduce){.news-card,.news-cover img{transition:none}}
