.ph{position:relative;padding:clamp(58px,8vw,104px) 0 clamp(38px,5vw,60px);overflow:hidden;border-bottom:1px solid var(--line-soft)}
.ph__in{position:relative;z-index:1;max-width:800px}
.crumb{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--steel);margin-bottom:1.4rem;display:flex;gap:.55rem;align-items:center}
.crumb a:hover{color:var(--fog)}
.svc-card{display:flex;flex-direction:column;height:100%}
.svc-card ul{list-style:none;margin:1.35rem 0 0;padding:1.35rem 0 0;border-top:1px solid var(--line-soft);display:grid;gap:.6rem}
.svc-card li{display:flex;gap:.6rem;align-items:center;font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--steel)}
.svc-card li svg{color:var(--fog);flex:none}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line-soft);border-radius:var(--r-lg);overflow:hidden;background:var(--graphite)}
.step{padding:clamp(1.5rem,2.6vw,2.1rem);position:relative}
.step+.step{border-left:1px solid var(--line-soft)}
.step__n{font-family:var(--f-display);font-size:2.6rem;color:transparent;-webkit-text-stroke:1px var(--line);display:block;line-height:1;margin-bottom:1.15rem;letter-spacing:-.04em}
.step h3{font-size:1.02rem;margin-bottom:.55rem}
.step p{font-size:.9rem;color:var(--mist);margin:0}
details.faq{border-bottom:1px solid var(--line-soft);padding:0}
details.faq summary{
  list-style:none;cursor:pointer;padding:1.35rem 3rem 1.35rem 0;position:relative;
  font-family:var(--f-display);font-size:clamp(1rem,1.5vw,1.14rem);color:var(--white);font-weight:600;letter-spacing:-.015em;
}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{
  content:"";position:absolute;right:.35rem;top:50%;width:11px;height:11px;
  border-right:1.5px solid var(--steel);border-bottom:1.5px solid var(--steel);
  transform:translateY(-70%) rotate(45deg);transition:transform .3s var(--ease),border-color .3s var(--ease);
}
details.faq[open] summary::after{transform:translateY(-30%) rotate(-135deg);border-color:var(--fog)}
details.faq summary:hover{color:var(--fog)}
details.faq .ans{padding:0 3rem 1.5rem 0;color:var(--mist);font-size:.95rem;line-height:1.68}
details.faq .ans p{margin:0}
@media (max-width:1000px){.steps{grid-template-columns:1fr 1fr}.step:nth-child(3){border-left:0}.step:nth-child(n+3){border-top:1px solid var(--line-soft)}}
@media (max-width:640px){.steps{grid-template-columns:1fr}.step+.step{border-left:0;border-top:1px solid var(--line-soft)}}
