/* ==========================================================================
   News, events and webinars

   Replaces the single dark rotating promo with three light editorial columns.
   Built from the card language already on the page — the same hairline border,
   the same 16px radius, the same charcoal-on-white type, the same growing red
   rule and 3px arrow travel as the strategic cards and the Solutions rows — so
   it reads as Silvaco rather than a generic news-card template.
   ========================================================================== */

.news-row{
  padding-block:48px;
  background:var(--sv-white);
}
.news-row__head{
  grid-column-end:span var(--ps-grid-columns);
  text-align:center;margin-bottom:32px;
}
.news-row__title{color:var(--ps-color-neutral-3-500);margin:0}

.news-row__grid{
  grid-column-end:span var(--ps-grid-columns);
  display:grid;grid-template-columns:1fr;gap:20px;
}

/* --------------------------------------------------------------------------
   One column
   -------------------------------------------------------------------------- */
.news-col{
  display:flex;flex-direction:column;
  background:var(--sv-white);
  border:1px solid var(--ps-color-neutral-2-300);border-radius:16px;
  overflow:hidden;
  transition:border-color .25s ease-out;
}
.news-col:hover{border-color:var(--ps-color-neutral-2-500)}

.news-col__visual{
  position:relative;overflow:hidden;
  aspect-ratio:16 / 7;
  background:var(--ps-color-neutral-2-100);
  border-bottom:1px solid var(--ps-color-neutral-2-300);
}
.news-col__visual img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;object-position:center center;
}

.news-col__body{
  display:flex;flex-direction:column;flex:1 1 auto;
  padding:24px 24px 20px;
}
.news-col__head{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
/* small red category accent, not a heading */
.news-col__label{
  font:500 11px/16px var(--ps-font);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ps-color-brand-600);
}
.news-col__heading{color:var(--ps-color-neutral-3-500);margin:0}

.news-col__list{
  list-style:none;margin:0;padding:0;flex:1 1 auto;
  border-top:1px solid var(--ps-color-neutral-2-200);
}
.news-col__item{border-bottom:1px solid var(--ps-color-neutral-2-200);padding:14px 0 12px}

.news-col__link{
  position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding-left:14px;
  font:500 15px/21px var(--ps-font);letter-spacing:normal;
  color:var(--ps-color-neutral-3-500);
  transition:color .2s ease-out;
}
.news-col__link::before{
  content:"";position:absolute;left:0;top:4px;
  width:2px;height:0;background:var(--ps-color-brand-500);
  transition:height .2s ease-out;
}
.news-col__link-arrow{
  flex:none;display:flex;margin-top:5px;
  color:var(--ps-color-neutral-2-500);
  transition:transform .2s ease-out,color .2s ease-out;
}
.news-col__link-arrow svg{width:13px;height:11px;fill:currentColor}
.news-col__link:hover,.news-col__link:focus-visible{color:var(--ps-color-brand-600)}
.news-col__link:hover::before,.news-col__link:focus-visible::before{height:calc(100% - 8px)}
.news-col__link:hover .news-col__link-arrow,
.news-col__link:focus-visible .news-col__link-arrow{transform:translateX(3px);color:var(--ps-color-brand-500)}

.news-col__meta{
  margin:6px 0 0 14px;
  font:400 12px/17px var(--ps-font);letter-spacing:normal;
  color:var(--ps-color-secondary-5-500);
}

/* a restrained text CTA, deliberately not a full-width red button */
.news-col__all{margin-top:18px;align-self:flex-start;color:var(--ps-color-secondary-5-500)}

@media (prefers-reduced-motion:reduce){
  .news-col,.news-col__link,.news-col__link::before,.news-col__link-arrow{transition:none}
}

@media (min-width:640px){
  .news-row{padding-block:64px}
  .news-row__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  /* the third column takes the full width of the second row rather than
     leaving a hole beside it */
  .news-col:last-child{grid-column:1 / -1}
  .news-col:last-child{flex-direction:row}
  .news-col:last-child .news-col__visual{flex:0 0 42%;aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--ps-color-neutral-2-300)}
  .news-col:last-child .news-col__body{flex:1 1 auto}
}
@media (min-width:1024px){
  .news-row{padding-block:80px}
  /* three equal editorial columns */
  .news-row__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .news-col:last-child{grid-column:auto;flex-direction:column}
  .news-col:last-child .news-col__visual{flex:none;aspect-ratio:16 / 7;border-bottom:1px solid var(--ps-color-neutral-2-300);border-right:0}
  .news-col__body{padding:28px 28px 24px}
}
@media (min-width:1350px){
  .news-row__head,
  .news-row__grid{grid-column-start:2;grid-column-end:span 10}
}
