/*
Theme Name: speedflowmarketing
Theme URI: #
Author: speedflowmarketing
Author URI: https://speedflowmarketing.com/
Description: speedflowmarketing
Version: 1.0
*/
/* .homepage--services-grid .single .icon {
max-width: 35px;
max-height: 50px;
} */
.doctors--slider .slider--controls {
	column-gap:20px;
	margin-top:50px;
}
.text.editor > * {
	margin-bottom: 15px;
}
.homepage--services-grid .single .icon img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.homepage--services-grid .single .icon {
	width: 100%;
	height: 260px;
	border-radius: 20px;
	overflow: hidden;
}
body.home .page--about-wrapper .image img {
	object-position:right;
}
.mobile--menu-wrapper {
	display:none;
}
ul:not([class]) ul:not([class]) {
	row-gap:8px;
	margin-top:8px;
}
.homepage--questions-wrapper {
	margin-top:120px;
}
.main-menu li .sub-menu {
	max-height: 500px;
	overflow-x: hidden;
	overflow-y: auto;
}
.homepage--hero-wrapper .inner .title,
.homepage--hero-wrapper .inner .subtitle {
	color: #fff;
}
@media(max-width:1550px) {
	.homepage--questions-wrapper,
	section.homepage--services-wrapper {
		margin-top:60px;
	}
	.single--services-hero .image {
		min-width: 550px;
		max-width: 550px;
	}
	section.single--services-extra {padding-block:
		40px;
		margin-top: 70px;
	}
	body.single-services .contact--form--wrapper {
		margin-block:
			60px;
	}
	section.template--about-extra {padding-block:
		40px;
		margin-block:
			65px;
	}
	section.template--about-extra .text.editor h2, section.template--about-extra .text.editor h3 {
		margin-block:
			35px 12px;
	}
	section.template--about-certificates {
		margin-bottom: 75px;
	}
	.contact-text {
		padding-block:
			25px 30px;
	}
	body.page-template-template-about .contact--form--wrapper {
		margin-bottom: 60px;
	}
	.template--about-certificates__header {
		margin-bottom: 50px;
	}
	section.template--about-extra {margin-block:
		25px;
	}
	.main-menu li .sub-menu li a {
		font-size: 15px;
		padding:
			10px 25px;
	}
	.main-menu li .sub-menu {
		margin-top: 39px;
	}
	.page--gallery-wrapper .carousel--wrapper .slider--controls span {
		right: calc(15% - 35px);
	}
	:root {
		--header_height: 100.867px;
	}
	.homepage--hero-wrapper .image {
		height: 460px;
	}
	section.homepage--about-wrapper .cols {
		padding:35px 45px;
	}
	.template--about-extra .container,
	section.homepage--about-wrapper .container, .page--about-wrapper .container, section.homepage--insurance-wrapper .container {
		max-width: 1080px;
	}
	.h2, h2 {
		font-size: 26px;
		line-height: 38px;
	}
	h1, .h1 {
		font-size: 26px;
		line-height: 38px;
	}
	section.homepage--about-wrapper {
		margin-block:
			-105px 100px;
	}
	.homepage--hero-wrapper .content {
		transform: translate(-50%, calc(-50% - 50px));
	}
	.page--about-wrapper .col--left .image {
		min-width: 430px;
		max-width: 430px;
		height: 430px;
	}
	section.homepage--insurance-wrapper {
		margin-block:
			85px;
	}
	section.homepage--services-wrapper {
		padding-block:40px 50px;
	}
	.post--card .title,
	.h3, h3 {
		font-size: 20px;
		line-height: 30px;
	}
	.homepage--services-grid .single .icon:last-child {
		width: 25px;
		height: 25px;
	}
	.homepage--services-grid .single {padding: 20px 80px 20px 30px;
	}
	.homepage--services-grid .single .title {
		margin-block:
			15px 20px;
	}
	section.homepage--blog-wrapper {
		margin-block:
			65px 80px;
	}
	.homepage--questions-wrapper a.flex {
		padding:12px 20px;
		font-size:18px;
	}
	section.homepage--questions-wrapper h2.section--title {
		margin-bottom: 40px;
	}
	.homepage--questions-wrapper {
		margin-bottom: 100px;
	}

	.header--content {
		padding-block:
			20px;
	}
	body:not(.home) #page {
		margin-top: 135px;
	}
}


@media(max-width:1150px) {
	.mobile--menu-overlay {
		display:none;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:100%;
		background-color:rgba(0, 0, 0, .3);
		cursor:pointer;
		z-index:9;
	}
	html.mobile-menu-visible .mobile--menu-wrapper {
		transform:translateX(0);
	}
	.mobile--menu-wrapper {
		overflow-x:hidden;
		overflow-y:auto;
		display: block;
		position: fixed;
		top: var(--header_height);
		bottom: 0;
		z-index: 11;
		background-color: #fff;
		width: 400px;
		right:0;
		padding:
			40px 20px;
		transform:translateX(100%);
		transition:all linear 500ms;
	}
	.mobile-menu {
		align-items:flex-start;
		row-gap: 20px;
	}
	.mobile-menu li.cta {
		display:none;
	}
	.mobile-menu li a {
		color: var(--antraki);
		font-size: 20px;
		line-height: 1.3;
	}
	.mobile-menu li ul {
		list-style:none;
		padding:15px 0 0 20px;
		row-gap:8px;
		display:none;
	}
	.mobile-menu li.services--button > a {
		display:flex;
		align-items:center;
		column-gap:5px;
	}
	.mobile-menu li.services--button > a::after {
		content: '';
		display: inline-block;
		width: 24px;
		height: 24px;
		background-repeat: no-repeat;
		background-size: 100% 100%;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='m13.292 12l-4.6-4.6l.708-.708L14.708 12L9.4 17.308l-.708-.708z'/%3E%3C/svg%3E");
		transition:all linear 300ms;
	}
	.mobile-menu li.services--button > a:not(.sub--active)::after {
		transform:rotate(90deg);
	}
	.mobile-menu li ul li a {
		font-size:17px;
	}
	.single--services-hero .cols {
		flex-direction:column-reverse;
		align-items:flex-start;
		row-gap:40px;
	}
	.navigation {
		display:none;
	}
	#burger {
		display:flex;
		width:50px;
		min-width:50px;
		height:50px;
		min-height:50px;
		justify-content:center;
		align-items:center;
		cursor:pointer;
	}
	#burger svg {
		height:100%;
		width:100%;
	}
	#burger .line {
		fill: none;
		stroke: #000;
		stroke-width: 2;
		transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
			stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
	}
	#burger .line1 {
		stroke-dasharray: 60 207;
		stroke-width: 2;
	}
	#burger .line2 {
		stroke-dasharray: 60 60;
		stroke-width: 2;
	}
	#burger .line3 {
		stroke-dasharray: 60 207;
		stroke-width: 2;
	}
	html.mobile-menu-visible #burger .line1 {
		stroke-dasharray: 90 207;
		stroke-dashoffset: -134;
		stroke-width: 2;
	}
	html.mobile-menu-visible #burger .line2 {
		stroke-dasharray: 1 60;
		stroke-dashoffset: -30;
		stroke-width: 2;
	}
	html.mobile-menu-visible #burger .line3 {
		stroke-dasharray: 90 207;
		stroke-dashoffset: -134;
		stroke-width: 2;
	}
	section.homepage--about-wrapper .container {
		max-width:calc(100vw - 80px);
	}
	.page--about-wrapper .container, section.homepage--insurance-wrapper .container {
		max-width: 100%;
	}
	.single--services-extra .container,
	.container--full, 
	.container {
		padding-inline: 40px;
	}
	.homepage--services-grid {
		grid-template-columns: repeat(2,1fr);
	}

	.header-logo {
		width: 250px;
	}
	.header--content {
		padding-block:
			16px;
	}
	:root {
		--header_height: 82.7167px;
	}
	.h2, h2,
	h1, .h1 {
		font-size: 24px;
		line-height: 34px;
	}
	.page--breadcrumb {
		flex-wrap: wrap;
	}
}
@media(max-width:991px) {
	section.homepage--about-wrapper .container {
		flex-direction: column;
		row-gap: 30px;
		justify-content: center;
		align-items: center;
		text-align: center;
	}
	section.homepage--about-wrapper .cols .section--title {
		margin-bottom: 20px;
	}
	section.homepage--about-wrapper .cols .cta {
		margin-inline:
			auto;
	}
	.page--about-wrapper .cols {
		text-align:center;
	}
	.page--about-wrapper .cols .cta {
		margin-inline:auto;
	}
	.page--about-wrapper .cols {
		row-gap: 40px;
		flex-direction:column;
	}
	.page--about-wrapper .col--right {
		padding-right: 0;
	}
	.homepage--services-header {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		text-align: center;
		row-gap: 30px;
	}
	.homepage--services-header .section--title {
		margin-bottom: 10px;
	}
	.post--card .image {
		height: 200px;
	}
	.homepage--blog-grid {
		gap:
			14px;
	}



















}

@media(max-width:767px) {
	section.template--about-certificates {
		margin-bottom: 50px;
	}
	.contact-text {
		padding-block:
			10px 15px;
	}

	body:not(.home) #page {
		margin-top: 100px;
	}
	.page--breadcrumb {
		margin-bottom: 30px;
	}
	section.template--about-extra {
		padding-block:
			30px;
	}
	section.template--about-extra .text.editor h2, section.template--about-extra .text.editor h3 {
		margin-block:
			20px 10px;
	}
	.template--about-certificates__grid {
		grid-template-columns: 1fr;
	}

	.contact-text,
	.contact-form-shortcode {
		width:100%;
		max-width: calc(100% - 40px);
	}
	.h2, h2, h1, .h1 {
		font-size: 21px;
		line-height: 30px;
	}
	.homepage--hero-wrapper .content .subtitle {margin-block:
		12px 24px;
	}
	section.homepage--about-wrapper .container {
		max-width: calc(100vw - 40px);
		padding:
			20px;
	}
	section.homepage--about-wrapper {
		margin-bottom: 65px;
	}
	.page--about-wrapper .col--left .image {
		min-width: unset;
		max-width: 100%;
		height: 350px;
	}
	section.homepage--insurance-wrapper {
		margin-block:
			50px;
	}
	.homepage--insurance-wrapper .items {
		grid-template-columns: 1fr;
		row-gap: 15px;
	}
	section.homepage--insurance-wrapper .container .text {
		margin-bottom: 30px;
	}
	.homepage--services-grid {
		grid-template-columns: 1fr;
	}
	.homepage--services-grid .single {
		padding:
			20px;
	}
	.homepage--services-grid .single .icon:last-child {
		display:none;
	}
	.single--services-extra .container,
	.container--full, 
	.container {
		padding-inline: 20px;
	}
	.homepage--blog-grid {
		row-gap: 35px;
		grid-template-columns: 1fr;
	}
	.homepage--questions-wrapper .container > .flex {
		flex-direction: column;
		row-gap: 20px;
	}
	.homepage--questions-wrapper a.flex {
		padding:
			12px 25px;
		font-size: 16px;
		line-height: 1.3;
	}
	.homepage--questions-wrapper a.flex .icon {
		min-width: 36px;
		max-width: 36px;
		min-height: 36px;
		max-height: 36px;
	}
	section.homepage--questions-wrapper h2.section--title {
		margin-bottom: 25px;
	}
	section.homepage--blog-wrapper {
		margin-bottom: 60px;
	}
	.homepage--questions-wrapper {
		margin-bottom: 60px;
	}

	.page--gallery-wrapper a {
		height: 185px;
	}
	.page--gallery-wrapper .carousel--wrapper .slider--controls span svg {
		height:100%;
		width:100%;
	}
	.page--gallery-wrapper .carousel--wrapper .slider--controls span {
		width:40px;
		height:40px;
	}

	.header-logo {
		width: 215px;
	}
	:root {
		--header_height: 82px;
	}
	.page--gallery-wrapper .carousel--wrapper .slider--controls span {
		right: calc(15% + 10px);
	}
	.single--services-hero .image {
		min-width: unset;
		max-width: 100%;
		height: 310px;
	}
	section.single--services-extra .section--title {
		text-align: left;
		margin-bottom: 25px;
	}

	section.single--services-extra {
		padding-block:
			30px;
		margin-top: 30px;
	}
	body.single-services .contact--form--wrapper {
		margin-block:
			35px;
	}

	.mobile--menu-wrapper {
		width:90vw;
	}
}

.homepage--hero-wrapper .image {
	position:relative;
}
.homepage--hero-wrapper .image::before {
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:var(--antraki);
	opacity:.2;
}

/*extra*/

.read-more-blog {
	padding-block:120px 65px;
}
.read-more-blog-wrap  {
	max-width:1200px;
}
.read-more-blog-wrap .section--title {
	margin-bottom:40px;
	text-align:center;
}
.blog-single-read .image a img {
	width:100%;
	height:100%;
	border-radius: 26px;
	transition:all ease-in-out 250ms;
}
.blog-single-read .image a:hover img {
	filter: grayscale(.7);
}
.blog-single-read .section--title {
	color:var(--antraki);
	margin-block:20px;
	transition:all ease-in-out 250ms;
	max-width:450px;
	margin-inline:auto;
}

.blog-single-read .section--title:hover {
	color:var(--antraki);
}
.blog-single-read .image {
	width:500px;
	height:325px;
}
.read-more-blog-wrap .latest-post {
	margin-top:70px;
}
.read-more-blog .slider--controls {
	display:flex;
	justify-content:center;
	align-items:center;
	column-gap:25px;
	margin-top:25px;
}
.read-more-blog .slider--controls span svg {
	transition:all linear 400ms;
}
.read-more-blog .slider--controls .prev svg {
	display:block;
	transform: rotate(180deg) translateY(3px);
}
.read-more-blog .slider--controls .prev:hover svg {
	transform: translateX(-10px) rotate(180deg) translateY(3px);
}
.read-more-blog .slider--controls .next:hover svg {
	transform: translateX(10px);
}
.read-more-blog-wrap .blog-single-read .image {
	width:100%;
}

@media(max-width:1150px){
	.read-more-blog-wrap .latest-post {
		flex-direction: column;
		row-gap: 50px;
		justify-content: center;
		align-items: center;
	}
	.read-more-blog {
		padding-block: 100px;
	}
	.blog-single-read .image {
		width: 100%;
		height: 40svh;
	}

	.read-more-blog-wrap .latest-post {
		margin-top:50px;
	}

}
@media(max-width:767px){
	.read-more-blog {
		padding-block: 50px;
	}

}


.contact-text {
	padding-block:25px !important;
}

/* .page--gallery-wrapper .single img,
.image img {
display:none;
}
.page--gallery-wrapper .single,
.image {
background-color:#008c8c;
}
*/

.faq-section {
	max-width: 800px;
	margin: 70px auto;
}

.faq-item {
	border-bottom: 1px solid #ddd;
	padding: 15px 0;
}
.faq-question .container {
	max-width:800px;
}
.faq-question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	font-weight: bold;
	font-size: 18px;
}

.faq-toggle {
	font-size: 20px;
	transition: transform 0.3s ease;
}

.faq-answer {
	display: none;
	margin-top: 10px;
	font-size: 16px;
	color: var(--antraki);
	line-height: 1.5;
}

.faq-item.active .faq-toggle {
	transform: rotate(45deg);
}
.faq-section h2 {
	text-align:center;
	margin-bottom:30px;
}
@media(max-width:767px) {
	.more--post-list .col--right .title {
		font-size: 15px;
		line-height: 1.4;
	}
	.more--post-image img {
		height: 120px;
	}
	.more--post-list {
		flex-direction: row;
		gap: 25px;
	}
}



ul.services--categories-list {
	gap: 20px;
	flex-wrap:wrap;
}
ul.services--categories-list li {
	border: 1px solid var(--antraki);
	padding: 10px 20px;
	text-transform: uppercase;
	line-height: 1.3;
	cursor:pointer;
	transition:all ease-in-out 250ms;
	font-size: 12px;
}
ul.services--categories-list li.active {
	background-color:var(--antraki);
	color:#fff;
}
@media(max-width:767px) {
	.page--map-wrapper h2 {
    margin-bottom: 10px;
    padding-inline: 10px;
    font-size: 18px;
}
	.page--map-wrapper iframe {
    height: 180px;
	}
	ul.services--categories-list {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
}