.pv-services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.pv-service-card { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 26px; border-top: 2px solid var(--line); background: var(--white); color: var(--forest); }
.pv-service-card:hover { background: var(--sage); text-decoration: none; }
.pv-service-card h2 { font-size: clamp(1.55rem, 2.25vw, 2.05rem); }
.pv-service-card p { margin: 0 0 14px; color: var(--muted); }
.pv-service-card .hub-action { padding-top: 12px; border-top: 1px solid var(--line); grid-template-columns: minmax(0,1fr) auto; }
.pv-service-card .hub-action span { width: 32px; height: 32px; }
.pv-company { display: grid; grid-template-columns: minmax(126px,211px) minmax(0,1fr); align-items: center; gap: clamp(24px,6vw,72px); }
.pv-contact-options section { scroll-margin-top: 24px; }
.pv-contact-options a { max-width: 100%; }
@media (max-width: 900px) { .pv-service-card { padding: 21px; } }
@media (max-width: 760px) { .pv-services { grid-template-columns: 1fr; gap: 14px; } }
@media (max-width: 620px) { .pv-company { grid-template-columns: 1fr; } }
