/**
* Theme Name:		Dr. Sam Daniel Child
* Author:			Dileep
* Template:			dr-sam-daniel
* Text Domain:		sam-daniel
* Description:		Twenty Twenty-One is a blank canvas for your ideas and it makes the block editor your best brush. With new block patterns, which allow you to create a beautiful layout in a matter of seconds, this theme’s soft colors and eye-catching — yet timeless — design will let your work shine. Take it for a spin! See how Twenty Twenty-One elevates your portfolio, business website, or personal blog.
*/

@font-face {
    font-family: 'Tobias TRIAL';
    src: url('fonts/TobiasTRIAL-Bold.eot');
    src: url('fonts/TobiasTRIAL-Bold.eot?#iefix') format('embedded-opentype'),
        url('fonts/TobiasTRIAL-Bold.woff2') format('woff2'),
        url('fonts/TobiasTRIAL-Bold.woff') format('woff'),
        url('fonts/TobiasTRIAL-Bold.ttf') format('truetype'),
        url('fonts/TobiasTRIAL-Bold.svg#TobiasTRIAL-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Tobias TRIAL';
    src: url('fonts/TobiasTRIAL-Thin.eot');
    src: url('fonts/TobiasTRIAL-Thin.eot?#iefix') format('embedded-opentype'),
        url('fonts/TobiasTRIAL-Thin.woff2') format('woff2'),
        url('fonts/TobiasTRIAL-Thin.woff') format('woff'),
        url('fonts/TobiasTRIAL-Thin.ttf') format('truetype'),
        url('fonts/TobiasTRIAL-Thin.svg#TobiasTRIAL-Thin') format('svg');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Tobias TRIAL';
    src: url('fonts/TobiasTRIAL-Medium.eot');
    src: url('fonts/TobiasTRIAL-Medium.eot?#iefix') format('embedded-opentype'),
        url('fonts/TobiasTRIAL-Medium.woff2') format('woff2'),
        url('fonts/TobiasTRIAL-Medium.woff') format('woff'),
        url('fonts/TobiasTRIAL-Medium.ttf') format('truetype'),
        url('fonts/TobiasTRIAL-Medium.svg#TobiasTRIAL-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Tobias TRIAL';
    src: url('fonts/TobiasTRIAL-Regular.eot');
    src: url('fonts/TobiasTRIAL-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/TobiasTRIAL-Regular.woff2') format('woff2'),
        url('fonts/TobiasTRIAL-Regular.woff') format('woff'),
        url('fonts/TobiasTRIAL-Regular.ttf') format('truetype'),
        url('fonts/TobiasTRIAL-Regular.svg#TobiasTRIAL-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Tobias TRIAL';
    src: url('fonts/TobiasTRIAL-SemiBold.eot');
    src: url('fonts/TobiasTRIAL-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('fonts/TobiasTRIAL-SemiBold.woff2') format('woff2'),
        url('fonts/TobiasTRIAL-SemiBold.woff') format('woff'),
        url('fonts/TobiasTRIAL-SemiBold.ttf') format('truetype'),
        url('fonts/TobiasTRIAL-SemiBold.svg#TobiasTRIAL-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Tobias TRIAL';
    src: url('fonts/TobiasTRIAL-Light.eot');
    src: url('fonts/TobiasTRIAL-Light.eot?#iefix') format('embedded-opentype'),
        url('fonts/TobiasTRIAL-Light.woff2') format('woff2'),
        url('fonts/TobiasTRIAL-Light.woff') format('woff'),
        url('fonts/TobiasTRIAL-Light.ttf') format('truetype'),
        url('fonts/TobiasTRIAL-Light.svg#TobiasTRIAL-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sauce One';
    src: url('fonts/OpenSauceOne-Regular.eot');
    src: url('fonts/OpenSauceOne-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/OpenSauceOne-Regular.woff2') format('woff2'),
        url('fonts/OpenSauceOne-Regular.woff') format('woff'),
        url('fonts/OpenSauceOne-Regular.ttf') format('truetype'),
        url('fonts/OpenSauceOne-Regular.svg#OpenSauceOne-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sauce One';
    src: url('fonts/OpenSauceOne-Medium.eot');
    src: url('fonts/OpenSauceOne-Medium.eot?#iefix') format('embedded-opentype'),
        url('fonts/OpenSauceOne-Medium.woff2') format('woff2'),
        url('fonts/OpenSauceOne-Medium.woff') format('woff'),
        url('fonts/OpenSauceOne-Medium.ttf') format('truetype'),
        url('fonts/OpenSauceOne-Medium.svg#OpenSauceOne-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sauce One';
    src: url('fonts/OpenSauceOne-SemiBold.eot');
    src: url('fonts/OpenSauceOne-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('fonts/OpenSauceOne-SemiBold.woff2') format('woff2'),
        url('fonts/OpenSauceOne-SemiBold.woff') format('woff'),
        url('fonts/OpenSauceOne-SemiBold.ttf') format('truetype'),
        url('fonts/OpenSauceOne-SemiBold.svg#OpenSauceOne-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sauce One';
    src: url('fonts/OpenSauceOne-Light.eot');
    src: url('fonts/OpenSauceOne-Light.eot?#iefix') format('embedded-opentype'),
        url('fonts/OpenSauceOne-Light.woff2') format('woff2'),
        url('fonts/OpenSauceOne-Light.woff') format('woff'),
        url('fonts/OpenSauceOne-Light.ttf') format('truetype'),
        url('fonts/OpenSauceOne-Light.svg#OpenSauceOne-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sauce One';
    src: url('fonts/OpenSauceOne-Bold.eot');
    src: url('fonts/OpenSauceOne-Bold.eot?#iefix') format('embedded-opentype'),
        url('fonts/OpenSauceOne-Bold.woff2') format('woff2'),
        url('fonts/OpenSauceOne-Bold.woff') format('woff'),
        url('fonts/OpenSauceOne-Bold.ttf') format('truetype'),
        url('fonts/OpenSauceOne-Bold.svg#OpenSauceOne-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}



*,
*:before,
*:after {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility !important;
	-webkit-font-smoothing: antialiased;
}

:root {
	--body-font: 'Open Sauce One', sans-serif;
	--heading-font: 'Open Sauce One', sans-serif;
}

.elementor-location-footer .elementor-widget-text-editor p a {
    color: inherit;
}

.content-spacing h5 {
	margin-bottom: 1.5rem;
}

.content-spacing h5 ~ h5 {
	margin-top: 2.5rem;
}

.page, .post {
	margin: 0;
}

.elementor-location-header {
    position: relative;
    z-index: 10;
}

.elementor-nav-menu--toggle .elementor-menu-toggle {
    padding: 0;
    align-items: center;
    height: 1.75rem;
}

.elementor-nav-menu--toggle .elementor-menu-toggle svg {
	display: block;
}

.outer-section {
	padding: 4rem 2rem;
}

@media (max-width: 1024px) {
	.outer-section {
		padding: 3rem 1.5rem;
	}
}
@media (max-width: 1024px) {
	.outer-section {
		padding: 2rem 1rem;
	}
}

/* Elenentor Editor custamize Start */

.elementor-nav-menu--layout-horizontal {
	margin-top: 0 !important;
}

[data-elementor-type="wp-page"] > [data-element_type="container"] {
	padding: 0;
}

[data-elementor-type="wp-page"] > [data-element_type="container"] > .e-con-inner{
	padding: 0;
	max-width: 100%;
}

[data-elementor-post-type=page]>.elementor-section-wrap,
[data-elementor-post-type=page],
[data-elementor-post-type=revision] {
    display: flex;
    flex-direction: column;
    /*overflow: hidden;*/
	gap: 3rem;
}

[data-elementor-post-type=page]>.elementor-element:first-child,
[data-elementor-post-type=page]>.elementor-section-wrap>[data-element_type="container"]:first-child,
[data-elementor-post-type=revision]>.elementor-element:first-child,
[data-elementor-post-type=revision]>.elementor-section-wrap>[data-element_type="container"]:first-child {
    padding: 0;
}

[data-elementor-post-type=page]>.elementor-element:first-child>.e-con-inner,
[data-elementor-post-type=page]>.elementor-section-wrap>[data-element_type="container"]:first-child>.e-con-inner,
[data-elementor-post-type=revision]>.elementor-element:first-child>.e-con-inner,
[data-elementor-post-type=revision]>.elementor-section-wrap>[data-element_type="container"]:first-child>.e-con-inner {
    max-width: 100%
}

[data-elementor-post-type=page]>.elementor-section-wrap>[data-element_type="container"],
[data-elementor-post-type=page]>.elementor-element,
[data-elementor-post-type=revision]>.elementor-section-wrap>[data-element_type="container"],
[data-elementor-post-type=revision]>.elementor-element {
    padding: 3rem 3rem;
}

[data-elementor-post-type=page]>.elementor-section-wrap>[data-element_type="container"]>.e-con-inner,
[data-elementor-post-type=page]>.elementor-element>.e-con-inner,
[data-elementor-post-type=revision]>.elementor-section-wrap>[data-element_type="container"]>.e-con-inner,
[data-elementor-post-type=revision]>.elementor-element>.e-con-inner {
    padding: 0;
	gap: 6rem;
    max-width: 79.25rem;
}

.elementor-add-section {
    width: 100%
}

.title-wrap {
    white-space: nowrap;
}

.elementor-element:has(.full-image-text-section),
.elementor-element:has(.container-fluid) {
    padding: 0 !important;
}

.elementor-element:has(.full-image-text-section) .e-con-inner {
	max-width: 100% !important;
}

.location-section .container,
.elementor-element:has(.location-section) .e-con-inner {
	max-width: 76rem;
}

/* Elenentor Editor custamize End */

html {
	font-size: 16px;
}

body {
	font-family: var(--body-font);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--e-global-color-text);
}

ul,
ol {
	padding-left: 1.5rem;
	margin-left: 0;
	margin-bottom: 0;
}

ul ~ p,
ol ~ p {
    margin-top: 1rem;
}

ul li + li,
ol li + li {
	margin-top: 0.25rem;
}

p {
	margin-top: 0;
	margin-bottom: 1rem;
}

p:last-child {
	margin-bottom: 0;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-family: var(--heading-font);
	font-weight: 500;
	margin-top: 0;
	margin-bottom: 0;
}

@media (max-width: 1023px) {

	h1, .h1 {
		font-size: calc(2rem + 2vw);
		line-height: 1.14;
	}

	h2, .h2 {
		font-size: calc(1.625rem + 1.5vw);
		line-height: 1.14;
	}

	h3, .h3 {
		font-size: calc(1rem + 2vw);
		line-height: 1.2;
	}

	h4, .h4 {
		font-size: calc(1rem + 1.65vw);
		line-height: 1.2;
	}

	h5, .h5 {
		font-size: calc(1rem + 0.75vw);
		line-height: 1.2;
	}

	h6, .h6 {
		font-size: calc(0.75rem + .25vw);
		line-height: 1.2;
	}

}

@media (min-width: 1024px) and (max-width: 1679px) {

	h1, .h1 {
		font-size: 3.4375rem;
		line-height: 1.2;
	}

	h2, .h2 {
		font-size: 3rem;
		line-height: 1.18;
	}

	h3, .h3 {
		font-size: 2.5rem;
		line-height: 1.2;
	}

	h4, .h4 {
		font-size:  1.75rem;
		line-height: 1.14;
	}

	h5, .h5 {
		font-size: 1.5rem;
		line-height: 1.34;
	}

	h6, .h6 {
		font-size: 1rem;
		line-height: 1.6;
	}

}

@media (min-width: 1680px) {

	h1, .h1 {
		font-size: 3.4375rem;
		line-height: 1.2;
	}

	h2, .h2 {
		font-size: 3rem;
		line-height: 1.18;
	}

	h3, .h3 {
		font-size: 2.5rem;
		line-height: 1.2;
	}

	h4, .h4 {
		font-size:  1.75rem;
		line-height: 1.14;
	}

	h5, .h5 {
		font-size: 1.5rem;
		line-height: 1.34;
	}

	h6, .h6 {
		font-size: 1rem;
		line-height: 1.6;
	}

}

.block-description h1,
.block-description h2,
.block-description h3,
.block-description h4,
.block-description h5,
.block-description h6 {
	font-family: var(--body-font);
}


/* Global Class css */

.lead {
	font-size: 1.125rem;
}

.container {
	max-width: 78rem; /*1268px*/
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.container-fluid {
	max-width: 100%;
}

.container-md {
    /*max-width: 74rem;*/
}

.container-sm {
    max-width: 62rem;
}

.gap-1 {
	display: grid;
	gap: 0.25rem;
}

.gap-2 {
	display: grid;
	gap: 0.5rem;
}

.gap-3 {
	display: grid;
	gap: 0.75rem;
}

.gap-4 {
	display: grid;
	gap: 1rem;
}

.gap-5 {
	display: grid;
	gap: 1.25rem;
}

.gap-6 {
	display: grid;
	gap: 1.5rem;
}

.gap-7 {
	display: grid;
	gap: 1.75rem;
}

.gap-8 {
	display: grid;
	gap: 2rem;
}

.gap-9 {
	display: grid;
	gap: 2.25rem;
}

.gap-10 {
	display: grid;
	gap: 2.5rem;
}

.gap-11 {
	display: grid;
	gap: 2.75rem;
}

.gap-12 {
	display: grid;
	gap: 3rem;
}

.gap-13 {
	display: grid;
	gap: 3.25rem;
}

.gap-14 {
	display: grid;
	gap: 3.5rem;
}

.gap-15 {
	display: grid;
	gap: 3.75rem;
}

.gap-16 {
	display: grid;
	gap: 4rem;
}

.gap-17 {
	display: grid;
	gap: 4.25rem;
}

.gap-18 {
	display: grid;
	gap: 4.5rem;
}

.gap-19 {
	display: grid;
	gap: 4.75rem;
}

.gap-20 {
	display: grid;
	gap: 5rem;
}

.gutters-1 { margin: -0.25rem; }
.gutters-1 > div { padding: 0.25rem; }

.gutters-2 { margin: -0.5rem; }
.gutters-2 > div { padding: 0.5rem; }

.gutters-3 { margin: -.75rem; }
.gutters-3 > div { padding: .75rem; }

.gutters-4 { margin: -1rem; }
.gutters-4 > div { padding: 1rem; }

.gutters-5 { margin: -1.25rem; }
.gutters-5 > div { padding: 1.25rem; }

.gutters-6 {margin: -1.5rem; }
.gutters-6 > div { padding: 1.5rem; }

.gutters-7 {margin: -1.75rem; }
.gutters-7 > div { padding: 1.75rem; }

.gutters-8 {margin: -2rem; }
.gutters-8 > div { padding: 2rem; }

.gutters-9 { margin: -2.25rem; }
.gutters-9 > div { padding: 2.25rem; }

.gutters-10 { margin: -2.5rem; }
.gutters-10 > div { padding: 2.5rem; }

.gutters-11 { margin: -2.75rem; }
.gutters-11 > div { padding: 2.75rem; }

.gutters-12 { margin: -3rem; }
.gutters-12 > div { padding: 3rem; }

.gutters-13 { margin: -3.25rem; }
.gutters-13 > div { padding: 3.25rem; }

.gutters-14 {margin: -3.5rem; }
.gutters-14 > div { padding: 3.5rem; }

.gutters-15 {margin: -3.75rem; }
.gutters-15 > div { padding: 3.75rem; }

.gutters-16 {margin: -4rem; }
.gutters-16 > div { padding: 4rem; }

.row {
	display: flex;
	flex-wrap: wrap;
}

.col {
	flex: 1 1 0%;
}

.col-3 {
	min-width: 25%;
	max-width: 25%;
}

.col-4 {
	min-width: 33.33%;
	max-width: 33.33%;
}

.col-5 {
	min-width: 41.6666667%;
	max-width: 41.6666667%;
}

.col-6 {
	min-width: 50%;
	max-width: 50%;
}

.col-7 {
	min-width: 58.3333333%;
	max-width: 58.3333333%;
}

.col-12 {
	min-width: 100%;
	max-width: 100%;
}

.align-items-center {
	align-items: center;
}

.align-items-end {
	align-items: end;
}

.align-items-start {
	align-items: start;
}

.text-align-left {
	text-align: center;
}

.text-align-center {
	text-align: center;
}

.text-align-right {
	text-align: center;
}

.text-align-center .custom-divider {
	margin-left: auto;
	margin-right: auto;
}

.text-align-right .custom-divider {
	margin-left: auto;
}

.image-direction-right {
    flex-direction: row-reverse;
}

.dr-btn {
    padding: 1rem 2rem;
    line-height: 1.1;
    font-size: 1.125rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .25s ease;
    display: inline-flex;
    border-radius: 10rem;
    border: 1px solid transparent;
    position: relative;
    overflow: hidden;
    text-decoration: none;
    display: inline-flex;
    gap: 0.5rem;
}

.block-wrapper .block-image {
	line-height: 0;
}

.block-wrapper .block-image img {
	width: 100%;
}

.image-text-section .block-wrapper > .row {
    align-items: stretch;
}

.image-text-section .block-wrapper > .row .summary {
    align-self: center;
}

.image-text-section .block-wrapper .block-image img { 
    border-radius: 0.75rem;
}

.image-text-section .block-wrapper .block-image {
    position: sticky;
    top: 2rem;
}

.custom-divider {
    width: 2.5rem;
    height: 3px;
    background-color: var(--e-global-color-primary);
    margin-top: -.25rem;
    margin-bottom: .5rem;
}

/* Button Dark */

.dr-btn-dark {
	background-color: var(--e-global-color-accent);
	background: linear-gradient(90deg,#1874B6 0%, #28BFA6 100%);
	border-color: #07395d;
	color: var(--e-global-color-7c421bb);
}

.dr-btn-dark:hover,
.dr-btn-dark:focus {
	background-color: var(--e-global-color-8800457);
	background: linear-gradient(90deg,#28BFA6 0%, #1874B6 100%);
	border-color: var(--e-global-color-accent);
	color: var(--e-global-color-7c421bb);
}

/* Button Light */

.dr-btn-light {
	background-color: var(--e-global-color-7c421bb);
	border-color: var(--e-global-color-7c421bb);
	color: var(--e-global-color-text);
}

.dr-btn-light:hover {
	background-color: var(--e-global-color-8800457);
	border-color: var(--e-global-color-7c421bb);
	color: var(--e-global-color-7c421bb);
}

/* Button Dark Outline */

.dr-btn-outline-dark {
	background-color: var(--e-global-color-8800457);
	border-color: var(--e-global-color-accent);
	color: var(--e-global-color-accent);
}

.dr-btn-outline-dark:hover {
	background-color: var(--e-global-color-accent);
	border-color: var(--e-global-color-accent);
	color: var(--e-global-color-7c421bb);
}

/* Button Light Outline */

.dr-btn-outline-light {
	background-color: var(--e-global-color-8800457);
	border-color: var(--e-global-color-7c421bb);
	color: var(--e-global-color-7c421bb);
}

.dr-btn-outline-light:hover {
	background-color: var(--e-global-color-7c421bb);
	border-color: var(--e-global-color-7c421bb);
	color: var(--e-global-color-text);
}

/* Header */

.navigation-mobile .sub-menu .menu-item:hover>.elementor-sub-item,
.navigation-mobile .sub-menu .menu-item:hover>.elementor-item,
.navigation-mobile .sub-menu .menu-item.current-menu-item>.elementor-item {
    text-decoration: underline;
    text-underline-offset: 4px;
}

.navigation-mobile .elementor-nav-menu--dropdown.elementor-nav-menu__container {
	margin-top: 0;
}

.navigation-mobile .sub-menu {
    padding: .5rem 1rem;
    margin-bottom: .5rem;
}

.navigation-mobile .sub-menu .sub-menu {
    padding-left: 2.5rem;
    position: relative;
    margin-bottom: 0
}

.navigation-mobile li a .sub-arrow {
    margin-left: auto;
}

.navigation-mobile li a .sub-arrow svg {
	fill: var(--e-global-color-secondary);
}

.navigation-mobile li a.highlighted .sub-arrow {
    transform: rotateX(180deg)
}

.navigation-mobile .sub-menu li a {
    border: none !important;
    padding: .5rem !important;
    font-size: 1rem !important;
}

.navigation-mobile .sub-menu li {
    border-bottom-width: 0 !important
}


/* Banner Design */

.main-banner {
	min-height: 774px;
	display: flex;
	align-items: center;
	position: relative;
	z-index: 1;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding: 2rem;
} 

.banner-title span {
    font-size: 45%;
    font-weight: 300;
    display: block;
}

.level-two .banner-title span,
.level-three .banner-title span {
	font-size: 45%;
	margin-top: 0.5rem;
}

.banner-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
}

/* Label One */

.level-one {
    background-size: cover;
    background-position: center center;
}

.level-one .banner-image {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 100%;
}

.level-one .banner-image img {
    height: 100% !important;
    object-fit: cover;
    width: 100%;
    display: block;
}

.level-one .banner-content {
	display: flex;
	align-items: center;
	justify-content: end;
}

.level-one .banner-content-inner {
	max-width: 51%;
	flex: auto;
}



.level-one .banner-description {
    max-width: 34rem;
}

.level-one .banner-description h5 {
	font-family: var(--body-font);
	margin-bottom: 1.25rem;
}

/* Lavel Two */

.level-two .banner-content {
	max-width: 35rem;
	position: relative;
	z-index: 1;
}

.level-two .banner-image {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 48%;
}

.level-two .banner-image img {
    height: 100% !important;
    object-fit: cover;
    width: 100%;
}

.level-three {
	min-height: auto;
	padding-top: 7rem;
	padding-bottom: 7rem;
}

.level-three:before {
	width: 50%;
}

.level-three .banner-content {
	max-width: 48%;
	position: relative;
	z-index: 1;
}

.level-three .banner-title,
.level-three .banner-description {
	max-width: 80%;
}

.level-three .banner-image {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 50%;
}

.level-three .banner-image img {
    height: 100% !important;
    object-fit: cover;
    width: 100%;
    display: block;
}

.level-three {
    background-size: 50%;
    background-position: right;
}

/* Text Box Image */

/*.textbox-image .row {
	align-items: center;
}

.textbox-image .block-wrapper {
    padding: 3rem 3.25rem;
    border-radius: .75rem;
}

.block-icon {
	line-height: 0;
}

.block-icon svg,
.block-icon i {
	font-size: 5.5rem;
    width: 5.5rem;
    height: 5.5rem;
}

.textbox-image .block-content {
    padding: 1.25rem 4rem;
}

.textbox-image .block-title {
	font-family: var(--body-font);
}

.textbox-image .block-description ul {
	font-size: 1.25rem;
	text-align: left;
	margin-bottom: 1.5rem;
}

.textbox-image .block-description ul li + li {
	margin-top: 1rem;
}

.textbox-image .block-description p {
	font-size: 1.25rem;
}*/

/* In association with */

.brands-section {
    padding-top: 2rem;
    padding-bottom: 2rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.brand-list .swiper-wrapper {
	align-items: center;
}

.logo-images {
	overflow: hidden;
}

.logo-image-item img {
    margin: auto;
    display: block;
    max-height: 3.75rem;
}
.logo-images .logo-image-item {
    width: 188px;
    margin-right: 24px;
}

/* Author Section */

/*.elementor-element:has(.author-section) {
	padding: 0 !important;
}

.elementor-element:has(.author-section) .e-con-inner {
	max-width: 100%;
}

.author-section {
	height: 100vh;
	padding: 6.5rem 4rem;
	display: flex;
	align-items: center;
	text-align: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.author-section .block-title:after {
	content: "";
	display: block;
	margin-left: auto;
	margin-right: auto;
	height: 3px;
	width: 2.5rem;
	margin-top: 2rem;
	background-color: var(--e-global-color-secondary);
	border-radius: 1rem;
}

.author-section .block-description p {
	font-size: .75rem;
}*/

/* Icon Boxes */

/*.icon-boxes-icon {
	margin-bottom: 2rem;
}

.icon-boxes-icon svg,
.icon-boxes-icon i {
    width: 4.625rem;
    height: 4.625rem;
    font-size: 4.625rem;
    display: block;
}

.icon-boxes-content .icon-boxes-title {
    font-family: var(--body-font);
     min-height: 5rem;
}

.icon-boxes-card .dr-btn {
    border: none;
    background-color: transparent;
    padding: .125rem 0;
    border-radius: 0;
    border-bottom: 2px solid #A091EB;
    color: #A091EB;
    font-size: 1.125rem;
    font-weight: 600;
}*/

/*.icon-boxes-card .collapse-content .dr-btn {
	padding: 0.5rem 0;
	border: none;
    background-color: transparent;
    border-radius: 0;
    font-size: 1.125rem;
    font-weight: 600;
	border-top: 2px solid;
    color: #A091EB;
	width: 70%;
}*/

/*.collapse-description {
	display: none;
	margin-top: 1rem;
}

.collapse-description {}*/

/* number-box-title */

/*.number-box-title {
	margin-top: .75rem;
	font-family: var(--body-font);
	min-height: 5rem;
}

.number-box-description {
	margin-top: 1.25rem;
}

.col:has(.number-box-card):last-child .number-box-card:after {
	display: none;
}

.number-box-card {
    height: 100%;
}

.number-box-card:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: -3rem;
    width: 2px;
    background-color: #EFF2FF;
}*/

/* Book an Appointment  */

.book-appointment-section .container {
	max-width: 510px;
}

.book-appointment-section .block-wrapper {
    text-align: center;
    padding: 3rem 3rem;
    background-color: #07395D;
    border-radius: 1.25rem;
    margin-top: 4.25rem;
}

.book-appointment-section .block-description {
	font-size: 0.875rem;
 }

.book-appointment-section .block-title {
	max-width: 80%;
	margin-left: auto;
	margin-right: auto; 
}

.book-appointment-section .block-image {
	width: 11.375rem;
	height: 11.375rem;
	border-radius: 100%;
	overflow: hidden;
	margin: auto;
	margin-top: -7.25rem;
}

.book-appointment-section .block-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dr-button-group {
    display: inline-flex;
    gap: 1.5rem;
}

.book-appointment-section .dr-button-group {
    justify-content: center;
    margin-top: 1rem;
    margin-bottom: 0.625rem;
}

.book-appointment-section .block-wrapper .block-content {
    max-width: 70rem;
    margin: auto;
}









.background-block .block-wrapper {
    padding: 1.75rem;
    border-radius: .75rem;
    background-size: cover;
}

.background-block .block-wrapper .row {
	align-items: center;
}

.background-block .block-wrapper .thumb-column {
	max-width: 45%;
}

.background-block .block-content {
    padding: 2rem 3rem;
}

.background-block .block-image img {
    border-radius: 0.75rem;
}

/**/

/*.text-section .block-wrapper {
	max-width: 80rem;
	margin-right: auto;
	margin-left: auto;
}

.text-section .block-wrapper .block-description {
	max-width: 67rem;
	margin-left: auto;
	margin-right: auto;
}

.text-section .custom-divider {
	margin-top: -.5rem;
	margin-bottom: -.5rem;
}*/

/* image-text-section */

/*.image-text-section {
    position: relative;
    z-index: 1;
}



.image-text-section .thumb {
    min-width: 41.625%;
    max-width: 41.625%;
}

.image-text-section .summary {
    max-width: 58.375%;
    min-width: 58.375%;
}*/

/* Areas of expertise */

/*.expertise-section {
	padding: 12rem 4rem 8rem !important;
	margin-top: -11rem !important;
}

.expertise-section .e-con-inner {
	gap: 5rem !important;
}

.elementor-element .elementor-widget-n-tabs .e-n-tabs {
	gap: 4rem;
}

.elementor-element .elementor-widget-n-tabs .e-n-tabs .e-n-tabs-heading {
	gap: 1.875rem;
}

.elementor-element .elementor-widget-n-tabs .e-n-tabs .e-n-tabs-heading .e-n-tab-title {
    background-color: transparent;
    cursor: pointer;
    border: 2px solid var(--e-global-color-accent);
    font-family: var(--e-global-typography-text-font-family);
    font-size: 1.125rem;
    color: var(--e-global-color-accent);
    border-radius: 10rem;
    padding: 1rem 1.5rem;
    margin: 0 !important;
}

.elementor-element .elementor-widget-n-tabs .e-n-tabs .e-n-tabs-heading .e-n-tab-title .e-n-tab-title-text {
    font-size: inherit;
}

.elementor-element .elementor-widget-n-tabs .e-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected="true"] {
    background-color: var(--e-global-color-primary) !important;
}

.elementor-element .e-n-tabs-content .e-con {
    padding: 0;
}*/

/* FAQ */

.elementor-element:has(.faq-section) .e-con-inner > .elementor-element {
	width: 100%;
}

.faq-section {}

.faq-section .container {
	max-width: 49.75rem;
}

.faq-page .faq-right-column {
	margin-top: 0;
}

.faq-left-column { 
	text-align: center;
}

.accordion-item {
    border-bottom: 1px solid;
}

.accordion-title {
    padding: 1rem 0;
    font-size: 1.25rem;
    font-family: var(--body-font);
    cursor: pointer;
    position: relative;
    padding-right: 2rem;
}

.accordion-title:after {
    content: "";
    position: absolute;
    right: 0;
    line-height: .9;
    width: 1.5rem;
    height: 2px;
    background-color: #000;
    top: 50%;
    transform: translateY(-50%);
}

.accordion-title:before {
    content: "";
    height: 1.5rem;
    width: 2px;
    top: 50%;
    background-color: #000;
    position: absolute;
    right: 11px;
    transform: translateY(-50%);
}

.active .accordion-title:before {
	display: none;
}

.accordion-content {
	padding-bottom: 1.5rem;
}

/* Location Maps */


.location-section {}

.location-box {
	    display: flex;
    gap: 1rem;
    align-items: center;
}

.location-body {
    flex: 1 1 auto;
}

.location-title {
    font-weight: 500;
}

.location-list {
    font-size: 0.75rem;
    list-style: none;
    padding: 0;
	display: grid;
	gap: 2px;
}

.listing-item {
	display: flex;
	gap: 0.5rem;
	margin-top: 0;
}

.listing-item i {
	margin-top: 0.25rem;
}

.maps {
    width: 10rem;
    border-radius: .75rem;
    overflow: hidden;
}

.maps iframe {
    aspect-ratio: 3/2;
    display: block;
    height: 100%; 
}

.listing-heading .listing-title {
	max-width: 40rem;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.listing-wrapper {
    max-width: 90rem;
    margin-left: auto;
    margin-right: auto;
}

.listing-card {
	position: relative;
	padding-left: 2rem;
	height: 100%;
}

.listing-card:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 2px;
    background-color: #EFF2FF;
}

.listing-description {
    font-size: 1.25rem;
}

.listing-description ul li + li {
    margin-top: 1.25rem;
}

/*  */

.contact-section {
    margin-top: 6.5rem;
}

.contact-section > .container {
	max-width: 66.25rem;
}

.contact-section .block-content {
    padding: 5rem;
    text-align: center;
    border-radius: 1.25rem;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.contact-section .block-image {
	margin-top: -11.5rem;
	margin-bottom: 2rem;
}

.contact-section .block-image img {
    width: 202px;
    height: 202px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.contact-section .block-content .block-title {
    margin-bottom: 2rem;
}

.shortcode-content .elementor-widget-form .elementor-field-group input.elementor-field,
.shortcode-content .elementor-widget-form .elementor-field-group .elementor-select-wrapper select,
.shortcode-content .elementor-widget-form .elementor-field-group textarea.elementor-field-textual {
	font-size: 1rem;
	padding: 0.875rem 1.25rem;
	line-height: 1.6;
	border: none;
	box-shadow: none;
	border-radius: .5rem;
	font-family: var(--body-font);
}

.shortcode-content .elementor-widget-form .elementor-field-group .elementor-field-label {
    display: block;
    margin-bottom: 0.375rem;
    color: #FFF;
}

.shortcode-content .elementor-widget-form .elementor-field-group .elementor-select-wrapper .select-caret-down-wrapper {
	display: none;
}

.shortcode-content .elementor-widget-form .elementor-field-group .elementor-button {
    width: auto;
	font-size: 1.125rem;
	padding: 0.75rem 2.5rem;
	line-height: 1.6;
	border: none;
	box-shadow: none;
	border-radius: 5rem;
	font-family: var(--body-font);
    max-width: fit-content;
    font-weight: 600;
    background: linear-gradient(90deg,#1874B6 0%, #28BFA6 100%);
	color: var(--e-global-color-7c421bb);
}

.contact-section .block-description {
    text-align: center;
    margin-top: 3rem;
}

.contact-section .block-description h4 {
    margin-bottom: 0.5rem;
    font-weight: 400;
}

.contact-section .block-description p a {
	color: inherit;
}

.block-button-wrapper {
    margin-top: 1rem;
    display: flex;
    gap: 1.5rem;
}

.block-button {
    gap: 1rem;
    padding: 0 !important;
    border: none;
    align-items: center;
    border-radius: 0;
    color: var(--e-global-color-2c2096d);
}

.block-button:hover {
	color: var(--e-global-color-2c2096d);
	text-decoration: underline;
	text-underline-offset: .25rem;
}

.block-button svg,
.block-button i {
    font-size: 2.75rem;
    width: 2.75rem;
    height: 2.75rem;
}































.image-content-wrapper-block {
	border-radius: 12px;
    background-color: #C2D5EB;
    padding: 2.125rem;
    position: relative;
}

.heading {
    text-align: center;
    margin-bottom: 3.25rem;
    margin-left: auto;
    margin-right: auto;
}

.image-content-wrapper-block .swiper-carousel-widget {
	overflow: hidden;
}

.image-content-slider-card {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.image-content-card-image {
    width: 41.75%;
    border-radius: 0.5rem !important;
}

.image-content-card-description {
    border-top: 1px solid;
    padding-top: 1rem;
}

.image-content-card-link {
    width: 20px;
    display: block;
}

.image-content-card-overlay {
    width: 58.25%;
    padding: 0 4rem;
    margin-bottom: 3.5rem;
}


.image-content-wrapper-block .swiper-button-prev {
    left: calc(41.75% + 4.375rem);
    bottom: 2.125rem;
    top: auto;
}

.image-content-wrapper-block .swiper-button-next {
    left: calc(41.75% + 8.375rem);
    bottom: 2.125rem;
    top: auto;
}

.image-content-wrapper-block .swiper-button-prev,
.image-content-wrapper-block .swiper-button-next {
    width: 50px;
    height: 50px;
    padding: 1rem;
    background-color: #FFF;
    color: #000;
    border-radius: 50%;
}

.image-content-wrapper-block .swiper-button-prev:after,
.image-content-wrapper-block .swiper-button-next:after {
    font-size: 1.25rem;
    color: inherit;
}

.full-image-text-section {
	background-size: cover;
}

.full-image-text-section .block-description ul {
	list-style: none;
}

.full-image-text-section .block-description ul li {
	position: relative;
}

.full-image-text-section .block-description ul li:before {
    content: "";
    background-image: url('data:image/svg+xml,<svg width="10" height="12" viewBox="0 0 10 12" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M0.75 7.27637L3.75 10.2763L9.25 0.75" stroke="black" stroke-width="1.5" stroke-linecap="round"/> </svg>');
    width: 1rem;
    height: 1rem;
    position: absolute;
    left: -22px;
    top: 2px;
    background-repeat: no-repeat;
    background-position: center center;
}

.full-image-text-section .block-content {
    max-width: 40rem;
    padding: 3rem 3rem;
}

.full-image-text-section .image-direction-right .block-content {
	margin-right: 2rem;
	margin-left: auto;
}


.image-boxes-title a {
	color: inherit;
}

.image-boxes-image img {
	display: block;
	width: 100%;
}

.image-boxes-button {
	margin-top: 3rem;
	text-align: center;
}

.no-gap .e-con-inner {
    gap: 0 !important;
}


.dr-button-group {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 1.5rem;
}







.text-slider-section {
    padding: 1rem;
}

.text-slider-section .swiper-slide {
    width: auto;
}

.text-slider-section .block-title {
	font-size: 1.75rem;
}



/* Testimonial */

.testimonial-card {
    display: grid;
    gap: 1.25rem;
    padding: 2.25rem;
    border-radius: 1rem;
}

.testimonial-rating {
    font-size: 1.25rem;
    display: flex;
    gap: 0.125rem;
}

.testimonial-text {
	font-size: 1.25rem;
}

.testimonial-footer {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.testimonial-body {
	flex: 1 1 0%;
}

.testimonial-img {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 100%;
    overflow: hidden;
}

.testimonial-img img {
	height: 100% !important;
	width: 100%;
	object-fit: cover;
}

.client-name {
    font-family: var(--body-font);
    font-weight: 500;
    font-size: 1rem;
}


/* @media screens */
 

@media (min-width: 768px) {

 

}


@media (min-width: 992px) {

 

}

@media (min-width: 1366px) and (max-width: 1600px) {

	/* Default Start */
  
}


@media (max-width: 1023px) {


	[data-elementor-post-type=page]>.elementor-section-wrap,
	[data-elementor-post-type=page],
	[data-elementor-post-type=revision] {
	    gap: 0rem;
	}

	[data-elementor-post-type=page]>.elementor-section-wrap>[data-element_type="container"],
	[data-elementor-post-type=page]>.elementor-element,
	[data-elementor-post-type=revision]>.elementor-section-wrap>[data-element_type="container"],
	[data-elementor-post-type=revision]>.elementor-element {
	    padding: 2rem 1.5rem;
	}

	[data-elementor-post-type=page]>.elementor-section-wrap>[data-element_type="container"]>.e-con-inner,
	[data-elementor-post-type=page]>.elementor-element>.e-con-inner,
	[data-elementor-post-type=revision]>.elementor-section-wrap>[data-element_type="container"]>.e-con-inner,
	[data-elementor-post-type=revision]>.elementor-element>.e-con-inner {
	    gap: 2rem;
	}

	.gutters-2 { margin: -1rem; }
	.gutters-2 > div { padding: 1rem; }

	.gutters-7 {margin: -1rem; }
	.gutters-7 > div { padding: 1rem; }

	.gutters-8 {margin: -1rem; }
	.gutters-8 > div { padding: 1rem; }

	.gutters-9 { margin: -1rem; }
	.gutters-9 > div { padding: 1rem; }

	.gutters-10 { margin: -1rem; }
	.gutters-10 > div { padding: 1rem; }

	.gutters-11 { margin: -1rem; }
	.gutters-11 > div { padding: 1rem; }

	.gutters-12 { margin: -1rem; }
	.gutters-12 > div { padding: 1rem; }

	.gutters-13 { margin: -1rem; }
	.gutters-13 > div { padding: 1rem; }

	.gutters-14 {margin: -1rem; }
	.gutters-14 > div { padding: 1rem; }

	.gutters-15 {margin: -1rem; }
	.gutters-15 > div { padding: 1rem; }

	.gutters-16 {margin: -1rem; }
	.gutters-16 > div { padding: 1rem; }

	/* grid */

	.col-3 {
		min-width: 50%;
		max-width: 50%;
	}

	/* Banner */

	
 
}



@media (min-width: 768px) {
	.half-columns .col-12 {
	    min-width: 50%;
	    max-width: 50%;
	}
	.contact-section .block-description p {
	    font-size: 1.25rem;
	}

	.shortcode-content .elementor-form-fields-wrapper {
		display: block;
		column-count: 2;
		column-gap: 0;
		break-inside: avoid;
		page-break-inside: avoid;
		-webkit-column-break-inside: avoid;
		width: 100%;
		max-width: 100%;
		margin-bottom: 0;
	}

	.shortcode-content .elementor-form-fields-wrapper .elementor-column {
	    break-inside: avoid;
	    page-break-inside: avoid;
	    -webkit-column-break-inside: avoid;
	}
}

@media (max-width: 767px) {

	/* grid */

	.col-3 {
		min-width: 100%;
		max-width: 100%;
	}
	.col-6 {
		min-width: 100%;
		max-width: 100%;
	}

	.lead {
	    font-size: 1rem;
	}

	.heading {
		margin-bottom: 2rem;
	}

	/* Button */

	.banner-buttons,
	.dr-button-group {
		gap: 0.5rem;
	}
	.dr-btn {
	    padding: 0.75rem 1.25rem;
	    font-size: 0.875rem;
	}

	/* Level one */
	.level-one {
		min-height: 0;
		flex-direction: column;
		padding: 0;
	}
	.level-one .banner-image {
		position: relative;
	}
	.level-one .banner-content {
		padding: 2rem 1.5rem;
	}
	.level-one .banner-content-inner {
		max-width: 100%;
	}
	/* Level two */

	.level-two {
		flex-direction: column;
		min-height: 0;
		padding: 0;
	}
	.level-two .banner-image {
		width: 100%;
		position: relative;
	}
	.level-two .banner-image img {
		display: block;
	}
	.level-two .banner-content {
		padding: 2rem 1.5rem;
	}
	/* level three */

	.level-three {
		flex-direction: column;
		min-height: 0;
		padding: 0;
	}
	.level-three .banner-image {
		width: 100%;
		position: relative;
	}
	.level-three .banner-content {
		max-width: 100%;
		padding: 2rem 1.5rem;
	}
	.level-three .banner-title,
	.level-three .banner-description {
		max-width: 100%;
	}

	/* Full contrent */

	.full-image-text-section .block-content {
		padding: 2rem 1.5rem;
		max-width: 100%;
	}

	.full-image-text-section .image-direction-right .block-content {
		margin-right: 0;
	}	

	/* FAQ */

	.accordion-title {
		font-size: 1rem;
	}
	.accordion-content {
		font-size: 0.875rem;
	}
	.accordion-title:after {
		width: 1rem;
	}
	.accordion-title:before {
		height: 1rem;
		right: 7px;
	}

	/* Book an appointment */

	.book-appointment-section .block-wrapper {
		padding: 2rem 1.5rem;
	}
	.book-appointment-section .block-image {
		margin-top: -6.25rem;
		width: 8rem;
		height: 8rem;
	}
	.image-boxes-button {
		margin-top: 2rem;
	}

	/* Backgronid block */
	.background-block .block-wrapper {
		padding: 1.5rem;
	}
	.background-block .block-content {
		padding: 0;
	}
	.background-block .block-wrapper .col {
		min-width: 100%;
		max-width: 100%;
	}
	
	/* Block slider */

	.image-content-wrapper-block {
		padding: 1.5rem;
	}
	.image-content-slider-card {
	    gap: 2rem;
	}
	.image-content-card-image {
		width: 100%;
	}
	.image-content-card-overlay {
		width: 100%;
		padding: 0;
	}
	.image-content-wrapper-block .swiper-button-prev,
	.image-content-wrapper-block .swiper-button-next {
		width: 40px;
	    height: 40px;
	    padding: 0rem;
	    bottom: 1.5rem;
	}

	/* COntact  */
	.location-section .col-12 {
		min-width: 50%;
    	max-width: 50%;
	}
	.location-box {
		flex-direction: column;
	}
	.maps, .location-body {
		width: 100%;
	}
	.contact-section .block-content {
	    padding: 2rem 1.5rem;
	}
	.contact-section .block-image img {
		width: 8rem;
		height: 8rem;
	}
	.contact-section .block-image {
	    margin-top: -6rem;
	}
	.shortcode-content .elementor-widget-form .elementor-field-group textarea.elementor-field-textual {
		height: 100px;
	}
}

.banner-content-inner .banner-title, 
.banner-content-inner .banner-description {
    position: relative;
    z-index: 2;
}