/* ======================================================================
   Newsroom page (pages/newsroom.html). Loaded after style.css and only on this page.
   Restyles the existing PulseWave content to the Cadence newsroom (newsroom.cadence.com, measured at 1920px):
   fonts, sizes, spacing and hovers. The media sub-header keeps the style of our other pages' sub-headers.
   Colours follow the PulseWave theme. No content is added or removed.
   ====================================================================== */
[data-page="newsroom"] {
  --font-head: var(--font-nav); --font-body: var(--font-nav);
  --nr-col: min(1180px, calc(100% - 2 * var(--gutter)));
  --nr-ink: #434950;
  /* background photos: swap these two lines to change the hero and Latest News backgrounds */
  --nr-hero-img: url("../img/photos/newsroom-hero.webp");
  --nr-latest-img: url("../img/photos/newsroom-latest.webp");
}
[data-page="newsroom"] main { font-family: var(--font-nav); color: var(--nr-ink); }
[data-page="newsroom"] main .section > .container { max-width: none; width: var(--nr-col); padding-inline: 0; }

/* ---------- media sub-header: same as the Careers / Culture rows (white, 48px, 14px Medium) ---------- */
[data-page="newsroom"] .subnav--family .container { height: 48px; justify-content: flex-start; }
[data-page="newsroom"] .subnav--family a { display: flex; align-items: center; height: 48px; margin: 0; padding: 0 15px; font: 500 14px/16px var(--font-nav);
  letter-spacing: normal; text-transform: none; color: #707070; transition: background-color .2s, color .2s; }
[data-page="newsroom"] .subnav--family a:first-child { margin-left: -15px; }
[data-page="newsroom"] .subnav--family a:hover { background: #f5f5f5; color: #707070; }
[data-page="newsroom"] .subnav--family a.is-active, [data-page="newsroom"] .subnav--family a[data-nav="newsroom"] { color: var(--nav-ink); }
[data-page="newsroom"] .subnav--family .subnav--family__search { margin-left: auto; margin-right: -15px; gap: 6px; }

/* ---------- hero: 568px, 50px Light title, 20px Light text in a 600px column ---------- */
[data-page="newsroom"] .nr-hero { display: flex; align-items: flex-start; min-height: 568px; padding: 210px 0 40px; background: #0c111d; }
[data-page="newsroom"] .nr-hero::after { background: linear-gradient(90deg, rgba(12, 17, 29, .9) 0%, rgba(12, 17, 29, .55) 45%, rgba(12, 17, 29, .1) 100%); }
[data-page="newsroom"] .nr-hero .page-hero__art { inset: 0; width: auto; opacity: 1; background: var(--nr-hero-img) center/cover no-repeat; -webkit-mask-image: none; mask-image: none; }
[data-page="newsroom"] .nr-hero .container { width: var(--nr-col); max-width: none; padding-inline: 0; }
[data-page="newsroom"] .nr-hero .h1 { margin: 0 0 12.5px; font: 300 50px/50px var(--font-nav); letter-spacing: normal; color: #fff; }
[data-page="newsroom"] .nr-hero .lead { max-width: 600px !important; margin: 0; font: 300 20px/28px var(--font-nav); letter-spacing: normal; color: #fff; }

/* ---------- shared: 35px Light headings, Cadence buttons ---------- */
[data-page="newsroom"] main .h2 { font: 300 35px/35px var(--font-nav); letter-spacing: normal; color: var(--nr-ink); }
[data-page="newsroom"] main .btn:not(.btn--sm) { height: 42px; padding: 14px 25px; border-radius: 0; font: 600 14px/14px var(--font-nav); letter-spacing: 1.75px; text-transform: uppercase; }
[data-page="newsroom"] main .btn .icon { display: none; }
[data-page="newsroom"] main .btn--primary { background: var(--grad); }

/* ---------- intro: 580px text + 580px image ---------- */
[data-page="newsroom"] .nr-intro { padding: 96px 0 116px; }
[data-page="newsroom"] .news-intro { grid-template-columns: 580px 580px; justify-content: space-between; gap: 20px; align-items: start; }
[data-page="newsroom"] .news-intro .h2 { margin: 0 0 30px; }
[data-page="newsroom"] .nr-intro p { margin: 0 0 20px; font: 300 20px/30px var(--font-nav); color: var(--nr-ink); }
[data-page="newsroom"] .nr-intro .btn-row { margin-top: 30px; }
[data-page="newsroom"] .news-intro__media { aspect-ratio: 580 / 315; margin-top: 65px; }

/* ---------- latest news: photo band, white text; 767px list + 353px social column ---------- */
[data-page="newsroom"] .nr-latest { position: relative; padding: 96px 0 115px; overflow: hidden; background: #0c111d; color: #fff; }
[data-page="newsroom"] .nr-latest::before { content: ""; position: absolute; inset: 0; background: var(--nr-latest-img) center/cover no-repeat; }
[data-page="newsroom"] .nr-latest::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(12, 17, 29, .88) 0%, rgba(12, 17, 29, .72) 55%, rgba(12, 17, 29, .5) 100%); }
[data-page="newsroom"] .nr-latest .container { position: relative; z-index: 1; }
[data-page="newsroom"] .news-split { grid-template-columns: 767px 353px; justify-content: space-between; gap: 60px; }
[data-page="newsroom"] .nr-latest .h2 { margin: 0 0 29px; font: 300 35px/45.5px var(--font-nav); color: #fff; }
[data-page="newsroom"] .news-list { border-top: 0; }
[data-page="newsroom"] .news-list li { display: flex; flex-direction: column-reverse; margin: 0 0 10px; padding: 20px 0; border-bottom: 0.8px solid #ddd; }
[data-page="newsroom"] .news-list time { margin: 14px 0 0; font: 300 14px/18.2px var(--font-nav); color: #fff; }
[data-page="newsroom"] .news-list a { font: 300 20px/28px var(--font-nav); color: #fff; transition: color .2s; }
[data-page="newsroom"] .news-list a:hover { color: #6fb2ff; }
/* View all: small white text link with an arrow, like Cadence's */
[data-page="newsroom"] .news-split .btn-row { margin-top: 20px; }
[data-page="newsroom"] .nr-latest .btn--stack { min-width: 0; height: auto; padding: 0; border: 0; background: none; box-shadow: none; color: #fff;
  font: 500 14px/18.2px var(--font-nav); letter-spacing: normal; text-transform: none; }
[data-page="newsroom"] .nr-latest .btn--stack::after { content: "\2192"; margin-left: 8px; transition: transform .2s; display: inline-block; }
[data-page="newsroom"] .nr-latest .btn--stack:hover { background: none; color: #6fb2ff; box-shadow: none; }
[data-page="newsroom"] .nr-latest .btn--stack:hover::after { transform: translateX(4px); }
/* social column on the dark band */
[data-page="newsroom"] .social-card { padding: 0; border: 0; background: none; }
[data-page="newsroom"] .social-card__logo { background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .25); }
[data-page="newsroom"] .social-card__head strong { font: 500 16px/24px var(--font-nav); color: #fff; }
[data-page="newsroom"] .social-card__head span { font: 300 14px/18.2px var(--font-nav); color: rgba(255, 255, 255, .8); }
[data-page="newsroom"] .social-card p { font: 300 16px/24px var(--font-nav); color: #fff; }
[data-page="newsroom"] .social-card .btn--sm { height: 42px; padding: 14px 20px; font: 600 14px/14px var(--font-nav); letter-spacing: 1.75px; text-transform: uppercase; }

/* ---------- resources: three 377px cards (#fafafa, 224px image, 20px padding) ---------- */
[data-page="newsroom"] .nr-resources { padding: 95px 0 96px; }
[data-page="newsroom"] .nr-resources .h2 { margin: 0 0 30px !important; }
[data-page="newsroom"] .nr-resources .grid--3 { grid-template-columns: repeat(3, minmax(0, 377px)); justify-content: space-between; gap: 24px; }
[data-page="newsroom"] .res-card { padding: 0 0 40px; border: 0; background: #fafafa; }
[data-page="newsroom"] .res-card__media { aspect-ratio: auto; height: 224px; margin: 0; background-size: cover; background-position: center; }
[data-page="newsroom"] .res-card__media--logo { padding: 40px 60px; background: #fff; border: 1px solid #eee; }
[data-page="newsroom"] .res-card h3 { margin: 20px 20px 0; font: 400 24px/24px var(--font-nav); color: var(--nr-ink); }
[data-page="newsroom"] .res-card .link-arrow { gap: 8px; margin: 24px 20px 0; font: 500 18px/18px var(--font-nav); letter-spacing: normal; text-transform: none; color: var(--nr-ink); }
[data-page="newsroom"] .res-card .link-arrow:hover { color: var(--accent); }

/* ---------- design-with band: light tint, 23px Medium text + button in the right half ---------- */
[data-page="newsroom"] .design-with { background: color-mix(in srgb, var(--accent) 12%, #fff); }
[data-page="newsroom"] .design-with .container { width: var(--nr-col); max-width: none; display: block; padding: 51px 0 60px 600px; text-align: left; }
[data-page="newsroom"] .design-with p { max-width: 470px; margin: 0 0 23px; font: 500 23px/34.5px var(--font-nav); letter-spacing: 0.63px; color: var(--nr-ink); }

/* ---------- contact + subscribe: grey band, 18px headings, 14px lines, blue links ---------- */
[data-page="newsroom"] .nr-contact { padding: 96px 0 64px; background: #f5f5f5; }
[data-page="newsroom"] .news-contact { grid-template-columns: 560px 580px; justify-content: space-between; gap: 40px; }
[data-page="newsroom"] .news-contact .h3 { margin: 0 0 30px; font: 400 18px/19.8px var(--font-nav); color: var(--nr-ink); }
[data-page="newsroom"] .nr-contact p { margin: 0 0 8px; font: 400 14px/21px var(--font-nav); color: var(--nr-ink); }
[data-page="newsroom"] .news-contact__lines a { font: 500 14px/24px var(--font-nav); color: var(--accent); }
[data-page="newsroom"] .news-contact__lines a:hover { color: color-mix(in srgb, var(--accent) 60%, var(--navy)); }
[data-page="newsroom"] .newsletter { gap: 16px; margin-top: 16px; }
[data-page="newsroom"] .newsletter input { flex: 1 1 auto; height: 37px; padding: 0 12px; border: 0.8px solid #888; background: #fff; font: 400 14px/20px var(--font-nav); letter-spacing: normal; }
[data-page="newsroom"] .newsletter button { min-width: 165px; height: 37px; padding: 9px 20px 6px; border: 0.8px solid var(--accent); background: var(--accent); color: #fff;
  font: 600 16px/20.8px var(--font-nav); text-transform: uppercase; letter-spacing: normal; transition: background-color .2s, border-color .2s; }
[data-page="newsroom"] .newsletter button:hover { background: color-mix(in srgb, var(--accent) 60%, var(--navy)); border-color: color-mix(in srgb, var(--accent) 60%, var(--navy)); }

/* ---------- smaller screens ---------- */
@media (max-width: 1240px) {
  [data-page="newsroom"] .news-intro, [data-page="newsroom"] .news-split, [data-page="newsroom"] .news-contact { grid-template-columns: minmax(0, 1fr); }
  [data-page="newsroom"] .news-intro__media { margin-top: 0; }
  [data-page="newsroom"] .nr-resources .grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  [data-page="newsroom"] .design-with .container { padding-left: 0; }
}
@media (max-width: 760px) {
  [data-page="newsroom"] .nr-hero { min-height: 420px; padding-top: 120px; }
  [data-page="newsroom"] .nr-hero .h1 { font-size: 38px; line-height: 42px; }
  [data-page="newsroom"] main .h2, [data-page="newsroom"] .nr-latest .h2 { font-size: 28px; line-height: 34px; }
  [data-page="newsroom"] .nr-intro, [data-page="newsroom"] .nr-latest, [data-page="newsroom"] .nr-resources, [data-page="newsroom"] .nr-contact { padding: 56px 0; }
  [data-page="newsroom"] .nr-resources .grid--3 { grid-template-columns: minmax(0, 1fr); }
  [data-page="newsroom"] .newsletter { flex-wrap: wrap; }
}

/* fixes: the intro heading spans the full 1180px row above the text and image (as on Cadence);
   "View all" is a plain text link, not a button */
@media (min-width: 1241px) { [data-page="newsroom"] .news-intro .h2 { width: var(--nr-col); white-space: nowrap; } }
[data-page="newsroom"] main .nr-latest .btn--stack { min-width: 0; height: auto; padding: 0; border: 0; background: none; box-shadow: none; color: #fff;
  font: 500 14px/18.2px var(--font-nav); letter-spacing: normal; text-transform: none; }
[data-page="newsroom"] main .nr-latest .btn--stack:hover { background: none; color: #6fb2ff; }
/* logo card: the logo fits inside the 224px image area */
[data-page="newsroom"] .res-card__media--logo { display: grid; place-items: center; overflow: hidden; }
[data-page="newsroom"] .res-card__media--logo img { width: 100%; max-width: 260px; height: auto; max-height: 100%; object-fit: contain; }
[data-page="newsroom"] .res-card .link-arrow .icon { font-size: 18px; stroke-width: 2; color: currentColor; }

/* ---------- round 2 ---------- */
/* media sub-header: same as our page section bars (grey 50px row; grey links, blue on hover,
   current page dark with a 2px underline) */
[data-page="newsroom"] .subnav--family { background: #f5f5f5; border-bottom: 0; }
[data-page="newsroom"] .subnav--family .container { height: 50px; }
[data-page="newsroom"] .subnav--family a { position: relative; height: 50px; letter-spacing: 0.72px; color: #707070; }
[data-page="newsroom"] .subnav--family a::after { content: ""; position: absolute; left: 15px; right: 15px; bottom: 0; height: 2px; background: var(--accent);
  transform: scaleX(0); transition: transform .25s; }
[data-page="newsroom"] .subnav--family a:hover { background: transparent; color: var(--accent); }
[data-page="newsroom"] .subnav--family a.is-active, [data-page="newsroom"] .subnav--family a[data-nav="newsroom"] { color: var(--nav-ink); }
[data-page="newsroom"] .subnav--family a.is-active::after, [data-page="newsroom"] .subnav--family a[data-nav="newsroom"]::after { transform: scaleX(1); }
[data-page="newsroom"] .subnav--family .subnav--family__search::after { display: none; }

/* backgrounds: keep the bright parts of the photos on the right, darker on the left for the text */
[data-page="newsroom"] .nr-hero .page-hero__art { background-position: right center; }
[data-page="newsroom"] .nr-hero::after { background: linear-gradient(90deg, rgba(8, 14, 40, .85) 0%, rgba(8, 14, 40, .45) 45%, rgba(8, 14, 40, 0) 75%); }
[data-page="newsroom"] .nr-latest::before { background-position: center 30%; }
[data-page="newsroom"] .nr-latest::after { background: linear-gradient(90deg, rgba(8, 14, 40, .78) 0%, rgba(8, 14, 40, .55) 55%, rgba(8, 14, 40, .35) 100%); }

/* resources: arrow sized and centred on the link text */
[data-page="newsroom"] .res-card .link-arrow { align-items: center; }
[data-page="newsroom"] .res-card .link-arrow .icon { width: 18px; height: 18px; margin: 0; font-size: 18px; }
[data-page="newsroom"] .res-card .link-arrow:hover .icon { transform: translateX(5px); }

/* design-with band: PulseWave logo on the left (439px), text + button from the right half, as on Cadence */
[data-page="newsroom"] .design-with .container { display: grid; grid-template-columns: 439px 470px; justify-content: space-between; align-items: center; padding: 51px 110px 60px 0; }
[data-page="newsroom"] .design-with__logo { width: 439px; height: auto; }
[data-page="newsroom"] .design-with__text { text-align: left; }

/* button hovers (Read company overview, Explore more, Follow on LinkedIn): darker gradient, like Cadence's darker blue */
[data-page="newsroom"] main .btn--primary { background: var(--grad); transition: background .25s, box-shadow .25s; }
[data-page="newsroom"] main .btn--primary:hover, [data-page="newsroom"] main .btn--primary:focus-visible {
  background: linear-gradient(90deg, color-mix(in srgb, var(--accent) 72%, #0c111d), color-mix(in srgb, var(--accent-2) 72%, #0c111d));
  box-shadow: 0 6px 16px rgba(49, 135, 241, .3); }

@media (max-width: 1240px) {
  [data-page="newsroom"] .design-with .container { grid-template-columns: minmax(0, 1fr); justify-items: start; gap: 24px; padding: 48px 0; }
  [data-page="newsroom"] .design-with__logo { width: min(320px, 100%); }
}

/* hero: the globe photo (612x344) is shown at about 1.6x on the right only, so it stays sharp enough, and its
   left edge fades into a deep blue that matches the photo; a soft glow ties the two together */
[data-page="newsroom"] .nr-hero { background: radial-gradient(ellipse 900px 520px at 78% 40%, rgba(49, 135, 241, .28), transparent 70%),
  linear-gradient(90deg, #04102c 0%, #071c4a 45%, #0a2a68 100%); }
[data-page="newsroom"] .nr-hero .page-hero__art { left: auto; right: 0; width: min(1010px, 62%); background: var(--nr-hero-img) right center/cover no-repeat;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .55) 22%, #000 48%); mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, .55) 22%, #000 48%); }
[data-page="newsroom"] .nr-hero::after { background: linear-gradient(90deg, rgba(4, 16, 44, .55) 0%, rgba(4, 16, 44, .2) 40%, rgba(4, 16, 44, 0) 70%); }
@media (max-width: 760px) {
  [data-page="newsroom"] .nr-hero .page-hero__art { width: 100%; opacity: .45; -webkit-mask-image: none; mask-image: none; }
}

/* primary buttons (Read company overview, Explore more, Follow on LinkedIn): the PulseWave theme hover —
   the blue-to-purple gradient slides towards purple, no darker colour or glow */
[data-page="newsroom"] main .btn--primary { background: var(--grad); background-size: 140% 100%; background-position: 0 0; box-shadow: none;
  transition: background-position .4s var(--ease), transform .25s var(--ease); }
[data-page="newsroom"] main .btn--primary:hover, [data-page="newsroom"] main .btn--primary:focus-visible { background: var(--grad); background-size: 140% 100%; background-position: 100% 0; box-shadow: none; }
