:root {
	--primary-color: #111;
	--light-gray: #999;
	--heading-font: "euclid_circular_abold";
	--body-font: "euclid_circular_aregular";
	--body-font-medium: "euclid_circular_amedium";
	--body-font-bold: "euclid_circular_abold";
	--body-font-light: "euclid_circular_alight";
}
.relative,
body,
html {
	position: relative;
}

body,
ul {
	margin: 0;
	padding: 0;
}
html {
	max-width: 100%;
	overflow-y: scroll;
	overflow-x: hidden;
}

body {
	font-weight: normal;
	line-height: 1.4 !important;
	font-size: 0.9rem;
	font-family: var(--body-font-light);
	color: var(--bs-secondary);
	background: var(--bs-white);
	overflow: hidden;
}

html {
	height: 100%;
}

ul {
	list-style: none;
}

.btn,
a,
button {
	display: inline-block;
	outline: 0 !important;
	box-shadow: none !important;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	-ms-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.btn,
a,
a:focus,
a:hover,
button {
	text-decoration: none;
	outline-style: none;
}
.btn {
	padding: 10px 0;
	font-family: var(--body-font-medium);
	text-transform: uppercase;
	border-radius: 0;
	letter-spacing: 2px;
	font-size: 0.8rem;
	border-bottom: #ddd 1px solid;
	position: relative;
}
.btn::before {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 1px;
	background: var(--bs-dark);
	content: "";
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	-ms-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.btn:hover::before {
	width: 100%;
}
i {
	-webkit-text-fill-color: transparent;
	-webkit-text-stroke: 1px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	padding: 0;
	line-height: 1;
	font-family: var(--body-font-medium);
	color: var(--bs-dark);
}
.p-v-60 {
	padding: 60px 0;
}
h1 {
	font-size: 4vw;
	letter-spacing: 2px;
}

h2 {
	font-size: calc(27px + (45 - 27) * ((100vw - 300px) / (1920 - 300)));
}

h3 {
	font-size: calc(22px + (35 - 22) * ((100vw - 300px) / (1920 - 300)));
}

h4 {
	font-size: calc(20px + (28 - 20) * ((100vw - 300px) / (1920 - 300)));
}

h5 {
	font-size: calc(20px + (24 - 20) * ((100vw - 300px) / (1920 - 300)));
}

h6 {
	font-size: calc(20px + (18 - 20) * ((100vw - 300px) / (1920 - 300)));
}
.p-v-50 {
	padding: 50px 0;
}
.tshadow {
	text-shadow: 2px 7px 4px rgba(0, 0, 0, 0.5);
}
.logo a {
	display: inline-block;
	text-align: center;
}
.body-line {
	position: fixed;
	top: 0;
	width: 1px;
	height: 100%;
	left: 15%;
	background: rgba(0, 0, 0, 0.1);
	z-index: 4;
}
.body-line:nth-child(2) {
	left: 30%;
}
.body-line:nth-child(3) {
	left: 0;
	right: 0;
	margin: 0 auto;
}
.body-line:nth-child(4) {
	right: 30%;
	left: auto;
}
/* .body-line:nth-child(2) {
left: 0; right: 0; margin: 0 auto;
} */
.body-line.last {
	right: 15%;
	left: auto;
}

header {
	position: fixed;
	top: 10px;
	width: 100%;
	left: 0;
	z-index: 99;
	font-size: 0.8rem;
}
.borderBox {
	border: #ddd 1px solid;
	padding: 15px 15px;
	background: var(--bs-white);
}
.borderBox span.logo {
	margin-left: 0;
	margin-top: 0;
	width: 60px;
	flex: 0 0 60px;
}
.borderBox span {
	margin-left: 15px;
	font-size:14px;
}
.borderBox span i {
	color: #f3931f;
	margin-right: 5px;
}
.borderBox span a:hover {
	color: #f3931f;
}
.stellarnav .menu-toggle span.bars {
	margin-top: 0;
}
.logo a {
	color: var(--primary-color);
	font-family: var(--body-font-bold);
	font-size: 1rem;
	text-transform: uppercase;
}
.navigation li a,
.stellarnav > ul > li > a {
	text-transform: uppercase;
	padding: 0 20px;
	color: var(--bs-dark);
	font-size: 14px;
	border-right: #ddd 1px solid;
}
.navigation li:last-child a,
.stellarnav > ul > li:last-child a {
	border-right: transparent;
}
.stellarnav {
	position: relative;
	width: auto;
	z-index: 9900;
	line-height: normal;
}

/* text animation */
.word {
	position: absolute;
	opacity: 0;
}

.letter {
	display: inline-block;
	position: relative;
	float: left;
	transform: translateZ(25px);
	transform-origin: 50% 50% 25px;
}

.letter.out {
	transform: rotateX(90deg);
	transition: transform 0.32s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.letter.behind {
	transform: rotateX(-90deg);
}

.letter.in {
	transform: rotateX(0deg);
	transition: transform 0.38s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.p-v-150 {
	padding: 130px 0;
}
.text h1 {
	width: auto;
	float: left;
	padding-right: 10px;
}
.top_banner p {
	margin: 15px 0;
}
.banner {
	position: relative;
}

.banner .swiper-slide {
	height: 80vh;
}
.banner .swiper-slide .image-container {
	transition: 5s ease-out;
	transform: scale(1.2);
	background-position: top left;
	background-size: cover;
	background-repeat: no-repeat;
	height: 100%;
}
.banner .swiper-slide.swiper-slide-active .image-container {
	transform: scale(1);
}
/* .company_tags {
position: absolute;
top: 0;
right: 0;
padding: 20px 30px;
background: var(--bs-white);
width: 30%;
z-index: 3;
} */
.about h2 {
	margin: 8px 0 15px;
}
.about {
	position: relative;
}
/* .about::before,
.testimony::before {
position: absolute;
left: 15%;
width: 35%;
height: 60px;
background: var(--bs-white);
content: "";
top: -60px;
z-index: 3;
} */
.services h4 {
	margin-top: 28px;
	margin-bottom: 15px;
}
.aboutPic {
	position: absolute;
	bottom: 0;
	right: -15px;
	max-width: 550px;
	width: 100%;
}
.textPart {
	padding: 30px;
	background: var(--bs-white);
	position: relative;
	z-index: 6;
	border: rgba(0, 0, 0, 0.1) 1px solid;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.headings {
	margin-bottom: 22px;
}
.headings p {
	margin: 6px 0 0;
}
.services .swiper {
	height: 100%;
}
.services .swiper img {
	height: 100%;
	object-fit: cover;
}

/* before-after */
/* .beforeAfter { height: 450px; } */
.beforeAfter {
	position: relative;
}
.labelAfter,
.labelBefore {
	position: absolute;
	top: 50%;
	background: rgba(0, 0, 0, 0.6);
	padding: 10px 15px;
	color: var(--bs-white);
	z-index: 5;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 14px;
}
.labelAfter {
	right: 15px;
}
.labelBefore {
	left: 15px;
}
.work .carousel-indicators {
	position: absolute;
	right: auto;
	bottom: 0;
	left: 0;
	z-index: 2;
	display: flex;
	justify-content: center;
	padding: 0;
	margin-right: auto;
	margin-bottom: 1rem;
	margin-left: 26%;
	list-style: none;
}

/* .wrapper{
width: 100%;
position: relative;
overflow:hidden;
height: 400px;
} */

/* Our image information */
/* .before,
.after {
width:100%;
height:100%;
background-repeat:no-repeat;
background-color: white;
background-size: cover;
background-position: center;
position: absolute;
top:0;
left:0;
pointer-events:none;
overflow: hidden;
}

.content-image{
height:100%;
}

.after{
width:125px;
}

.scroller{
width: 50px;
height:50px;
position: absolute;
left:100px;
top:50%;
transform:translateY(-50%);
border-radius:50%;
background-color: transparent;
opacity:0.9;
pointer-events:auto;
cursor: pointer;
}

.scroller:hover{
opacity:1;
}

.scrolling{
pointer-events:none;
opacity:1;
}

.scroller__thumb{
width:100%;
height:100%;
padding:5px;
}

.scroller:before,
.scroller:after{
content:" ";
display: block;
width: 7px;
height: 9999px;
position: absolute;
left: 50%;
margin-left: -3.5px;
z-index: 30;
transition:0.1s;
}
.scroller:before{
top:100%;
}
.scroller:after{
bottom:100%;
}

/* If you want to cahnge the colors, make sure you change the fill in the svgs to match */
.scroller {
	border: 5px solid var(--primary-color);
}
.scroller:before,
.scroller:after {
	background: var(--primary-color);
}
*/ .work .headings {
	margin-bottom: 30px;
}
.workDetails h4 {
	margin-bottom: 10px;
}
.workDetails {
	background: var(--bs-white);
	padding: 30px;
	position: relative;
	left: 0;
	bottom: 30px;
}
.swiper-pagination-bullet {
	background: var(--swiper-pagination-bullet-inactive-color, #fff);
}
.gallery {
	position: relative;
}
.swiper-button-next,
.swiper-button-prev {
	background: rgba(0, 0, 0, 0.5);
	color: var(--swiper-navigation-color, var(--bs-white));
	width: 50px;
	height: 50px;
}
.swiper-button-next:after,
.swiper-button-prev:after {
	font-size: 24px;
}
.testimony {
	position: relative;
}
.testimony h3 {
	margin: 10px 0 20px;
	line-height: 1.5;
}
.clientDetails {
	max-width: 310px;
	width: 100%;
	margin: 0 auto;
}

.clientDetails span{
	flex: 0 0 60px;
	width: 60px;
	margin-right: 15px;
	border: 1px solid;
	height: 60px;
	padding: 8px;
	border-radius: 50%;
}
.clientDetails span img{
	height: 100%;
	width: 100%;
	border-radius: 50%;
}
.text-left {
	text-align: left !important;
}
.clientDetails small {
	margin-top: 10px;
	display: inline-block;
}
.quotes {
	position: absolute;
	top: -90px;
	left: 15px;
	font-size: 6vw;
}
.relative {
	position: relative;
}
.testimony .swiper-wrapper {
	padding-bottom: 60px;
}
.testimony .swiper-pagination-bullet {
	background: var(--swiper-pagination-bullet-inactive-color, #000);
}
.lightbg {
	background: #f9f9f9;
}
.accordion-button::after {
	background-image: none !important;
	content: "\f0fe";
	font-family: var(--fa-style-family, "Font Awesome 6 Pro");
	transition: all 0.5s;
	font-size: 20px;
}
.accordion-button:not(.collapsed)::after {
	background-image: none !important;
	content: "\f146";
	font-family: var(--fa-style-family, "Font Awesome 6 Pro");
}
.accordion-button::after {
	transition: all 0.5s;
}
.accordion-button:not(.collapsed) {
	color: var(--primary-color);
	background-color: transparent;
	box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
}
.accordion-item {
	background-color: transparent;
	border: 1px solid rgba(0, 0, 0, 0.125);
	border-radius: 0;
	padding: 30px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.accordion-item::after {
	position: absolute;
	right: -100px;
	top: -100px;
	background: var(--primary-color);
	height: 100px;
	width: 100px;
	border-radius: 100%;
	z-index: -1;
	content: "";
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	-ms-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.accordion-item:hover::after {
	width: calc(100% + 100px);
	border-radius: 0;
	top: 0;
	height: 100%;
}
.accordion-button {
	background-color: transparent;
	font-family: var(--body-font-medium);
	text-transform: capitalize;
}
.accordion-item:hover {
	color: var(--bs-white);
}
.accordion-item:hover .accordion-button {
	color: var(--bs-white);
}
.lists li {
	margin-top: 18px;
	position: relative;
	padding-left: 30px;
}
.lists li i {
	position: absolute;
	left: 0;
	font-size: 20px;
}
.lists li a {
	color: var(--bs-secondary);
}
.right_form,
.newsletter {
	position: relative;
	z-index: 1;
	padding: 30px;
	color: var(--bs-white);
}
.right_form::before {
	position: absolute;
	right: 0;
	top: 0;
	background: rgba(0, 0, 0, 0.9);
	height: 100%;
	width: 100%;
	content: "";
	z-index: -1;
}
.form-control,
.form-select {
	background-color: transparent !important;
	height: 45px;
	border-radius: 0;
	color: var(--bs-white) !important;
}
textarea.form-control {
	height: 100px;
}
.right_form .btn {
	color: var(--bs-white) !important;
}
.socials li {
	margin-right: 20px;
}
.socials li a {
	color: var(--primary-color);
	font-size: 35px;
}
.form .socials {
	margin-top: 40px;
}
.socials li a:hover {
	color: var(--bs-secondary);
}
.newsletter {
	padding: 50px 0;
}
.newsletter::before {
	position: absolute;
	right: 0;
	top: 0;
	background: rgba(0, 0, 0, 0.5);
	height: 100%;
	width: 100%;
	content: "";
	z-index: -1;
}
.newsletter h3 {
	color: var(--bs-white);
}
.newsletter .btn {
	position: absolute;
	bottom: 0;
	right: 30px;
	color: var(--bs-white) !important;
}
.newsletter.action .btn {
	position: static;
	font-size: 25px;
	border: #fff 1px solid;
	padding: 10px 15px;
}

footer {
	padding: 60px 0 25px;
}
footer a {
	color: var(--bs-secondary);
}
footer a:hover {
	color: #f3931f;
}
footer ul {
	padding-left: 25px;
}
footer li {
	list-style-type: circle;
	margin-bottom: 10px;
}
footer h6 {
	margin-bottom: 15px;
}

/* Innerpage [kitchen] */
.innerBanner {
	position: relative;
	z-index: 1;
}
.innerBanner h1 {
	text-transform: uppercase;
}
.innerBanner::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	content: "";
	z-index: -1;
}
.innerBanner h1 {
	color: var(--bs-white);
}
.overlapBox .workDetails {
	padding: 50px 80px;
	left: -60px;
	bottom: 0;
}
.page-template-page-home .gallery {
	padding: 0 0;
	text-align: center;
}

/* ria */
.gallery {
	padding: 5rem 0;
	text-align: center;
}
.gallery h3 {
	text-align: start;
	padding-bottom: 2rem;
}
.gallery .swiper-slide {
	padding-bottom: 1rem;
}
.gallery .swiper-slide p {
	position: absolute;
	top: 50%;
	left: 50%;
	color: #000;
	/* font-size: 0; */
	background-color: #ffffffb3;
	width: 76px;
	height: 70px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100px;
	transform: translate(-50%, -111%);
	font-weight: 600;
	opacity: 0;
	transition: 0.5s ease;
}
.gallery .swiper-slide:hover p {
	opacity: 1;
}
.gallery .swiper-slide img {
	width: 100%;
	object-fit: cover;
	transition: all 0.3s ease;
}
.boxImg {
	position: relative;
}
.boxImg::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(0, 0, 0, 0.5);
	opacity: 0;
	transition: 0.5s;
}
.gallery .swiper-slide:hover .boxImg::before {
	opacity: 1;
}

.gallery .swiper-slide .swiper-text h3 {
	text-align: center;
	padding-top: 28px;
	font-size: 20px;
}
.gallery .swiper-slide .swiper-text {
	box-shadow: 0 0 5px 0px #00000054;
	background: #fff;
}
/* .gallery .example-image-link{
padding-bottom: 1rem;
} */

.form form .wpcf7 {
	display: flex;
	flex-wrap: wrap;
}
.form form .wpcf7 .mb-3.mt-3.col-sm-6 {
	padding-right: calc(1.5rem * 0.5);
	padding-left: calc(1.5rem * 0.5);
	margin-bottom: 0 !important;
}
.form form .wpcf7 .col-12 {
	padding-right: calc(1.5rem * 0.5);
	padding-left: calc(1.5rem * 0.5);
}
.form form .wpcf7 .col-12 label {
	width: 100%;
}
.form form .wpcf7 .mb-3.mt-3.col-sm-6 .form-control {
	margin-top: 10px;
}
.form form .wpcf7 .col-12 .form-control {
	margin-top: 10px;
}
.page-template .wpcf7-form .wpcf7-form-control-wrap .wpcf7-form-control option {
	color: #000 !important;
}
.wpcf7-form p {
	margin: 0 !important;
}
.wpcf7-form .mb-3 {
	position: relative;
}
.wpcf7-spinner {
	position: absolute;
	left: 0;
}
.wpcf7-form label {
	display: block;
}
.wpcf7-form p span {
	margin-top: 5px !important;
	display: block;
}
.wpcf7 form .wpcf7-response-output {
	margin: 0;
	padding: 10px 20px;
	border: 2px solid #ffbb003b !important;
	background: #ffbb003b;
	border-radius: 15px;
	text-align: center;
}
.newsletter .form-control,
.form-select {
	padding-right: 87px;
}
/*ria  */
.our-team-box .our-team-img img {
	width: 100%;
	object-fit: cover;
}
.our-team-text {
	margin-top: 1rem;
}
.our-team-text h6 {
	margin-bottom: 5px;
}
.our-team-img {
	position: relative;
	overflow: hidden;
}
.team-icon {
	position: absolute;
	top: 50%;
	right: -100px;
	font-size: 25px;
	transition: all 0.5s;
	transform: translate(0, -50%);
}
.our-team-img:hover .team-icon {
	right: 0;
}
.team-icon li {
	background: #181818;
	margin-bottom: 10px;
	width: 39px;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 38px;
}
.team-icon li a {
	color: #fff;
}
.home-logo-section .home-logo-section-img img {
	width: 100%;
	box-shadow: 11px 16px 11px 0px #00000026;
	animation: mountain-2 25s linear infinite;
}

@keyframes mountain-2 {
	from {
		left: 600px;
	}
	to {
		left: -800px;
	}
}
.home-logo-section .home-logo-section-text h2 {
	margin-bottom: 18px;
	font-size: 44px;
}
.home-logo-section .home-logo-section-wrap {
	border: 1px solid #0000001f;
	padding: 29px 10px;
	border-radius: 5px;
}
.home-logo-section-img {
	padding-left: 14px;
}

.coastallogo {
	margin-bottom: 15px;
}

.coastallogo img {
	width: auto;
	height: 55px;
}

.logo a {
	width: 100%;
	max-width: 110px;
}

.logo a img {
	width: 100%;
	height: 70px !important;
}
.home-logo-section-img img {
	width: 100%;
	max-width: 60%;
}
.gallery .swiper-slide img {
	height: 350px;
	width: 100%;
	object-fit: cover;
}
.stellarnav li.current-menu-item a {
	color: #f3931f !important;
}
.btn,
.company_tags,
small,
.socials li a,
.lists li i {
	color: #f3931f !important;

}
.btn::before {
	background: #f3931f;
}
footer small {
	color: var(--bs-secondary) !important;
}
.services .headings h3 {
	margin: 20px 0;
}
.serviceDetails ul {
	padding-left: 30px;
	list-style-type: circle;
	margin-bottom: 20px;
}
.serviceDetails ul li {
	margin: 10px 0;
}
.form-select {
	padding-right: 21px;
	font-size: 14px;
}
.serviceList img {
	height: 335px;
	width: 100%;
	object-fit: cover;
}

#demo .beforeAfter{
	height: 300px;
}
#demo .beforeAfter img{
	height: 100%;
	object-fit: cover;
}
.page-id-21 .form.about .right_form .btn-dark{
	color: var(--bs-white) !important;
	border: #fff 1px solid;
	padding: 10px 30px;
	transition: 0.3s ease-in-out;
}
.page-id-21 .form.about .right_form .btn-dark:hover {
	color: var(--bs-dark)!important;
	background: #fff;
}
.gallery .company_tags{
	font-size: 35px !important;
}
.swiper {
    padding-top: 25px;
}

.demoSlide-image
{height: 100%; 
	object-fit: cover;}
#demo .demoslideImg 
{    height: 300px;}