/*
 * News & Press (CC-PROMPT-07). Enqueued on the posts page, category archives and single
 * posts (inc/news.php). Tokens only. Comp values (1920 canvas): ground #00554F
 * (--gw-green-700, decided over the prompt's green-900), h1 138px white centred at y 461,
 * category pill 230x63 / 22px / stroke 1.607 at y 682, controls row y 854 (pills 303x51 /
 * 16px, x 113 and right edge 1853), cards at x 113 / 703 / 1293 (476 wide, 475 square
 * image, 45px title, 17.9px label, READ 187x51), list rows 3px citron rules at a ~110 pitch
 * (title 45px in a 688 column at x 103, label 22px at x 1439, READ 230x63 at x 1616),
 * hover row full-bleed citron with green-900 ink (44:432 keeps white; contrast), article
 * title 688 column, pill right at x 1557, body 27/52 in a 1043 column.
 */

/* ---- Ground ---- */
body.gw-news-page { background-color: var(--gw-green-700) !important; }
/* Salient wraps the page in .ocm-effect-wrap (off-canvas effect) and paints it white */
body.gw-news-page .ocm-effect-wrap, body.gw-news-page .ocm-effect-wrap-inner, body.gw-news-page #ajax-content-wrap, body.gw-news-page .container-wrap { background: transparent !important; }

.gw-news { position: relative; color: var(--gw-cream-100); padding: clamp(140px, 24vw, 461px) var(--gw-fluid-margin-chrome) var(--gw-fluid-space-section); }
.gw-news > * + * { margin-top: var(--gw-space-5); }
.gw-news a { color: inherit; }

/* ---- Pill sizes used by these views ---- */
.gw-pill--lg { min-height: clamp(48px, 3.28vw, 63px); padding: 0 clamp(28px, 2.6vw, 50px); border-width: var(--gw-stroke-button-lg); border-radius: var(--gw-radius-pill-lg); font-size: var(--gw-fluid-label-l); }
.gw-news .gw-pill { color: var(--gw-white); border-color: currentColor; }
.gw-news .gw-pill:hover { background: var(--gw-white); color: var(--gw-green-700); }
.gw-news .gw-pill[aria-current="page"], .gw-news .gw-pill.is-active { background: var(--gw-white); color: var(--gw-green-700); }
.gw-news button.gw-pill { cursor: pointer; font: inherit; font-family: var(--gw-font-display); font-weight: 600; font-size: var(--gw-fluid-label-s); letter-spacing: var(--gw-track-label); text-transform: uppercase; line-height: 1; }
body[data-button-style] .gw-news button.gw-pill { border-radius: var(--gw-radius-pill) !important; }

/* ---- Hero: h1 + category pills (44:500, 44:627) ---- */
.gw-news__hero { display: grid; justify-items: center; gap: clamp(32px, 4.3vw, 83px); }
.gw-news__hero .gw-intro__heading { color: var(--gw-white); text-wrap: balance; }
.gw-news__cats { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--gw-space-2); }

/* ---- Controls row (44:651, 44:654) ---- */
.gw-news__controls { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--gw-space-2); margin-top: clamp(48px, 5.7vw, 109px); padding-left: clamp(0px, 2.1vw, 41px); }
.gw-news__filters { position: relative; }
.gw-news__filters > summary { list-style: none; cursor: pointer; }
.gw-news__filters > summary::-webkit-details-marker { display: none; }
.gw-news__filters[open] > summary { background: var(--gw-white); color: var(--gw-green-700); }
.gw-news__filter-list { position: absolute; right: 0; top: calc(100% + var(--gw-space-1)); z-index: 20; min-width: 100%; margin: 0; padding: 0; list-style: none; overflow: hidden; background: var(--gw-cream-100); color: var(--gw-green-700); border-radius: 24px; box-shadow: var(--gw-shadow-sheet, 0 16px 40px rgba(1, 46, 43, 0.35)); }
.gw-news__filter-list li { list-style: none; margin: 0; padding: 0; }
.gw-news__filter { display: block; width: 100%; padding: 12px 24px; border: 0; background: none; color: inherit; font-family: var(--gw-font-display); font-weight: 600; font-size: var(--gw-fluid-label-s); letter-spacing: var(--gw-track-label); text-transform: uppercase; text-align: left; text-decoration: none; cursor: pointer; }
.gw-news__filter:hover, .gw-news__filter[aria-pressed="true"], .gw-news__filter[aria-current="page"] { background: var(--gw-green-700); color: var(--gw-cream-100); }
.gw-news__filter:focus-visible { outline: 2px solid var(--gw-teal-500); outline-offset: -2px; }
body[data-button-style] .gw-news__filter { border-radius: 0 !important; }

/* ---- Shared item type ---- */
.gw-news-title { margin: 0; font-family: var(--gw-font-display) !important; font-weight: 900 !important; font-size: clamp(24px, 2.344vw, 45px); line-height: 0.95; letter-spacing: 0 !important; text-transform: none; color: inherit; }
.gw-news-title a { color: inherit; text-decoration: none; }
.gw-news-title a:hover { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.gw-news-title a:focus-visible { outline: 2px solid var(--gw-citron-400); outline-offset: 4px; }
.gw-news-cat { font-family: var(--gw-font-display); font-weight: 600; letter-spacing: var(--gw-track-label); text-transform: uppercase; line-height: 1; white-space: nowrap; }

/* ---- Featured cards (44:630: 476 wide, 475 square, title above, label + READ below) ---- */
.gw-news__items { margin-top: clamp(40px, 3.3vw, 64px); }
.gw-news__featured { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 5.9vw, 113px); padding-left: clamp(0px, 2.1vw, 41px); margin-bottom: var(--gw-fluid-space-section); }
.gw-news-card { display: grid; gap: clamp(20px, 1.9vw, 37px); grid-row: span 3; grid-template-rows: subgrid; }
@supports not (grid-template-rows: subgrid) { .gw-news-card { grid-template-rows: auto auto auto; } }
.gw-news-card__media { display: block; aspect-ratio: 1 / 1; background: var(--gw-citron-500); overflow: hidden; }
.gw-news-card__img, .gw-news-card__media img { display: block; width: 100%; height: 100% !important; object-fit: cover; }
.gw-news-card__foot { display: flex; justify-content: space-between; align-items: center; gap: var(--gw-space-2); }
.gw-news-card__cat { font-size: clamp(13px, 0.932vw, 17.9px); }
.gw-news-card__read { min-height: 51px; min-width: clamp(140px, 9.7vw, 187px); }
.gw-news-card:hover .gw-news-card__read, .gw-news-card:focus-within .gw-news-card__read { background: var(--gw-white); color: var(--gw-green-700); }

/* ---- List rows (44:252: 3px citron rules, full bleed; hover 44:432) ---- */
.gw-news__list { position: relative; }
.gw-news-row { position: relative; z-index: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; column-gap: clamp(24px, 5.8vw, 111px); padding: clamp(18px, 1.3vw, 25px) 0 clamp(18px, 1.3vw, 25px) clamp(0px, 1.6vw, 31px); min-height: clamp(72px, 5.7vw, 110px); transition: color var(--gw-dur) var(--gw-ease); }
.gw-news-row::before { content: ""; position: absolute; z-index: -1; inset: 0 calc(-1 * var(--gw-fluid-margin-chrome)); border-top: var(--gw-stroke-plus) solid var(--gw-citron-500); background: transparent; transition: background var(--gw-dur) var(--gw-ease); }
.gw-news-row:last-child::after { content: ""; position: absolute; left: calc(-1 * var(--gw-fluid-margin-chrome)); right: calc(-1 * var(--gw-fluid-margin-chrome)); bottom: 0; border-bottom: var(--gw-stroke-plus) solid var(--gw-citron-500); }
.gw-news-row__cat { font-size: var(--gw-fluid-label-l); }
.gw-news-row__read { min-width: clamp(150px, 12vw, 230px); }
.gw-news-row:hover, .gw-news-row:focus-within { color: var(--gw-green-900); }
.gw-news-row:hover::before, .gw-news-row:focus-within::before { background: var(--gw-citron-500); }
.gw-news-row:hover .gw-news-row__read, .gw-news-row:focus-within .gw-news-row__read { color: var(--gw-green-900); }
.gw-news-row:hover .gw-news-row__read:hover { background: var(--gw-green-900); color: var(--gw-citron-500); }
.gw-news-row:hover .gw-news-title a, .gw-news-row:focus-within .gw-news-title a { text-decoration: none; }
.gw-news-row .gw-news-title a:focus-visible { outline-color: var(--gw-green-900); }

/* ---- View states: featured (default) vs rows ---- */
.gw-news:not(.gw-news--rows) .gw-news-row--featured { display: none; }
.gw-news--rows .gw-news__featured { display: none; }
.gw-news-row[hidden], .gw-news-card[hidden] { display: none; }

/* ---- Pagination ---- */
.gw-news__pagination { margin-top: var(--gw-space-6); }
.gw-news__pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--gw-space-1); }
.gw-news__pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 51px; min-height: 51px; padding: 0 20px; border: var(--gw-stroke-button) solid currentColor; border-radius: var(--gw-radius-pill); color: var(--gw-white); font-family: var(--gw-font-display); font-weight: 600; font-size: var(--gw-fluid-label-s); letter-spacing: var(--gw-track-label); text-transform: uppercase; text-decoration: none; }
.gw-news__pagination .page-numbers.current, .gw-news__pagination a.page-numbers:hover { background: var(--gw-white); color: var(--gw-green-700); }
.gw-news__pagination .page-numbers.dots { border: 0; }
.gw-news__pagination .screen-reader-text { position: absolute; clip: rect(1px, 1px, 1px, 1px); width: 1px; height: 1px; overflow: hidden; }

/* ---- Reveal pre-state (inner motion core running only; assets/js/motion/misc.js conducts) ---- */
@media (prefers-reduced-motion: no-preference) {
  html.gw-im .gw-news-item:not(.gw-in) { opacity: 0; }
}

/* ---- Mobile ---- */
@media (max-width: 999px) {
  .gw-news__featured { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--gw-space-4); }
}
@media (max-width: 767px) {
  .gw-news { padding-top: 140px; }
  .gw-news__featured { grid-template-columns: minmax(0, 1fr); padding-left: 0; }
  .gw-news__controls { padding-left: 0; }
  .gw-news-row { grid-template-columns: minmax(0, 1fr) auto auto; column-gap: var(--gw-space-2); padding-left: 0; }
  .gw-news-row__read { min-width: 0; padding-inline: 22px; }
}
@media (max-width: 479px) {
  .gw-news-row { grid-template-columns: minmax(0, 1fr) auto; }
  .gw-news-row__cat { display: none; }
}

/* ---- Article (44:657; layout beyond title / pill / body is undesigned, see single.php) ---- */
.gw-news--article { padding-top: clamp(160px, 28.3vw, 544px); }
.gw-article { display: grid; gap: clamp(32px, 3vw, 58px); padding-left: clamp(0px, 1.6vw, 31px); }
.gw-article__head { display: grid; gap: var(--gw-space-3); }
.gw-article__title-row { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--gw-space-4); }
.gw-article__title { max-width: 688px; color: var(--gw-white); }
.gw-article__cat { flex: none; margin-right: clamp(0px, 4.4vw, 84px); }
.gw-article__meta { display: flex; gap: var(--gw-space-2); align-items: center; color: var(--gw-citron-400); margin: 0; }
.gw-article__figure { margin: 0; max-width: 1043px; }
.gw-article__img { display: block; width: 100%; height: auto !important; }
.gw-article__body { max-width: 1043px; color: var(--gw-white); }
.gw-article__body p { margin: 0 0 1em; }
.gw-article__body a { color: var(--gw-citron-400); text-decoration: underline; text-underline-offset: 3px; }
.gw-article__body h2, .gw-article__body h3, .gw-article__body h4 { font-family: var(--gw-font-display) !important; font-weight: 900 !important; color: var(--gw-white); letter-spacing: 0 !important; text-transform: none; line-height: 1; margin: 1.5em 0 0.5em; }
.gw-article__body h2 { font-size: clamp(24px, 2.344vw, 45px); }
.gw-article__body h3 { font-size: var(--gw-fluid-heading-l); }
.gw-article__body ul, .gw-article__body ol { padding-left: 1.4em; margin: 0 0 1em; }
.gw-article__body li { list-style: disc; margin: 0 0 0.4em; }
.gw-article__body ol li { list-style: decimal; }
.gw-article__body img { max-width: 100%; height: auto !important; }
.gw-article__body blockquote { margin: 1.5em 0; padding-left: var(--gw-space-3); border-left: var(--gw-stroke-plus) solid var(--gw-citron-500); }
.gw-article__body blockquote::before { display: none; }
.gw-article__foot { border-top: var(--gw-stroke-plus) solid var(--gw-citron-500); padding-top: var(--gw-space-4); }
.gw-article__nav { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--gw-space-2); }
.gw-article__nav-index { margin-inline: auto; }
@media (max-width: 767px) {
  .gw-news--article { padding-top: 160px; }
  .gw-article { padding-left: 0; }
  .gw-article__title-row { flex-direction: column; }
  .gw-article__cat { margin-right: 0; }
}
