.caritas-ps-selector { --caritas-accent: #4f7566; --caritas-accent-dark: #3b5d51; max-width: 900px; margin: 0 auto; }
.caritas-ps-label { display: block; font-weight: 600; margin-bottom: .5rem; }
.caritas-ps-select { width: 100%; min-height: 50px; padding: 10px 14px; border: 1px solid #c7d1cc; border-radius: 6px; background: #fff; font-size: 1rem; }
.caritas-ps-cards { margin-top: 0; }
.caritas-ps-cards.has-selection { margin-top: 24px; }
.caritas-ps-card,
.caritas-ps-card[hidden] { display: none !important; }
.caritas-ps-card.is-visible { display: grid !important; grid-template-columns: minmax(220px, 34%) 1fr; gap: 32px; align-items: center; padding: 30px; background: #fff; border: 1px solid #dce5e0; border-radius: 12px; box-shadow: 0 8px 28px rgba(45,74,63,.08); opacity: 0; transform: translateY(8px); animation: caritasPsFade .28s ease forwards; }
.caritas-ps-photo { display: block; width: 100%; height: auto; border-radius: 10px; }
.caritas-ps-name { margin: 0 0 6px; }
.caritas-ps-credentials { margin: 0 0 16px; font-weight: 600; color: var(--caritas-accent-dark); }
.caritas-ps-services, .caritas-ps-message, .caritas-ps-contact-details { margin-bottom: 16px; }
.caritas-ps-services p, .caritas-ps-message p, .caritas-ps-contact-details p { margin: 0 0 8px; }
.caritas-ps-button { display: inline-block; padding: 12px 20px; border-radius: 5px; background: var(--caritas-accent); color: #fff !important; text-decoration: none; transition: background .2s ease, transform .2s ease; }
.caritas-ps-button:hover, .caritas-ps-button:focus { background: var(--caritas-accent-dark); transform: translateY(-1px); }
@keyframes caritasPsFade { to { opacity: 1; transform: translateY(0); } }
@media (max-width: 700px) {
    .caritas-ps-card.is-visible { grid-template-columns: 1fr; padding: 22px; }
    .caritas-ps-photo-wrap { max-width: 360px; margin: 0 auto; }
}
@media (prefers-reduced-motion: reduce) {
    .caritas-ps-card.is-visible { animation: none; opacity: 1; transform: none; }
}
