/**
 * Doctor Profile Widget Styles
 *
 * Horizontal split layout with portrait and biography
 *
 * @package DrYazdani
 * @since 1.0.0
 */

/* ==========================================================================
   Main Container
   ========================================================================== */

.dryazdani-doctor-profile {
	background-color: var(--dryazdani-bg-white);
	padding-block: var(--dryazdani-space-24);
	padding-inline: var(--dryazdani-space-6);
}

/* Container styles inherited from .dryazdani-container */

/* ==========================================================================
   Grid Layout
   ========================================================================== */

.dryazdani-doctor-profile__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--dryazdani-space-16);
	align-items: center;
}

@media (min-width: 1024px) {
	.dryazdani-doctor-profile__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* ==========================================================================
   Portrait Image
   ========================================================================== */

.dryazdani-doctor-profile__portrait {
	position: relative;
	aspect-ratio: 3 / 4;
	overflow: hidden;
	background-color: var(--dryazdani-secondary);
}

.dryazdani-doctor-profile__image {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	display: block;
	transition: filter var(--dryazdani-duration-slower) var(--dryazdani-ease-out);
}

/* Grayscale effect */
.dryazdani-doctor-profile__portrait--grayscale .dryazdani-doctor-profile__image {
	filter: grayscale(100%);
}

.dryazdani-doctor-profile__portrait--grayscale:hover .dryazdani-doctor-profile__image {
	filter: grayscale(0%);
}

/* ==========================================================================
   Content Column
   ========================================================================== */

.dryazdani-doctor-profile__content-column {
	display: flex;
	flex-direction: column;
}

.dryazdani-doctor-profile__badge {
	display: inline-block;
	margin-block-end: var(--dryazdani-space-6);
	color: var(--dryazdani-primary);
	font-family: var(--dryazdani-font-body);
	font-size: var(--dryazdani-text-xs);
	font-weight: var(--dryazdani-font-medium);
	letter-spacing: var(--dryazdani-tracking-ultra-wide);
	text-transform: uppercase;
}

.dryazdani-doctor-profile__heading {
	font-family: var(--dryazdani-font-heading);
	font-size: clamp(var(--dryazdani-text-4xl), 5vw, var(--dryazdani-text-5xl));
	font-weight: var(--dryazdani-font-normal);
	color: var(--dryazdani-secondary);
	line-height: var(--dryazdani-leading-none);
	margin: 0;
	margin-block-end: var(--dryazdani-space-8);
}

/* Biography */
.dryazdani-doctor-profile__bio {
	display: flex;
	flex-direction: column;
	gap: var(--dryazdani-space-6);
}

.dryazdani-doctor-profile__paragraph {
	font-family: var(--dryazdani-font-body);
	font-size: var(--dryazdani-text-lg);
	color: var(--dryazdani-secondary);
	margin: 0 !important;
}

/* Line clamp (3 lines) */
.dryazdani-doctor-profile__paragraph--clamped {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ==========================================================================
   Statistics
   ========================================================================== */

.dryazdani-doctor-profile__statistics {
	display: grid;
	/* grid-template-columns controlled by Elementor responsive control */
	grid-template-columns: repeat(3, 1fr); /* Default fallback */
	gap: var(--dryazdani-space-8);
	padding-block-start: var(--dryazdani-space-12);
	padding-block-end: var(--dryazdani-space-12);
	border-block-end: 1px solid rgba(var(--dryazdani-secondary-rgb), 0.1);
}

/* Statistics use design system .dryazdani-stat classes */
.dryazdani-doctor-profile .dryazdani-stat {
	text-align: start;
}

/* ==========================================================================
   CTA Button
   ========================================================================== */

.dryazdani-doctor-profile__cta {
	display: block;
}

.dryazdani-doctor-profile__cta .dryazdani-button {
	display: block;
	width: 100%;
	text-align: center;
}

/* ==========================================================================
   Responsive Breakpoints
   ========================================================================== */

@media (min-width: 768px) {
	.dryazdani-doctor-profile {
		padding-inline: var(--dryazdani-space-8);
	}
}

@media (min-width: 1024px) {
	.dryazdani-doctor-profile {
		padding-inline: var(--dryazdani-space-12);
	}
}

/* Mobile adjustments */
@media (max-width: 767px) {
	.dryazdani-doctor-profile {
		padding-block: var(--dryazdani-space-16);
	}

	.dryazdani-doctor-profile__heading {
		font-size: var(--dryazdani-text-3xl);
	}

	.dryazdani-doctor-profile__statistics {
		/* Column count controlled by Elementor responsive control */
		gap: var(--dryazdani-space-4);
		padding-block-start: var(--dryazdani-space-8);
		padding-block-end: var(--dryazdani-space-8);
	}
}

/* ==========================================================================
   Narrative Sticky Variant
   ========================================================================== */

.dryazdani-doctor-profile.narrative-sticky .dryazdani-doctor-profile__grid {
	align-items: flex-start;
}

/* Sticky Portrait Positioning */
.dryazdani-doctor-profile__image-column--sticky {
	position: sticky;
	top: 24px;
	height: fit-content;
}

/* Drop Cap Styling */
.dryazdani-doctor-profile__paragraph--drop-cap::first-letter {
	font-size: 7rem;
	font-family: var(--dryazdani-font-heading);
	color: var(--dryazdani-primary);
	float: left;
	line-height: 0.8;
	margin-inline-end: 0.75rem;
	margin-block-start: 0.2rem;
}

/* Larger text for narrative mode */
.dryazdani-doctor-profile.narrative-sticky .dryazdani-doctor-profile__paragraph {
	font-size: var(--dryazdani-text-lg);
	line-height: 1.9;
}

.dryazdani-doctor-profile.narrative-sticky .dryazdani-doctor-profile__heading {
	font-size: clamp(var(--dryazdani-text-5xl), 6vw, var(--dryazdani-text-6xl));
	margin-block-end: var(--dryazdani-space-8);
}

/* Portrait Caption */
.dryazdani-doctor-profile__caption {
	margin-block-start: var(--dryazdani-space-6);
	text-align: center;
}

.dryazdani-doctor-profile__caption-main {
	font-size: var(--dryazdani-text-sm);
	font-weight: var(--dryazdani-font-medium);
	letter-spacing: var(--dryazdani-tracking-widest);
	text-transform: uppercase;
	color: var(--dryazdani-text-muted);
	margin: 0 !important;
}

.dryazdani-doctor-profile__caption-sub {
	font-size: var(--dryazdani-text-xs);
	color: var(--dryazdani-text-muted);
	margin-block-start: var(--dryazdani-space-2);
	margin: 0 !important;
}

/* Hide statistics and CTA in narrative mode (or adjust as needed) */
.dryazdani-doctor-profile.narrative-sticky .dryazdani-doctor-profile__statistics {
	border: none;
}

/* Responsive for Narrative Sticky */
@media (max-width: 1023px) {
	.dryazdani-doctor-profile.narrative-sticky .dryazdani-doctor-profile__grid {
		grid-template-columns: 1fr;
	}

	.dryazdani-doctor-profile__image-column--sticky {
		position: relative;
		top: auto;
	}

	.dryazdani-doctor-profile__paragraph--drop-cap::first-letter {
		font-size: 4rem;
	}
}

/* ==========================================================================
   RTL Support
   ========================================================================== */

[dir="rtl"] .dryazdani-doctor-profile .dryazdani-stat {
	text-align: start;
}

[dir="rtl"] .dryazdani-doctor-profile__paragraph--drop-cap::first-letter {
	float: right;
	margin-inline-end: 0;
	margin-inline-start: 0.75rem;
}

/* ==========================================================================
   Accessibility
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {
	.dryazdani-doctor-profile__image {
		transition: none;
	}

	.dryazdani-doctor-profile__portrait--grayscale:hover .dryazdani-doctor-profile__image {
		filter: grayscale(100%);
	}
}
