/* Services page only. Shared rules live in css/style.css. */

/* Pillar: sticky left column (title, description, 4:5 photo), sub-service list right */
.pillar .wrap{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:start}
.pillar-side{position:sticky;top:calc(var(--nav) + 24px)}
.pillar-side h2{font-size:var(--h-panel);max-width:14ch}
.pillar-side p{color:var(--dim);margin-top:16px;max-width:40ch}
.pillar-side img{width:100%;aspect-ratio:4/5;max-height:calc(100dvh - var(--nav) - 280px);object-fit:cover;margin-top:36px}
.subs>li{border-top:1px solid var(--rule);padding:32px 0 36px}
.subs>li:last-child{border-bottom:1px solid var(--rule)}
.subs h3{font-size:var(--h-item);letter-spacing:-.02em;line-height:1.15}
.subs p{color:var(--dim);margin-top:12px;max-width:60ch}
.subs .bullets{margin-top:14px;columns:2;column-gap:24px}
.subs .bullets li{break-inside:avoid;margin-top:6px}

/* Toolkit: 3x2 text blocks with top rules, no boxes */
.kit{display:grid;grid-template-columns:repeat(3,1fr);gap:0 48px}
.kit>li{border-top:1px solid var(--rule);padding:24px 0 48px}
.kit h3{font-size:22px;letter-spacing:-.02em;line-height:1.15}
.kit p{color:var(--dim);font-size:15px;margin-top:10px;max-width:34ch}
.kit .tags{margin-top:20px}

/* Delivery rows: keep the phase description column readable */
.delivery .rows p{max-width:52ch}

@media (max-width:1024px){
  .pillar .wrap{grid-template-columns:1fr;gap:40px}
  .pillar-side{position:static}
  .pillar-side img{max-width:420px}
  .kit{grid-template-columns:1fr 1fr;gap:0 32px}
}
@media (max-width:767px){
  .pillar-side h2{font-size:32px}
  .pillar-side img{margin-top:28px;max-width:100%;max-height:none}
  .subs>li{padding:24px 0 28px}
  .subs .bullets{columns:1}
  .kit{grid-template-columns:1fr}
  .kit>li{padding:20px 0 32px}
}
