.company-info-flex {
    display: flex;
    flex-direction: column;
}

.directions iframe {
    border-radius: var(--radius);
	border: 0px;
}

.full-width-map iframe {
    width: 100%;
	height: 450px;
}

.regular-width-map iframe {
	width: 100%;
	max-width: 400px;
	height: 400px;
}

/* multiple locations */
.company-address {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.company-address>div {
	display: flex;
	flex-direction: column;
	gap: 10px;
}


.company-address-contact {
	display: flex;
	flex-direction: column;
}

/* address */
.company-office {
	font-weight: bold;
}

.company-address p {
	font-size: inherit;
	margin: inherit;
}

/* city list */

.service-areas {
	max-height: 400px;
	overflow-y: auto;
	padding-inline: 10px;
	border-radius: 20px;

	padding-bottom: 100px;
	mask-image: linear-gradient(180deg, #000 60%, transparent);
  -webkit-mask-image: linear-gradient(180deg, #000 60%, transparent);
	scrollbar-color: currentColor transparent;
  scrollbar-width: thin;
}

.cities-list {
    display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr));
	gap: 20px 10px;
    padding-left: 30px;
	margin-bottom: 30px;
}

.cities-list li {
    list-style-type: none!important;
	display: flex;
	gap: 10px;
}

.cities-list li::before {
    content: "\f3c5";
    font-weight: 900;
    color: var(--main);
    font-family: var(--icon);
}

.county-name {
	background: white;
	color: black;
	font-weight: Bold;
	padding: 10px;
	border-radius: var(--radius);
	font-size: 1.3em!important;
}

@media(max-width: 768px) {
	.cities-list {
		grid-template-columns: repeat(auto-fit, minmax(min(120px, 100%), 1fr));
		gap: 10px;
		padding-left: 0;
	}
}


/* reviews */
.reviews-wrapper, .reviews-swiper {
	overflow: visible!important;
}

.review-slide {
	cursor: grab;
	color: var(--main);
	opacity: .5;
	margin-block: auto;
}

.review-content {
	max-width: 900px;
	margin-inline: auto;
	position: relative;
	padding-inline: calc(clamp(1.95rem, 4.34vw - 0.208rem, 5.2rem));
}

.review-slide.swiper-slide-active {
	opacity: 1;
}

.review-quote-open, .review-quote-close {
	position: absolute;
	width: calc(clamp(1.875rem, 4.34vw - 0.208rem, 5rem));
}

.review-quote-open {
	top: 0;
	left: 0;
}

.review-quote-close {
	bottom: 0;
	right: 0;
}

.review-title {
	text-align: center;
	font-weight: bold;
	text-transform: capitalize;
	font-size: var(--fs-md);
}

.review-text >* {
	text-align: center;
	font-size: var(--fs-md)!important;
}

.employee-reviews .review-text >* {
	font-size: var(--fs-mdlg)!important;
	text-wrap: balance;
}

.review-buttons {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin-bottom: 30px;
	color: var(--main);
}

.review-buttons>* {
	cursor: pointer;
	font-size: var(--fs-lg);
}

@media(max-width: 1024px) {
	.review-text >* {
		font-size: var(--fs-sm)!important;
	}
	
	.employee-reviews .review-text >* {
		font-size: var(--fs-sm)!important;
	}
}

/* has icon */
.company-icon {
    display: flex;
    gap: 15px;
    align-items: center;
}

.has-text-align-left .company-icon {
	justify-content: flex-start;
}

.has-text-align-center .company-icon {
	justify-content: center;
}
.has-text-align-right .company-icon {
	justify-content: flex-end;
}

.company-icon i {
    color: currentcolor;
	font-size: 2em;
}

.company-info-line {
    margin: 0!important;
    color: var(--main);
}

/* socials */

.social-links {
	color: inherit;
}