/* Experience.com & Birdeye Reviews Plugin Styles */

/* Main Review Sections - 3 column layout on desktop */
.agent-reviews-section,
.location-reviews-section {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 40px;
	align-items: start;
	margin: 40px 0;
}

/* Info Column (left side on desktop) */
.reviews-info-column {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.reviews-heading {
	margin: 0 0 20px 0;
	font-size: 1.8rem;
	line-height: 1.2;
}

/* Stats Row */
.reviews-stats {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.star-icon {
	width: 20px;
	height: 20px;
	fill: #5d5d5d;
}

.avg-score {
	font-size: 1.1rem;
	font-weight: 500;
}

.review-count {
	color: #666;
	font-size: 0.95rem;
}

.review-logo {
	max-height: 18px;
	margin-left: 10px;
	vertical-align: middle;
}

.reviews-link-container {
	margin-top: 10px;
}

.lo-reviews-link {
	color: #0066cc;
	text-decoration: none;
	font-weight: 500;
	transition: color 0.2s;
}

.lo-reviews-link:hover {
	color: #0052a3;
	text-decoration: underline;
}

/* Review Cards Container */
.reviewCards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
}

/* For standalone reviews shortcode */
.reviewCards.standalone-reviews {
	max-width: 1200px;
	margin: 20px 0;
}

/* Individual Review Card */
.reviewCard {
	background-color: #f7f7f7;
	padding: 30px;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	gap: 15px;
}

/* Initial Icon */
.initialIcon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: #0066cc;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
}

.initialIcon span {
	color: white;
	font-weight: bold;
	font-size: 1.2rem;
}

/* Review Text */
.review-text {
	font-style: italic;
	line-height: 1.6;
	color: #333;
	flex-grow: 1;
}

/* Customer Name */
.customerName {
	font-weight: bold;
	color: #222;
	margin-top: 10px;
}

/* Tablet Styles */
@media screen and (max-width: 1024px) {
	.agent-reviews-section,
	.location-reviews-section {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	
	.reviewCards {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.reviews-heading {
		font-size: 1.6rem;
	}
}

/* Mobile Styles - Single Column */
@media screen and (max-width: 768px) {
	.agent-reviews-section,
	.location-reviews-section {
		grid-template-columns: 1fr;
		gap: 30px;
		margin: 30px 0;
	}
	
	.reviewCards {
		grid-template-columns: 1fr;
		gap: 15px;
	}
	
	.reviews-info-column {
		text-align: center;
	}
	
	.reviews-heading {
		font-size: 1.4rem;
		margin-bottom: 15px;
	}
	
	.reviews-stats {
		justify-content: center;
	}
	
	.reviewCard {
		padding: 25px;
	}
	
	.initialIcon {
		width: 40px;
		height: 40px;
		margin: 0 auto 15px;
	}
	
	.initialIcon span {
		font-size: 1rem;
	}
	
	.review-text {
		font-size: 0.95rem;
	}
	
	.customerName {
		text-align: center;
		font-size: 0.95rem;
	}
	
	/* Ensure review logo doesn't break on mobile */
	.review-logo {
		display: inline-block;
		margin-top: 5px;
	}
}

/* Extra Small Mobile */
@media screen and (max-width: 480px) {
	.agent-reviews-section,
	.location-reviews-section {
		margin: 20px 0;
	}
	
	.reviews-heading {
		font-size: 1.25rem;
	}
	
	.reviewCard {
		padding: 20px;
	}
	
	.reviews-stats {
		font-size: 0.9rem;
	}
	
	.star-icon {
		width: 18px;
		height: 18px;
	}
	
	.review-text {
		font-size: 0.9rem;
		line-height: 1.5;
	}
}

/* Print Styles */
@media print {
	.agent-reviews-section,
	.location-reviews-section {
		display: block;
	}
	
	.reviewCards {
		display: block;
	}
	
	.reviewCard {
		page-break-inside: avoid;
		margin-bottom: 20px;
	}
	
	.lo-reviews-link {
		text-decoration: underline;
	}
}