/* Shared styles for service, legal, training and industry pages. */
.ph{padding:clamp(56px,8vw,104px) 0 clamp(36px,5vw,56px)}
.ph h1{font-size:clamp(40px,6.6vw,76px);line-height:1.03;margin:12px 0 18px;max-width:17ch}
.ph .lead{max-width:48ch}
.ph .cta{display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center;margin-top:30px}
.ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ticks li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;color:var(--n70)}
.ticks li::before{content:"";width:20px;height:20px;border-radius:50%;background:#2f6fe8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.4l2.8 2.8 6-6.4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/20px no-repeat;margin-top:2px}
.dark .ticks li{color:var(--w70)}
.svc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start;padding:clamp(56px,8vw,96px) 0;border-top:1px solid var(--n12);scroll-margin-top:60px}
.svc:first-of-type{border-top:0}
.svc h2{font-size:clamp(30px,4.2vw,46px);line-height:1.06;margin:10px 0 14px}
.svc p.lead{max-width:44ch}
.price{display:flex;align-items:baseline;gap:8px;margin:22px 0}
.price b{font-size:44px;letter-spacing:-.03em;line-height:1}
.price span{color:var(--n55);font-size:15px}
.box{border:1px solid var(--n12);border-radius:24px;padding:26px;background:var(--white)}
.box h3{font-size:20px;margin-bottom:14px}
.eyebrow.b{color:var(--accent-btn)}
.faq details{border-bottom:1px solid var(--n12);padding:18px 0}
.faq summary{font-weight:600;font-size:18px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--n55);font-weight:400;font-size:22px;line-height:1}
.faq details[open] summary::after{content:"\2212"}
.faq details p{color:var(--n70);margin-top:10px;max-width:70ch}
.band{background:var(--navy);color:#fff;border-radius:32px;padding:clamp(32px,5vw,56px);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.band h2{font-size:clamp(28px,3.6vw,40px);line-height:1.1;max-width:22ch}
.band p{color:var(--w70);margin-top:8px}
@media (max-width:900px){.svc{grid-template-columns:minmax(0,1fr)}}
