/* Shared profile layout; section order and content come from the team record. */
.de-doctor-profile {
	--de-profile-brand: #5942cb;
	background: linear-gradient(#5941cd, rgb(89 65 205 / 0)) top / 100% 360px no-repeat;
	color: #372f4c;
	padding-top: 180px;
}
.de-doctor-profile__layout { align-items: start; display: grid; gap: 70px; grid-template-columns: 350px minmax(0, 1fr); }
.de-doctor-profile__card { align-self: start; isolation: isolate; position: sticky; top: 160px; width: 350px; }
.de-doctor-profile__card::after { border: 1px solid rgb(89 65 205 / 17%); border-radius: 18px; content: ''; inset: min(82px, calc((100vw - 60px) * 0.2342857)) 0 0; pointer-events: none; position: absolute; z-index: -1; }
.de-doctor-profile__visual { aspect-ratio: 350 / 445; position: relative; }
.de-doctor-profile__backdrop { bottom: 0; height: auto; left: 0; position: absolute; width: 100%; z-index: -1; }
.de-doctor-profile__portrait { height: 100%; object-fit: contain; object-position: center bottom; position: absolute; width: 100%; }
.de-doctor-profile__identity { padding: 23px 12px 17px; text-align: center; }
.de-doctor-profile__identity h1 { color: var(--de-profile-brand); font-family: var(--de-heading); font-size: 20px; font-weight: 700; line-height: 1.25; margin: 0 0 4px; }
.de-doctor-profile__identity p { color: var(--de-profile-brand); font-size: 16px; line-height: 1.2; margin: 0; text-wrap: balance; }
.de-doctor-profile__sections { display: flex; flex-direction: column; gap: 70px; min-width: 0; padding-top: 82px; }
.de-doctor-profile__section { margin: 0; min-width: 0; }
.de-doctor-profile__section--list + .de-doctor-profile__section--list { margin-top: -30px; }
.de-doctor-profile__section h2 { color: var(--de-profile-brand); font-family: var(--de-font); font-size: 22px; font-weight: 600; line-height: 24px; margin: 0 0 25px; }
.de-doctor-profile__list { display: grid; gap: 0; list-style: none; margin: 0; padding: 0; }
.de-doctor-profile__list li { align-items: start; display: flex; font-size: 16px; gap: 9px; line-height: 1.2; min-width: 0; padding-block: 15px; }
.de-doctor-profile__list li:first-child { padding-top: 0; }
.de-doctor-profile__list li:last-child { padding-bottom: 0; }
.de-doctor-profile__list li + li { border-top: 1px solid rgb(89 65 205 / 17%); }
.de-doctor-profile__list .de-check-list__animated-icon { flex-shrink: 0; }
.de-doctor-profile__list-intro { font-size: 16px; line-height: 1.35; margin: 0 0 15px; }
.de-doctor-profile__section--services { margin: -30px auto 0; max-width: 100%; width: fit-content; }
.de-doctor-profile__section--services .de-doctor-profile__list { gap: 15px; }
.de-doctor-profile__section--services .de-doctor-profile__list li { border: 0; padding: 0; }
.de-doctor-profile__quote { background: #f4f2fd; border-radius: 18px; padding: 20px; }
.de-doctor-profile__quote-mark { margin-bottom: 25px; transform: rotate(180deg); }
.de-doctor-profile__quote blockquote { margin: 0; }
.de-doctor-profile__quote p { font-size: 18px; line-height: 24px; margin: 0; }
.de-doctor-profile__quote figcaption { border-top: 1px solid rgb(89 65 205 / 17%); font-size: 18px; font-weight: 600; line-height: 24px; margin-top: 25px; padding-top: 25px; }
.de-doctor-profile__quote--note p { font-size: 16px; line-height: 1.35; }
.de-doctor-profile__actions { display: grid; gap: 16px; margin-inline: auto; max-width: 100%; width: 305px; }
.de-doctor-profile__section--list + .de-doctor-profile__actions,
.de-doctor-profile__actions + .de-doctor-profile__section--list { margin-top: -30px; }
.de-doctor-profile__actions .de-button { min-height: 50px; width: 100%; }
.de-doctor-profile__actions .de-button--whatsapp { align-items: center; display: flex; gap: 6px; justify-content: center; }
.de-doctor-profile .de-contact { padding-top: 70px; }
@media (min-width: 1024px) and (max-height: 760px) {
	.de-doctor-profile__card { position: relative; top: auto; }
}
@media (max-width: 1023px) {
	.de-doctor-profile { padding-top: 230px; }
	.de-doctor-profile__layout { gap: 70px; grid-template-columns: minmax(0, 1fr); padding-inline: 20px; }
	.de-doctor-profile__card { margin-inline: auto; max-width: calc(100vw - 60px); position: relative; top: auto; }
	.de-doctor-profile__sections { margin-inline: auto; max-width: 700px; padding-top: 0; width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .de-doctor-profile [data-reveal] { opacity: 1; transform: none; } }
