/* News & Community — approved v36 presentation, isolated for news.php. */
body[data-public-page="news"]{background:#f3f7fa}
body[data-public-page="news"] #community{display:block;min-height:calc(100vh - 76px);background:#f3f7fa}

/* Hero */
body[data-public-page="news"] .newsHero{
  min-height:315px;
  padding:82px 7vw 70px;
  color:#fff;
  position:relative;
  overflow:hidden;
  background:linear-gradient(120deg,#191e4b,#30347d);
  box-sizing:border-box;
}
body[data-public-page="news"] .newsHero:after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border-radius:50%;
  right:-70px;
  top:-150px;
  background:radial-gradient(circle,var(--sky),transparent 68%);
  opacity:.34;
  pointer-events:none;
}
body[data-public-page="news"] .newsHero>span{
  position:relative;
  z-index:2;
  display:block;
  width:min(46%,680px);
  font-size:10px;
  letter-spacing:.18em;
  font-weight:800;
  color:var(--sky);
}
body[data-public-page="news"] .newsHero>h2{
  position:relative;
  z-index:2;
  width:min(46%,760px);
  font-size:51px;
  line-height:1.05;
  margin:13px 0 10px;
  color:#fff;
}
body[data-public-page="news"] .newsHero>p{
  position:relative;
  z-index:2;
  width:min(43%,690px);
  margin:0;
  color:#d6dcf0;
  font-size:15px;
  line-height:1.7;
}

/* Database-driven headline carousel using the approved hero treatment. */
body[data-public-page="news"] .newsMotion{position:static}
body[data-public-page="news"] .dbHeadlineCarousel{
  position:absolute;
  right:6%;
  top:14%;
  width:min(48%,590px);
  height:235px;
  background:#ffffffef;
  color:var(--ink);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 25px 55px #0004;
  z-index:3;
}
body[data-public-page="news"] .dbHeadlineSlide{
  position:absolute;
  inset:0;
  padding:27px 28px 50px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  opacity:0;
  transform:translateX(24px);
  transition:opacity .45s ease,transform .45s ease;
  background-size:cover;
  background-position:center;
  isolation:isolate;
}
body[data-public-page="news"] .dbHeadlineSlide:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,#fffffff5 44%,#ffffffc7);
  z-index:-1;
}
body[data-public-page="news"] .dbHeadlineSlide.active{opacity:1;transform:none;z-index:2}
body[data-public-page="news"] .dbHeadlineSlide small{font-size:8px;color:var(--orange);font-weight:800;letter-spacing:.14em}
body[data-public-page="news"] .dbHeadlineSlide h3{font-size:27px;line-height:1.08;margin:12px 0 8px;max-width:470px;color:var(--ink)}
body[data-public-page="news"] .dbHeadlineSlide p{margin:0;color:var(--muted);line-height:1.6;max-width:470px;font-size:13px}
body[data-public-page="news"] .dbHeadlineSlide button{
  margin-top:auto;
  align-self:flex-start;
  border:0;
  background:transparent;
  color:var(--sky);
  font-weight:800;
  padding:0;
  cursor:pointer;
}
body[data-public-page="news"] .dbHeadlineCarousel .headlineControls{
  position:absolute;
  right:15px;
  bottom:13px;
  z-index:6;
  display:flex;
  align-items:center;
  gap:9px;
}
body[data-public-page="news"] .dbHeadlineCarousel .headlineControls>button{
  width:27px;
  height:27px;
  border-radius:50%;
  border:1px solid #d8e0e5;
  background:#fff;
  color:var(--navy);
  cursor:pointer;
}
body[data-public-page="news"] .dbNewsDots{display:flex;align-items:center;gap:4px}
body[data-public-page="news"] .dbNewsDots i{display:block;width:5px;height:5px;border-radius:50%;background:#cbd3d9;transition:.25s}
body[data-public-page="news"] .dbNewsDots i.active{width:15px;border-radius:5px;background:var(--orange)}

/* Content */
body[data-public-page="news"] .publicWrap{padding:52px 7vw 85px;max-width:1500px;margin:auto;box-sizing:border-box}
body[data-public-page="news"] .sectionIntro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}
body[data-public-page="news"] .sectionIntro .label{font-size:10px;letter-spacing:.18em;font-weight:800;color:var(--sky)}
body[data-public-page="news"] .sectionIntro h2{font-size:35px;margin:8px 0;color:var(--ink)}
body[data-public-page="news"] .announcementGrid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px}
body[data-public-page="news"] .announcementCard{
  min-height:285px;
  padding:28px;
  border-radius:18px;
  background:#fff;
  box-shadow:0 15px 35px #16204a12;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  position:relative;
  overflow:hidden;
  box-sizing:border-box;
}
body[data-public-page="news"] .announcementCard>small{font-size:10px;font-weight:800;letter-spacing:.13em;color:var(--orange)}
body[data-public-page="news"] .announcementCard h3{font-size:25px;line-height:1.14;margin:15px 0 8px;color:var(--ink)}
body[data-public-page="news"] .announcementCard p{margin:0 0 20px;line-height:1.6;color:var(--muted);font-size:14px}
body[data-public-page="news"] .announcementCard .productionInfoBadge{margin-top:auto}
body[data-public-page="news"] .featuredNews{background:linear-gradient(135deg,var(--orange),#ff9450);color:#fff;padding-right:135px}
body[data-public-page="news"] .featuredNews>small,
body[data-public-page="news"] .featuredNews h3,
body[data-public-page="news"] .featuredNews p{color:#fff}
body[data-public-page="news"] .featuredNews .productionInfoBadge{background:#fff;color:#237da5}
body[data-public-page="news"] .newsDate{
  position:absolute;
  right:25px;
  top:25px;
  width:82px;
  height:82px;
  border-radius:50%;
  background:#fff;
  color:var(--navy);
  display:grid;
  place-content:center;
  text-align:center;
}
body[data-public-page="news"] .newsDate b{font-size:31px;line-height:1}
body[data-public-page="news"] .newsDate span{font-size:8px;font-weight:800;margin-top:3px}
body[data-public-page="news"] .blueNews{border-top:6px solid var(--sky)}
body[data-public-page="news"] .lightNews{border-top:6px solid var(--orange)}

/* Player stories remain hidden until there are approved database testimonials. */
body[data-public-page="news"] .testimonialIntro{margin-top:65px}
body[data-public-page="news"] .testimonialGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
body[data-public-page="news"] .testimonialGrid article{background:#fff;border-radius:18px;padding:27px;box-shadow:0 14px 35px #17204b10;border-bottom:5px solid var(--sky)}
body[data-public-page="news"] .testimonialGrid article:nth-child(2){border-color:var(--orange)}
body[data-public-page="news"] .testimonialGrid article:nth-child(3){border-color:#44b875}
body[data-public-page="news"] .quoteMark{font-size:47px;color:var(--sky);height:35px}
body[data-public-page="news"] .testimonialGrid p{font-size:14px;line-height:1.7;min-height:75px}
body[data-public-page="news"] .testimonialGrid article>div:last-child{display:flex;align-items:center;gap:11px}
body[data-public-page="news"] .testimonialGrid i{width:39px;height:39px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-style:normal}
body[data-public-page="news"] .testimonialGrid span{display:grid}
body[data-public-page="news"] .testimonialGrid small{color:var(--muted)}

@media(max-width:1050px){
  body[data-public-page="news"] .dbHeadlineCarousel{right:3%;width:52%}
  body[data-public-page="news"] .newsHero>span,
  body[data-public-page="news"] .newsHero>h2,
  body[data-public-page="news"] .newsHero>p{width:43%}
}
@media(max-width:900px){
  body[data-public-page="news"] .announcementGrid{grid-template-columns:1fr 1fr}
  body[data-public-page="news"] .featuredNews{grid-column:span 2}
}
@media(max-width:780px){
  body[data-public-page="news"] .newsHero{padding:60px 24px 55px}
  body[data-public-page="news"] .newsHero>span,
  body[data-public-page="news"] .newsHero>h2,
  body[data-public-page="news"] .newsHero>p{width:100%;max-width:100%}
  body[data-public-page="news"] .newsHero>h2{font-size:38px}
  body[data-public-page="news"] .dbHeadlineCarousel{position:relative;right:auto;top:auto;width:100%;height:210px;margin-top:28px}
  body[data-public-page="news"] .dbHeadlineSlide h3{font-size:22px}
  body[data-public-page="news"] .publicWrap{padding:38px 22px 70px}
  body[data-public-page="news"] .announcementGrid,
  body[data-public-page="news"] .testimonialGrid{grid-template-columns:1fr}
  body[data-public-page="news"] .featuredNews{grid-column:auto}
  body[data-public-page="news"] .sectionIntro{align-items:flex-start}
  body[data-public-page="news"] .testimonialGrid article p{min-height:auto}
}
@media(max-width:520px){
  body[data-public-page="news"] .featuredNews{padding-right:28px;padding-top:120px}
  body[data-public-page="news"] .newsDate{left:28px;right:auto}
  body[data-public-page="news"] .dbHeadlineSlide{padding:22px 20px 48px}
  body[data-public-page="news"] .dbHeadlineSlide h3{font-size:19px}
}
@media(prefers-reduced-motion:reduce){
  body[data-public-page="news"] .dbHeadlineSlide{transition:none}
}

/* v12: published news cards now open the full database-driven article page. */
body[data-public-page="news"] .newsCardFooter{margin-top:auto;width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
body[data-public-page="news"] .announcementCard .newsCardFooter .productionInfoBadge{margin-top:0}
body[data-public-page="news"] .newsReadMore{font-size:11px;font-weight:800;color:var(--navy);text-decoration:none;white-space:nowrap}
body[data-public-page="news"] .newsReadMore:hover{color:var(--sky)}
body[data-public-page="news"] .featuredNews .newsReadMore{color:#fff}
body[data-public-page="news"] .featuredNews .newsReadMore:hover{color:#fff;text-decoration:underline}
body[data-public-page="news"] .dbHeadlineSlide .headlineReadMore{margin-top:auto;align-self:flex-start;color:var(--sky);font-weight:800;text-decoration:none;font-size:13px}
body[data-public-page="news"] .dbHeadlineSlide .headlineReadMore:hover{color:var(--orange)}

/* Mobile correction for optional-photo News cards only.
   Prevents the date badge from covering the category/title. */
@media(max-width:720px){
  body[data-public-page="news"] .announcementCard.hasFeaturedImage .newsCardImage{
    height:210px;
    min-height:0;
    padding:12px;
  }
  body[data-public-page="news"] .announcementCard.hasFeaturedImage .newsCardImage img{
    max-height:186px;
  }
  body[data-public-page="news"] .announcementCard.hasFeaturedImage .newsCardContent{
    min-height:0;
    padding:22px 28px 26px;
  }
  body[data-public-page="news"] .announcementCard.hasFeaturedImage .newsCardContent>small{
    padding-right:0;
  }
  body[data-public-page="news"] .announcementCard.hasFeaturedImage h3{
    max-width:100%;
    margin-top:10px;
    padding-right:0;
  }
  body[data-public-page="news"] .announcementCard.hasFeaturedImage .newsDate{
    position:static;
    order:-1;
    left:auto;
    right:auto;
    top:auto;
    width:auto;
    height:auto;
    min-width:0;
    margin:0 0 12px;
    padding:7px 11px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    gap:5px;
    place-content:unset;
    box-shadow:none;
  }
  body[data-public-page="news"] .announcementCard.hasFeaturedImage .newsDate b{
    font-size:15px;
    line-height:1;
  }
  body[data-public-page="news"] .announcementCard.hasFeaturedImage .newsDate span{
    font-size:9px;
    margin:0;
    line-height:1;
  }
}

/* v2 mobile: preserve the approved white split-card News design.
   This intentionally overrides legacy .featuredNews orange mobile styling only
   when the card has an optional featured image. */
@media(max-width:720px){
  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    min-height:0!important;
    padding:0!important;
    background:#fff!important;
    color:var(--ink)!important;
    border-top:0!important;
    overflow:hidden!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsCardImage{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:230px!important;
    min-height:230px!important;
    padding:14px!important;
    background:#eef2f8!important;
    box-sizing:border-box!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsCardImage img{
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:202px!important;
    object-fit:contain!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsCardContent{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    min-height:0!important;
    padding:26px 28px 28px!important;
    background:#fff!important;
    color:var(--ink)!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsCardContent>small{
    color:var(--orange)!important;
    padding-right:82px!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage h3{
    color:var(--ink)!important;
    max-width:100%!important;
    margin:14px 0 8px!important;
    padding-right:82px!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage p{
    color:var(--muted)!important;
    margin-bottom:20px!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsDate{
    position:absolute!important;
    order:initial!important;
    top:20px!important;
    right:22px!important;
    left:auto!important;
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    margin:0!important;
    padding:0!important;
    border-radius:50%!important;
    display:grid!important;
    place-content:center!important;
    text-align:center!important;
    gap:0!important;
    background:#fff!important;
    color:var(--navy)!important;
    box-shadow:0 8px 24px #17204b12!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsDate b{
    display:block!important;
    font-size:24px!important;
    line-height:1!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsDate span{
    display:block!important;
    font-size:8px!important;
    line-height:1!important;
    margin-top:4px!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .productionInfoBadge{
    background:#f5fbfe!important;
    color:#237da5!important;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsReadMore{
    color:var(--navy)!important;
  }
}

/* Very narrow phones: keep the date clear of the title without changing the card design. */
@media(max-width:390px){
  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsCardContent>small,
  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage h3{
    padding-right:72px!important;
  }
}


/* Desktop correction: optional-photo News cards must keep their media and content
   inside the card. Mobile rules below 720px remain unchanged. */
@media(min-width:721px){
  body[data-public-page="news"] .announcementCard.dbNewsCard.hasFeaturedImage{
    padding:0;
    min-width:0;
    overflow:hidden;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.hasFeaturedImage .newsCardImage{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:300px;
    min-width:0;
    padding:18px;
    background:#eef2f8;
    box-sizing:border-box;
    overflow:hidden;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.hasFeaturedImage .newsCardImage img{
    display:block;
    width:auto;
    height:auto;
    max-width:100%;
    max-height:264px;
    object-fit:contain;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.hasFeaturedImage .newsCardContent{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    width:100%;
    min-width:0;
    padding:28px;
    box-sizing:border-box;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.hasFeaturedImage .newsCardContent>small,
  body[data-public-page="news"] .announcementCard.dbNewsCard.hasFeaturedImage h3{
    max-width:100%;
    padding-right:105px;
    box-sizing:border-box;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.hasFeaturedImage .newsDate{
    top:24px;
    right:24px;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage{
    background:#fff;
    color:var(--ink);
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage>small,
  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage h3,
  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage p{
    color:inherit;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsCardContent>small{
    color:var(--orange);
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage h3{
    color:var(--ink);
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage p{
    color:var(--muted);
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .productionInfoBadge{
    background:#f5fbfe;
    color:#237da5;
  }

  body[data-public-page="news"] .announcementCard.dbNewsCard.featuredNews.hasFeaturedImage .newsReadMore{
    color:var(--navy);
  }
}

/* Desktop/tablet News grid: all cards use equal columns and equal row height,
   matching the uniform card treatment used by Events. */
@media(min-width:901px){
  body[data-public-page="news"] .announcementGrid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-auto-rows:1fr;
    align-items:stretch;
  }

  body[data-public-page="news"] .announcementCard{
    width:100%;
    height:100%;
    min-width:0;
  }
}

@media(min-width:781px) and (max-width:900px){
  body[data-public-page="news"] .announcementGrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:1fr;
    align-items:stretch;
  }

  body[data-public-page="news"] .featuredNews{
    grid-column:auto;
  }

  body[data-public-page="news"] .announcementCard{
    width:100%;
    height:100%;
    min-width:0;
  }
}
