/* PLATFORM module styles only. */
.pf-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border);
  padding-block:clamp(48px,7vw,88px)}
.pf-hero__copy{max-width:64ch;position:relative;padding-left:22px}
.pf-hero__copy::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;
  border-radius:3px;background:var(--spine)}
.pf-hero__title{font-size:clamp(2rem,1.2rem + 3vw,3.3rem)}

.pf-stack{display:grid;gap:0}
.pf-layer{display:grid;grid-template-columns:44px .8fr 1.2fr;gap:clamp(16px,3vw,40px);
  padding-block:clamp(28px,3.4vw,44px);border-bottom:1px solid var(--border);position:relative}
.pf-layer:last-child{border-bottom:0}
.pf-layer__rail{position:relative}
.pf-layer__rail::before{content:"";position:absolute;left:5px;top:0;bottom:calc(-1 * clamp(28px,3.4vw,44px));
  width:2px;background:var(--border)}
.pf-layer:last-child .pf-layer__rail::before{display:none}
.pf-layer__dot{position:absolute;left:0;top:6px;width:12px;height:12px;border-radius:50%;
  background:#fff;border:2px solid var(--blue)}
.pf-layer:nth-child(n+4) .pf-layer__dot{border-color:var(--green)}
.pf-layer__num{font-size:.688rem;font-weight:600;letter-spacing:.14em;color:var(--grey-lt);display:block;margin-bottom:8px}
.pf-layer__name{font-size:clamp(1.35rem,1.1rem + .9vw,1.85rem)}
.pf-layer__sub{font-size:.813rem;color:var(--green);font-weight:500;margin-top:6px;letter-spacing:.01em}
.pf-layer__desc{color:var(--grey);font-size:.938rem;max-width:58ch}
.pf-layer__list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 20px;margin-top:18px}
.pf-layer__list li{position:relative;padding-left:16px;font-size:.813rem;color:var(--ink)}
.pf-layer__list li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;
  border-radius:50%;border:1.5px solid var(--green-lt)}

@media (max-width:1023px){
  .pf-layer{grid-template-columns:30px 1fr;gap:14px}
  .pf-layer__body{grid-column:2}
  .pf-layer__rail::before{left:5px}
}
@media (max-width:767px){ .pf-layer__list{grid-template-columns:1fr} }
