/* Insights listing: hero + content tiles. Requires site.css. */

/* Hero */
.ins-hero{position:relative;overflow:hidden;padding:104px 0 72px;border-bottom:1px solid var(--line)}
.ins-hero .wrap{position:relative;z-index:1}
.ins-hero h1{font-size:clamp(42px,6.4vw,74px);margin-bottom:20px}
.ins-hero p{font-size:clamp(17px,2.1vw,20px);color:var(--muted);max-width:640px}

/* Tiles */
.ins-list{padding:64px 0 120px}
.tiles{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tile{position:relative;height:100%;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;display:flex;flex-direction:column;gap:14px;overflow:hidden;transition:transform .25s var(--ease),border-color .2s,background .2s}
.tile::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.tile:hover,.tile:focus-within{border-color:var(--accent-border);background:var(--card-2);transform:translateY(-3px)}
.tile:hover::before,.tile:focus-within::before{transform:scaleX(1)}
.tile-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:13px;color:var(--muted-2)}
.tile-type{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-border);padding:5px 10px;border-radius:999px;line-height:1}
.tile h2{font-family:var(--font-display);font-weight:400;font-size:clamp(22px,2.4vw,26px);line-height:1.2}
.tile-link::after{content:"";position:absolute;inset:0;border-radius:var(--radius)}
.tile-link:focus-visible{outline:none}
.tile:has(.tile-link:focus-visible){outline:2px solid var(--accent);outline-offset:3px}
.tile-sub{font-size:14px;color:var(--muted)}
.tile p{font-size:15.5px;line-height:1.6;color:var(--read);flex:1}
.tile-cta{color:var(--accent);font-weight:600;font-size:14px}

@media(max-width:900px){
  .ins-hero{padding:88px 0 56px}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .tiles{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .tile,.tile::before{transition:none}
}
