/* ================================================================
   PLATFORMS HUB STYLES
   Shared by /platforms/ index + per-platform pages on both sites
   ================================================================ */

.plat-breadcrumb{
  padding:18px 0 0;font-family:var(--mono);font-size:.72rem;
  color:var(--muted);letter-spacing:.12em;text-transform:uppercase;
}
.plat-breadcrumb a{color:var(--muted);text-decoration:none;}
.plat-breadcrumb a:hover{color:var(--red);}
.plat-breadcrumb .sep{margin:0 8px;color:var(--muted-2);}
.plat-breadcrumb .current{color:#fff;}

/* INDEX page hero */
.plat-index-hero{padding:54px 0 28px;}
.plat-index-hero .eyebrow{
  display:inline-block;font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--red);padding:6px 12px;
  border:1px solid rgba(214,31,38,.4);border-radius:4px;margin-bottom:18px;
}
.plat-index-hero h1{
  font-family:var(--display);font-size:clamp(2.6rem,5.6vw,4.4rem);
  line-height:.95;letter-spacing:-.025em;text-transform:uppercase;
  margin-bottom:18px;
}
.plat-index-hero h1 .accent{color:var(--red);}
.plat-index-hero .lede{
  font-size:1.16rem;color:var(--text-2);max-width:840px;line-height:1.55;
}

/* Category header */
.plat-category{
  margin:42px 0 18px;
  display:flex;align-items:center;gap:18px;
}
.plat-category h2{
  font-family:var(--display);font-size:1.55rem;
  text-transform:uppercase;letter-spacing:-.01em;margin:0;color:#fff;
}
.plat-category .line{flex:1;height:1px;background:var(--line);}
.plat-category .count{
  font-family:var(--mono);font-size:.72rem;
  color:var(--muted);letter-spacing:.14em;
}

/* Platform tile grid */
.plat-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:10px;margin-bottom:24px;
}
.plat-tile{
  background:var(--panel);border:1px solid var(--line);
  border-radius:10px;padding:16px 18px;
  text-decoration:none;color:inherit;
  transition:all .15s;
  display:flex;flex-direction:column;justify-content:space-between;
  min-height:88px;
}
.plat-tile:hover{
  border-color:var(--red);background:var(--panel-2);
  transform:translateY(-1px);
}
.plat-tile h3{
  font-family:var(--display);font-size:.94rem;
  text-transform:uppercase;letter-spacing:-.003em;
  color:#fff;margin:0 0 6px;line-height:1.18;
}
.plat-tile .tag{
  font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;
  color:var(--muted);text-transform:uppercase;
}

/* PER-PLATFORM page */
.plat-hero{
  padding:48px 0 32px;border-bottom:1px solid var(--line);margin-bottom:36px;
}
.plat-hero .category-tag{
  display:inline-block;font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--red);padding:6px 12px;
  border:1px solid rgba(214,31,38,.4);border-radius:4px;margin-bottom:18px;
}
.plat-hero h1{
  font-family:var(--display);font-size:clamp(2.2rem,4.8vw,3.8rem);
  line-height:.98;letter-spacing:-.022em;text-transform:uppercase;
  margin-bottom:18px;
}
.plat-hero h1 .accent{color:var(--red);}
.plat-hero .tagline{
  font-size:1.12rem;color:var(--text-2);max-width:760px;line-height:1.55;
}

.plat-body{padding-bottom:60px;}
.plat-section{margin:32px 0;}
.plat-section h2{
  font-family:var(--display);font-size:1.45rem;text-transform:uppercase;
  letter-spacing:-.014em;line-height:1.05;margin-bottom:14px;color:#fff;
}
.plat-section h2 .num{
  color:var(--red);font-family:var(--mono);
  font-size:.62em;letter-spacing:.1em;margin-right:14px;font-weight:700;
}
.plat-section p{
  color:var(--text-2);font-size:1.02rem;line-height:1.72;margin-bottom:12px;
}
.plat-section p strong{color:#fff;}
.plat-section ul{margin:8px 0 18px 22px;color:var(--text-2);}
.plat-section li{margin-bottom:7px;line-height:1.65;}

.plat-related{
  display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;
}
.plat-related a{
  font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted);
  border:1px solid var(--line);padding:9px 14px;
  border-radius:6px;text-decoration:none;transition:all .15s;
}
.plat-related a:hover{
  border-color:var(--red);color:var(--red);
}

.plat-cta{
  margin:42px 0 60px;padding:30px 28px;
  background:linear-gradient(135deg, rgba(214,31,38,.12), rgba(0,0,0,0));
  border:1px solid var(--red);border-radius:14px;text-align:center;
}
.plat-cta h3{
  font-family:var(--display);text-transform:uppercase;
  font-size:1.32rem;margin-bottom:8px;color:#fff;letter-spacing:-.005em;
}
.plat-cta p{color:var(--text-2);margin-bottom:18px;}
.plat-cta .btn{margin:0 6px;}
