@charset "utf-8";
/* ----- FONT FACE ----- */

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

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

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

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

@font-face {
	font-family: 'Josefin Sans';
	src: url('../fonts/JosefinSans-BoldItalic.eot');
	src: url('../fonts/JosefinSans-BoldItalic.eot?#iefix') format('embedded-opentype'),
		url('../fonts/JosefinSans-BoldItalic.woff2') format('woff2'),
		url('../fonts/JosefinSans-BoldItalic.woff') format('woff'),
		url('../fonts/JosefinSans-BoldItalic.ttf') format('truetype'),
		url('../fonts/JosefinSans-BoldItalic.svg#JosefinSans-BoldItalic') format('svg');
	font-weight: bold;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Josefin Sans';
	src: url('../fonts/JosefinSans-Italic.eot');
	src: url('../fonts/JosefinSans-Italic.eot?#iefix') format('embedded-opentype'),
		url('../fonts/JosefinSans-Italic.woff2') format('woff2'),
		url('../fonts/JosefinSans-Italic.woff') format('woff'),
		url('../fonts/JosefinSans-Italic.ttf') format('truetype'),
		url('../fonts/JosefinSans-Italic.svg#JosefinSans-Italic') format('svg');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}

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

@font-face {
	font-family: 'Josefin Sans';
	src: url('../fonts/JosefinSans-LightItalic.eot');
	src: url('../fonts/JosefinSans-LightItalic.eot?#iefix') format('embedded-opentype'),
		url('../fonts/JosefinSans-LightItalic.woff2') format('woff2'),
		url('../fonts/JosefinSans-LightItalic.woff') format('woff'),
		url('../fonts/JosefinSans-LightItalic.ttf') format('truetype'),
		url('../fonts/JosefinSans-LightItalic.svg#JosefinSans-LightItalic') format('svg');
	font-weight: 300;
	font-style: italic;
	font-display: swap;
}

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

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

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

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

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

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

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

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

@font-face {
	font-family: "FontAwesome";
	font-display: swap;
	src: url("../fonts/fontawesome-webfont.woff2") format("woff2"),
		url("../fonts/fontawesome-webfont.woff") format("woff"),
		url("../fonts/fontawesome-webfont.ttf") format("truetype"),
		url("../fonts/fontawesome-webfont.svg") format("svg");
}

body {
	font-family: var(--font-body-family);
	color: var(--black);
	line-height: 28px;
	letter-spacing: 0.54px;
	font-size: 18px;
	-ms-overflow-style: scrollbar;
	scroll-behavior: smooth;
	overflow-wrap: break-word;
}


body {
	overflow-x: hidden;
}

/*  select option */
::-ms-expand {
	display: none;
}

select {
	-moz-appearance: none;
	-webkit-appearance: none;
}

select.form-control {
	-moz-appearance: none;
	-webkit-appearance: none;
	background: #FFFFFF url(../images/icon/select-arrow-dark.svg) no-repeat right 10px center / 0.75em;
	padding-right: 2em;
}

::-moz-selection {
	color: #fff;
	background: var(--theme);
}

::selection {
	color: #fff;
	background: var(--theme);
}

/*-----FORM CONTROL-----*/
.privacy_text {
	font-size: 13px;
	margin-top: 20px;
	line-height: 16px;
}

.sec-contact p.privacy_text {
	color: #fff;
}

.privacy_text a:hover {
	font-weight: 500;
	color: #fff;
}

::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: var(--black);
	font-size: 16px;
	font-family: var(--font-body-family);
	font-weight: normal;
}

::-moz-placeholder,
textarea::-moz-placeholder {
	color: var(--black);
	font-size: 16px;
	font-family: var(--font-body-family);
	font-weight: normal;
}

:-ms-input-placeholder,
textarea::placeholder {
	color: var(--black);
	font-size: 16px;
	font-family: var(--font-body-family);
	font-weight: normal;
}

.slick-slider {
	-webkit-user-select: text;
	-khtml-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}


/*  select option  */
.form-group.form-group50 {
	width: calc(50% - 15px);
	position: relative;
}

.row {
	margin-left: -10px;
	margin-right: -10px;
}

input:invalid {
	box-shadow: none;
}

input[type="text"],
input[type="tel"],
input[type="number"] input[type="submit"],
input[type="email"],
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: var(--font-body-family);
}

textarea {
	resize: none;
	min-height: 140px;
	color: var(--black);
	margin: 0;
	vertical-align: bottom;
	font-size: 16px;
	letter-spacing: 0px;
	font-family: var(--font-body-family);
	font-weight: normal;
}

.form-group {
	margin-bottom: 20px;
	width: 100%;
}

form .form-group.width100 {
	margin-bottom: 0;
}

.form-control {
	width: 100%;
	padding: 10px 20px;
	background: var(--white);
	border: 1px solid #e5e5e5;
	color: var(--text-color);
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	font-family: var(--font-body-family);
	font-weight: normal;
	transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	height: 56px;
}

.form-group input,
.form-group .form-control {
	min-width: 100%;
}

textarea.form-control {
	height: auto;
	min-height: 140px;
}

.form-control:focus {
	border-color: var(--theme);
}

.wpcf7-spinner {
	position: absolute;
	margin: 0;
	right: 0;
}

.form-group label {
	margin-bottom: 10px;
	display: block;
	font-family: var(--font-head-family);
	font-size: 16px;
	line-height: 1;
	font-weight: var(--font-weight-normal);
	text-transform: uppercase;
	color: var(--light-cream);
}


.divider {
	border-bottom: 1px solid #D6C5AC;
	margin-bottom: 200px;
	display: block !important;
}

.button,
button[type="submit"],
input[type="submit"] {
	position: relative;
	overflow: hidden;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 18px 30px;
	outline: 1px solid var(--primary);
	outline-offset: -1px;
	border: 0;
	border-radius: 0;
	background-color: transparent;
	color: var(--primary);
	font-family: var(--font-body-family);
	font-size: 14px;
	font-weight: var(--font-weight-medium);
	line-height: normal;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	min-height: auto;
	min-width: auto;
	transition: var(--transition-default);
	text-transform: uppercase;
	letter-spacing: 0.7px;
}

.button::after,
button[type="submit"]::after,
input[type="submit"]::after {
	content: "";
	display: block;
	width: 0px;
	height: 86%;
	position: absolute;
	top: 7%;
	left: 0%;
	opacity: 0;
	background: white;
	box-shadow: 0 0 15px 3px white;
	-webkit-transform: skewX(-20deg);
	-moz-transform: skewX(-20deg);
	-ms-transform: skewX(-20deg);
	-o-transform: skewX(-20deg);
	transform: skewX(-20deg);
}

.button:hover::after,
button[type="submit"]:hover::after,
input[type="submit"]:hover::after {
	-webkit-animation: shine 0.5s 0s linear;
	-moz-animation: shine 0.5s 0s linear;
	animation: shine 0.5s 0s linear;
}

.button-theme {
	background-color: var(--theme);
	color: var(--white);
	outline: 1px solid var(--theme);
}

.button-theme:hover {
	background-color: var(--brown-dark);
	color: var(--white);
	outline: 1px solid var(--brown-dark);
}

.button-outline {
	outline: 1px solid var(--primary);
	color: var(--primary);
}

.button-outline:hover {
	background-color: var(--primary);
	color: var(--white);
	outline: 1px solid var(--primary);
}

.button-white-outline {
	outline: 1px solid var(--white);
	color: var(--white);
}

.button-white-outline:hover {
	background-color: var(--white);
	color: var(--primary);
	outline: 1px solid var(--white);
}

@-webkit-keyframes shine {
	from {
		opacity: 0;
		left: 0%;
	}
	50% {
		opacity: 1;
	}
	to {
		opacity: 0;
		left: 100%;
	}
}

@-moz-keyframes shine {
	from {
		opacity: 0;
		left: 0%;
	}
	50% {
		opacity: 1;
	}
	to {
		opacity: 0;
		left: 100%;
	}
}

@keyframes shine {
	from {
		opacity: 0;
		left: 0%;
	}
	50% {
		opacity: 1;
	}
	to {
		opacity: 0;
		left: 100%;
	}
}

/* reusable form submit: full-width dark button with a right arrow */
.submit-btn {
	position: relative;
	width: 100%;
}

.submit-btn input.btnsubmit,
.submit-btn .btnsubmit {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	width: 100%;
	height: 50px;
	padding: 18px 30px;
	background: transparent;
	outline: 1px solid var(--light-cream);
	outline-offset: -1px;
	border-radius: 0px;
	color: var(--light-cream);
	font-family: var(--font-body-family);
	font-size: 14px;
	font-weight: var(--font-weight-medium);
	line-height: normal;
	letter-spacing: 0.7px;
	text-align: center;
	text-transform: uppercase;
	cursor: pointer;
	transition: var(--transition-default);
}

.submit-btn input.btnsubmit:hover,
.submit-btn .btnsubmit:hover {
	background: var(--white);
	color: var(--brown);
}

.submit-btn input.btnsubmit:focus-visible,
.submit-btn .btnsubmit:focus-visible {
	outline: 2px solid var(--light-cream);
	outline-offset: 2px;
}


/* ---- Button group containers ---- */
ul.btnlist {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.btnlist {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0;
	gap: 14px;
}

.btnlist li,
.btnlist .button {
	margin: 0;
}

/* ---- Slick slider arrow (shared across all sliders) ---- */
.slick-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border-radius: 50%;
	cursor: pointer;
	background-color: var(--white);
	border: 1px solid var(--theme);
	transition: var(--transition-default);
	z-index: 1;
}

.slick-arrow:hover {
	background-color: var(--theme);
}

.slick-arrow:before {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border-style: solid;
	border-width: 2px 2px 0 0;
	border-color: var(--theme);
	transition: var(--transition-default);
}

.slick-arrow:hover:before {
	border-color: var(--white);
}

.slick-prev:before {
	transform: rotate(-135deg);
	margin-left: 3px;
	opacity: 1 !important;
}

.slick-next:before {
	transform: rotate(45deg);
	margin-right: 3px;
}

/* ---- Section head (label + heading / description, shared across sections) ---- */
.section-head {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 60px;
}

.section-head-title {
	width: 481px;
}

.section-head-title [class*="heading-"] {
	margin-bottom: 0;
}

.section-head-desc {
	width: 497px;
	padding-top: 16px;
}

/* ---- Section head, centered variant (label + heading, shared across sections) ---- */
.section-head-center {
	margin-bottom: 68px;
}

.section-head-center [class*="heading-"] {
	margin-bottom: 0;
}

/* ---- Section footer (explore link + expanding rule + slick arrows, shared across sections) ---- */
.section-footer {
	display: flex;
	align-items: center;
	margin-top: 80px;
}

.section-explore {
	order: 1;
	flex-shrink: 0;
	margin-right: 24px;
	font-family: var(--font-body-family);
	font-size: 14px;
	font-weight: var(--font-weight-medium);
	letter-spacing: 0.7px;
	text-transform: uppercase;
	color: var(--theme);
}

.section-rule {
	order: 2;
	flex: 1 1 auto;
	height: 1px;
	margin-right: 40px;
	background-color: #D6C5AC;
}

.section-footer .slick-arrow {
	order: 3;
	position: static;
	top: auto;
	left: auto;
	right: auto;
	transform: none;
}

.section-footer .slick-arrow + .slick-arrow {
	margin-left: 10px;
}

.section-footer .slick-prev {
	margin-right: 10px;
}

/*---- theme content  ul,ol heading styling -------*/

.relative {
	position: relative;
}

a {
	text-decoration: none;
}

p,
ol li,
ul li {
	font-size: 18px;
	color: var(--black);
	line-height: 28px;
	letter-spacing: 0px;
	font-weight: var(--font-weight-light);
	font-family: var(--font-body-family);
}

p {
	margin-bottom: 30px;
}

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

p a {
	color: var(--text-color);
	text-decoration: underline;
	text-underline-position: under;
	font-weight: 500;
}

p a:hover {
	color: var(--theme);
}

p a,
p span,
ul li a,
ol li a {
	display: inline-block;
}

p span {
	color: initial;
	text-decoration: none;
}


/* ********|| UL , OL  ||******** */

ul.twocolumn {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;

	& li {
		width: calc(50% - 10px);

	}
}

main .content-wrapper ul.twocolumn li {
	line-height: 1;
}

main .content-wrapper ul.twocolumn li:before {
	top: 1px;
}

main .content-wrapper ul.twocolumn li:not(:last-child) {
	margin-bottom: 15px;
}

main .content-wrapper ul {
	list-style: none;
	margin-bottom: 35px;
	margin-left: 0;
}

main .content-wrapper ul li {
	position: relative;
	padding-left: 32px;
	list-style: none;
	font-size: 18px;
	color: var(--black);
	line-height: 1.334;
	letter-spacing: 0px;
	font-weight: var(--font-weight-light);
	font-family: var(--font-body-family);
	margin-bottom: 0;
	letter-spacing: 0.54px;
}

main .content-wrapper ul li:before {
	content: "";
	position: absolute;
	left: 0px;
	top: -1px;
	width: 21px;
	height: 21px;
	z-index: 1;
	background: url(../images/icon/bullet-icon.svg) no-repeat center / 21px 21px;
}

main .content-wrapper ul li:not(:last-child) {
	margin-bottom: 25px;
}

main .content-wrapper ul li strong {
	font-weight: var(--font-weight-normal);
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0.54px;
	color: var(--black);
}

/* ---- numbered process list (analogous to the checkmark ul above) ---- */
main .content-wrapper ol {
	counter-reset: process-step;
	list-style: none;
	margin-bottom: 30px;
	margin-left: 0;
}

main .content-wrapper ol li {
	position: relative;
	counter-increment: process-step;
	padding-left: 30px;
	letter-spacing: 0.54px;
	font-size: 18px;
	color: var(--black);
	line-height: 1.334;
	font-weight: normal;
	font-weight: var(--font-weight-light);
	font-family: var(--font-body-family);
	margin-bottom: 0;
}

main .content-wrapper ol li:before {
	content: counter(process-step) ".";
	position: absolute;
	left: 0;
	top: -1px;
	font-weight: normal;
	color: var(--black);
}

main .content-wrapper ol li a {
	color: inherit;
	text-decoration: underline;
}

main .content-wrapper ol li:not(:last-child) {
	margin-bottom: 16px;
}

[class*="heading-"], h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-head-family);
	color: var(--brown);
	margin-bottom: 25px;
	line-height: 1.261;
	font-weight: var(--font-weight-light);
	letter-spacing: 0;

}

.heading-72 {
	font-size: clamp(48px, 1.5000vw + 43.20px, 72px);
}

.heading-46, h2 {

	font-size: clamp(34px, 0.7500vw + 31.60px, 46px);
}

.heading-44 {
	font-size: clamp(28px, 1.0000vw + 24.80px, 44px);
}

.heading-36, h3 {
	font-size: clamp(26px, 0.6250vw + 24.00px, 36px);
}

.heading-30 {
	font-size: clamp(24px, 0.3750vw + 22.80px, 30px);
}

.heading-24, h4 {
	font-size: clamp(20px, 0.2500vw + 19.20px, 24px);
}

/* ---- Section label (eyebrow text used above section headings) ---- */
.section-label {
	position: relative;
	display: inline-block;

	margin-bottom: 20px;
	font-family: var(--font-head-family);
	font-size: 14px;
	font-weight: var(--font-weight-normal);
	letter-spacing: 1.4px;
	text-transform: uppercase;
	color: var(--theme);
	line-height: 1.1;
}

.diamond {
	padding-left: 20px;
}

.diamond::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: var(--theme);
	transform: rotate(45deg);
}

.section-label--light {
	color: var(--light-cream);
}

.section-label--light::before {
	background: var(--light-cream);
}

/* ---- Form checkbox (circular, for use on dark/theme backgrounds) ---- */
.form-checkbox, .form-group label.form-checkbox {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 0px;
	cursor: pointer;
	font-family: var(--font-head-family);
	font-size: 16px;
	color: var(--light-cream);

	& label {
		margin-bottom: 0px;
	}
}

.form-checkbox input {
	width: 18px;
	height: 18px;
	margin: 0;
	cursor: pointer;
}

span.wpcf7-list-item-label {
	display: none;
}

span.wpcf7-list-item.first.last {
	margin-left: 1px;
	margin-right: 6px;
}

.form-checkbox-mark {
	position: relative;
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	border: 1px solid var(--light-cream);
	border-radius: 50%;
}

.form-checkbox input:checked ~ .form-checkbox-mark::before {
	content: '';
	position: absolute;
	inset: 4px;
	border-radius: 50%;
	background: var(--light-cream);
}

.capitalize {
	text-transform: capitalize !important;
}

.fw-500 {
	font-weight: var(--font-weight-medium);
}

.fw-600 {
	font-weight: var(--font-weight-semibold);
}

.fw-bold {
	font-weight: var(--font-body-weight-bold);
}

/* WooCommerce-style breadcrumb (structure mirrors the reference project) */
.woo_breadcums {
	margin: 0;
	padding: 22px 0;
	list-style: none;
}

.woo_breadcums li {
	margin: 0;
	font-family: var(--font-body-family);
	font-size: 14px;
	line-height: 1;
	font-weight: var(--font-weight-normal);
	color: var(--white);
}

.woo_breadcums li span {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	row-gap: 6px;
}

.woo_breadcums li a {
	position: relative;
	display: inline-block;
	margin-right: 24px;
	color: var(--white);
	text-decoration: none;
	transition: var(--transition-default);
}

/* separator after each link */
.woo_breadcums li a::after {
	content: '/';
	position: absolute;
	top: 0;
	right: -14px;
	color: var(--white);
}

.woo_breadcums li a:hover {
	color: var(--theme);
}

.woo_breadcums .breadcrumb_last {
	color: var(--white);
}

/* ---- About Marcus Walkley content section ---- */

.content-wrapper .ctent-block-wr:not(:last-child) {
	margin-bottom: 100px;
}

.ctent-block-wr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;

}

.cnt_scroll {
	max-height: 720px;
	overflow-y: auto;


	& + .btnlist {
		margin-top: 30px;
	}

	&.has-scroll {
		padding-right: 60px;
	}

	&::-webkit-scrollbar {
		width: 2px;
	}

	/* Light track */

	&::-webkit-scrollbar-track {
		background: rgba(48, 134, 113, .15);
		border-radius: 10px;
	}

	/* Dark thumb */

	&::-webkit-scrollbar-thumb {
		background: var(--theme);
		border-radius: 10px;
	}
}

.ctent-block {
	width: calc(100% - 775px);
	padding-right: 100px;
	margin: auto 0;
	max-width: 710px;
}

.flex-row-reverse .ctent-block {
	padding-right: 0;
	padding-left: 100px;
}

.about-desc {
	margin-bottom: 60px;
}

.about-features {
	display: flex;
	flex-wrap: wrap;
	max-width: 675px;
}

p + .about-features {
	margin-top: 50px;
}

.about-feature {
	display: flex;
	align-items: center;
	gap: 20px;
	box-sizing: border-box;
	width: 50%;
	padding: 40px 52px;
	background-color: rgba(255, 255, 255, 0.2);
	border: 1px solid rgba(164, 130, 80, 0.2);
	margin-left: -1px;
	margin-top: -1px;
}

.about-feature img {
	flex-shrink: 0;
}

.about-feature-text {
	font-family: var(--font-body-family);
	font-size: 14px;
	line-height: 18px;
	text-transform: uppercase;
	color: var(--black);
	max-width: 150px;
	font-weight: 500;
}

@property --ctent-shine-angle {
	syntax: '<angle>';
	inherits: false;
	initial-value: 0deg;
}

.ctent-img {
	position: relative;
	width: 775px;
}

.sec-about .ctent-img {
	width: 650px;
	height: 100%;
}

.sec-about .ctent-block {
	width: calc(100% - 650px);
	max-width: 100%;
}

.sec-about .ctent-img::before,
.sec-about .ctent-img::after {
	content: '';
	position: absolute;
	border: 1px solid rgba(255, 255, 255, 0.3);
	width: 95.4%;
	height: 96%;
	z-index: 1;
}

.sec-about .ctent-img::before {
	left: 1.85%;
	top: 1.6%;
}

.sec-about .ctent-img::after {
	left: 2.77%;
	top: 2.4%;
}

.ctent-shine {
	position: absolute;
	box-sizing: border-box;
	left: 2.77%;
	top: 2.4%;
	width: 95.4%;
	height: 96%;
	z-index: 2;
	padding: 1px;
	pointer-events: none;
	background: conic-gradient(from var(--ctent-shine-angle),
		rgba(164, 130, 80, 0) 0%,
		rgba(164, 130, 80, 0) 70%,
		rgba(92, 46, 0, 0.35) 80%,
		rgba(244, 239, 230, 0.85) 86%,
		rgba(92, 46, 0, 0.35) 92%,
		rgba(164, 130, 80, 0) 100%);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	animation: ctentImgShine 7s linear infinite;
}

@keyframes ctentImgShine {
	to {
		--ctent-shine-angle: 360deg;
	}
}

.ctent-img img {
	display: block;
	width: 100%;

}

/* ---- Site footer ---- */
.site-footer {
	background-color: var(--primary);
	padding: 60px 0;
}

.footer-nav ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	/* gap: 49px; */
	gap: 30px;
	list-style-type: none;
	margin: 0 0 60px;
	padding: 0;
}

.footer-nav li {
	display: flex;
	align-items: center;
	gap: 30px;
	margin-bottom: 0;
}

.footer-nav li:not(:last-child)::after {
	content: '';
	width: 7px;
	height: 7px;
	border: 1px solid var(--light-cream);
	opacity: 0.3;
	transform: rotate(45deg);
}

.footer-nav a {
	font-family: var(--font-body-family);
	font-size: 14px;
	letter-spacing: 0.7px;
	text-transform: uppercase;
	color: var(--light-cream);
	transition: var(--transition-default);
}

.footer-nav a:hover, .footer-nav li.active a {
	color: var(--theme);
}

.footer-cols {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
}

.footer-card {
	width: 50%;
	padding: 70px 80px;
	background-color: var(--primary);
	border: 1px solid #353535;
}

.footer-card-services {
	padding-left: 122px;
	padding-right: 122px;
}

.footer-card-title {
	font-family: var(--font-body-family);
	font-weight: var(--font-weight-medium);
	font-size: 16px;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	color: var(--theme);
	margin-bottom: 20px;
}

.footer-card-touch {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 100px;
	border-right: 0;
}

.footer-card-brand {
	width: 264px;
}

.footer-card-brand img {
	display: block;
}

.footer-touch-content {
	width: calc(100% - (264px + 100px));
}

.footer-touch-list {
	list-style-type: none;
	margin: 0 0 40px;
	padding: 0;
}

.footer-touch-list li {
	margin-bottom: 16px;
	line-height: 1;
}

.footer-touch-list li:last-child {
	margin-bottom: 0;
}

.footer-touch-item {
	display: flex;
	align-items: center;
	gap: 16px;
}

.footer-touch-item img {
	flex-shrink: 0;
}

.footer-touch-text,
.footer-touch-text a {
	font-family: var(--font-head-family);
	font-weight: var(--font-weight-light);
	font-size: 20px;
	color: var(--light-cream);
}

.footer-touch-text a:hover {
	color: var(--theme);
}

.footer-social-list a > img {
	transition: var(--transition-default);
	-webkit-transition: var(--transition-default);
	-moz-transition: var(--transition-default);
}

.footer-social-list a:hover > img {
	filter: invert(1) brightness(100);
	transition: var(--transition-default);
	-webkit-transition: var(--transition-default);
	-moz-transition: var(--transition-default);
}

.footer-social-list {
	display: flex;
	align-items: center;
	gap: 16px;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.footer-social-list li {
	margin-bottom: 0;
}

.footer-social-list a {
	display: block;
}

.footer-social-list img {
	display: block;
}

.footer-services-cols ul {
	column-count: 2;
	column-gap: 148px;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.footer-services-cols li {
	margin-bottom: 24px;
	line-height: 1;
	break-inside: avoid;

	&.active a {
		color: var(--theme);
	}
}

.footer-services-cols a {
	display: block;
	padding: 0;
	font-family: var(--font-body-family);
	font-size: 13px;
	letter-spacing: 0.65px;
	text-transform: uppercase;
	color: var(--light-cream);
	transition: var(--transition-default);
}

.footer-services-cols a:hover {
	color: var(--theme);
}

.footer-bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

/* ---- Inner page banner (photo hero used at the top of non-home pages) ---- */
.page-banner {
	position: relative;
	min-height: 520px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.page-banner::before {
	content: '';
	position: absolute;
	inset: 0;
	background-color: rgba(26, 26, 26, 0.7);
}

.page-banner__main {
	position: relative;
	z-index: 1;
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding-top: 70px;
	text-align: center;
}

.page-banner__main [class*="heading-"] {
	color: var(--white);
	margin-bottom: 0;
}

.page-banner__main [class*="heading-"] + .btnlist {
	margin-top: 20px;
}

.page-banner__crumbs {
	position: relative;
	z-index: 1;
	text-align: center;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.page-banner__crumbs .woo_breadcums {
	display: inline-block;
}

.footer-copyright p {
	font-family: var(--font-body-family);
	font-size: 13px;
	letter-spacing: 0.65px;
	text-transform: uppercase;
	color: var(--light-cream);
	margin-bottom: 0;
	line-height: 0.2;
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;


	& > a {
		line-height: 1;
		margin-left: 2px;
		margin-bottom: 3px;
	}
}

.footer-privacy {
	font-family: var(--font-body-family);
	font-size: 13px;
	letter-spacing: 0.65px;
	text-transform: uppercase;
	color: var(--light-cream);
	transition: var(--transition-default);
}

.footer-privacy:hover {
	color: var(--theme);
}


/*-------------- form message style  ---------------*/
.wpcf7-not-valid-tip,
.wpcf7-response-output {
	font-size: 12px;
	background: #ff0000;
	color: #fff;
	display: inline-block;
	padding: 6px 8px;
}

.wpcf7-not-valid-tip {
	line-height: 1;
	vertical-align: top;
	position: relative;
}

.wpcf7-form.invalid .wpcf7-response-output {
	background: #fff9df;
	width: 100%;
	display: block;
	color: inherit;
	padding: 10px 10px 10px 40px;
	text-align: left;
	line-height: 1;
	margin: 0 auto 20px;
	color: #585858;
	font-size: 14px;
	position: relative;
}

.wpcf7-form.invalid .wpcf7-response-output:before {
	position: absolute;
	content: "";
	background: url(../images/icon/material-error-outline.svg) no-repeat left top;
	width: 20px;
	height: 20px;
	left: 10px;
	top: 7px;
	display: inline-block;
}

.wpcf7-not-valid-tip:before {
	top: -5px;
	margin: 0;
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid red;
}

.wpcf7-validates-as-required.wpcf7-not-valid {
	background-color: transparent;
	border-color: #f54812;
}

.wpcf7 form.failed .wpcf7-response-output {
	border: 1px solid #fe0000 !important;
	background: url(../images/icon/failed-validation.svg) no-repeat 15px center #ffdfdf;
	font-size: 14px;
	color: #ff0000;
	padding: 10px 20px 10px 30px;
	margin: 0 0 10px 0;
	width: 100%;
	padding-left: 45px;
}

.wpcf7 form.sent .wpcf7-response-output {
	background: url(../images/icon/validation-tick.svg) no-repeat 15px center #e1ffd9;
	border-color: #498e36;
	font-size: 14px;
	color: #498e36;
	width: 100%;
	padding: 10px 10px 10px 40px;
	margin: 1em 0em 2em;
}

/* ---- Scroll to top ---- */
.scrollTop {
	position: fixed;
	right: 40px;
	bottom: 40px;
	z-index: 99;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: var(--theme);
	color: var(--white);
	font-size: 18px;
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transform: scale(0.6);
	transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.3s ease;
}

.scrollTop.vis {
	opacity: 1;
	visibility: visible;
	transform: scale(1);
	animation: scrollTopFloat 2.6s ease-in-out 0.4s infinite;
}

.scrollTop:hover {
	background-color: var(--brown);
	animation-play-state: paused;
}

.scrollTop i {
	position: relative;
	z-index: 1;
	transition: transform 0.3s ease;
}

.scrollTop:hover i {
	transform: translateY(-3px);
}

.scrollTop-ring {
	position: absolute;
	inset: 0;
	width: 48px;
	height: 48px;
	transform: rotate(-90deg);
	pointer-events: none;
}

.scrollTop-ring-track,
.scrollTop-ring-progress {
	fill: none;
	stroke-width: 2;
}

.scrollTop-ring-track {
	stroke: rgba(255, 255, 255, 0.25);
}

.scrollTop-ring-progress {
	stroke: var(--white);
	stroke-linecap: round;
	stroke-dasharray: 138.2;
	stroke-dashoffset: 138.2;
	transition: stroke-dashoffset 0.1s linear;
}

@keyframes scrollTopFloat {
	0%, 100% {
		transform: translateY(0) scale(1);
	}
	50% {
		transform: translateY(-6px) scale(1);
	}
}

/* ---- FAQ accordion list (SMK Accordion markup) ---- */
.faq-list {
	margin: 30px 0 0;
	padding: 0;
}

.faq-list .accordion_in {
	margin-bottom: 16px;
	padding-left: 0;
	background-color: var(--white);
	border: 1px solid #D6C5AC;
}

.faq-list .accordion_in:before {
	content: none;
}

.faq-list .acc_head {
	padding: 16px 60px 16px 24px;
	font-family: var(--font-body-family);
	font-weight: var(--font-weight-normal);
	font-size: 18px;
	letter-spacing: 0.54px;
	color: var(--black);
	line-height: 1.12;
}

.faq-list .acc_content {
	padding: 0 24px 20px;
}

.faq-list .acc_content p {
	margin-bottom: 0;
}

/* ---- Tagline strip (faint tracked "master gilder / established" text, reused across inner pages) ---- */
.sec-tagline {
	overflow: hidden;
}

.tagline {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 120px;
	list-style-type: none;
	margin: 0;
	padding: 0;
	text-align: center;
}

.tagline li {
	display: flex;
	align-items: center;
	margin-bottom: 0;
	font-family: var(--font-head-family);
	font-weight: var(--font-weight-light);
	font-size: min(4.17vw, 80px);
	line-height: 0.77;
	letter-spacing: 12px;
	text-transform: uppercase;
	color: var(--light-cream);
	white-space: nowrap;
	position: relative;
}

.tagline li:not(:last-child)::after {
	content: '';
	flex-shrink: 0;
	width: 8px;
	height: 8px;
	background-color: var(--light-cream);
	transform: rotate(45deg);
	right: 0;
	position: absolute;
	margin-right: -56px;
}

.sec-enterprise ul {
	margin-bottom: 30px;
}

.thanks-error-page .ctent-block {
	width: 100%;
	padding-right: 0px;
	margin: auto 0;
	max-width: 710px;
	margin-bottom: 30px;
}

.thanks-error-page .ctent-img {
	position: relative;
	width: auto;
}

.about-page .ctent-img {
	& img {
		margin-left: auto;
		width: auto;
	}
}

.ctent-block li a {
	text-decoration: underline;
	font-weight: 500;
}

.ctent-block li a:hover {
	color: var(--theme);
}

.container-small {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
	position: relative;
}

.container-small h3 {
	font-size: 27px;
}

.container-small h4 {
	font-size: 22px;
}

.pop-up-right .privacy_text a:hover {
	color: #5c2e00;
}

.no-results p {
	text-align: center;
}

.faq-list .accordion_in.acc_active {
	& .acc_content {
		display: block;
	}
}

blockquote {
	margin-bottom: 30px;
	padding: 15px 20px;
	background-color: var(--light-cream);
	border-left: 5px solid var(--theme);
	font-style: italic;
	display: flex;
	gap: 20px;
	/* align-items: flex-start; */
	align-items: center;
}

blockquote strong {
	display: block;
	margin-top: 10px;
}
.projects-item-info:has(+ blockquote) {
	margin-bottom: 20px;
}
blockquote .test_logo {
	width: 120px;
	height: 120px;
	background: #ffff;
	flex: 1 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100%;
	overflow: hidden;
	padding: 5px;
}
/***------ media ----------**/
@media (max-width: 1599.98px) {
	.tagline li {
		letter-spacing: 10px;
	}

	.flex-row-reverse .ctent-block {
		padding-left: 80px;
	}

	.ctent-block {
		padding-right: 80px;
		width: calc(100% - 600px);
	}

	.ctent-img {
		width: 600px;
	}

	.sec-about .ctent-img {
		width: 550px;
	}

	.sec-about .ctent-block {
		width: calc(100% - 550px);
		max-width: 100%;
	}

	.footer-card-touch {
		gap: 30px;
		align-items: center;
	}

	.footer-touch-content {
		width: calc(100% - (200px + 30px));
	}

	.footer-card-brand {
		width: 200px;
	}

	.footer-card {
		padding: 50px;
	}

	.footer-nav ul {
		gap: 24px;
		margin: 0 0 60px;
	}

	.footer-nav li:not(:last-child)::after {
		margin-right: -3px;
	}

	.footer-services-cols ul {
		column-gap: 60px;
	}

	.footer-services-cols li {
		margin-bottom: 20px;
	}

	.footer-nav li {
		gap: 25px;
	}

	.footer-nav ul {
		gap: 36px;
	}

	.divider {
		margin-bottom: 100px;
	}
}

@media (max-width: 1439.98px) {
	.tagline {
		gap: 80px;
	}

	.tagline li {

		letter-spacing: 8px;
	}

	.tagline li:not(:last-child)::after {
		margin-right: -36px;
	}

	.sec-about .ctent-img {
		width: 450px;
	}

	.sec-about .ctent-block {
		width: calc(100% - 450px);
		max-width: 100%;

	}


	.flex-row-reverse .ctent-block {
		padding-left: 60px;
	}

	.ctent-block {
		padding-right: 60px;
		width: calc(100% - 550px);
	}

	.ctent-img {
		width: 550px;
	}

	.about-feature {
		padding: 35px;
	}

	.footer-nav ul {
		gap: 12px;
		margin: 0 0 40px;
	}

	.footer-nav li {
		gap: 10px;
		line-height: 1.1;
	}

	.footer-card {
		padding: 30px;
	}

	.footer-card-brand {
		width: 180px;
	}

	.footer-touch-content {
		width: calc(100% - (180px + 30px));
	}

	.footer-touch-item {
		gap: 12px;
	}

	.footer-touch-text, .footer-touch-text a {
		font-size: 18px;
	}

	.footer-touch-list {
		margin: 0 0 30px;
	}

	.footer-cols {
		margin-bottom: 40px;

	}

	.divider {
		margin-bottom: 80px;
	}

	.content-wrapper .ctent-block-wr:not(:last-child) {
		margin-bottom: 80px;
	}

	.faq-list .acc_head {
		padding: 14px 44px 14px 14px;
		letter-spacing: 0;
	}

	main .content-wrapper ul li:not(:last-child) {
		margin-bottom: 15px;
	}

	.faq-list .acc_content {
		padding: 0 14px 20px;
	}
	.thanks-error-page {
		& .ctent-block,
		& .ctent-img { 
			width: calc(50% - 20px);
		}
	}
}


@media (max-width: 1199.98px) {
	.button, button[type="submit"], input[type="submit"] {
		padding: 16px 24px;
	}

	.tagline {
		gap: 60px;
	}

	.tagline li {

		letter-spacing: 6px;
	}

	.tagline li:not(:last-child)::after {
		margin-right: -26px;
	}


	.flex-row-reverse .ctent-block {
		padding-left: 40px;
	}

	.ctent-block {
		padding-right: 40px;
		width: calc(100% - 450px);
	}

	.ctent-img {
		width: 450px;
	}

	.sec-about .ctent-img {
		width: 100%;
		max-width: 650px;
	}

	.sec-about .ctent-block {
		width: 100%;
		max-width: 100%;
		padding-right: 0;
		margin-bottom: 30px;
	}

	.about-desc {
		margin-bottom: 30px;
	}

	.about-feature {
		padding: 30px;
	}

	.about-features {
		max-width: 510px;
	}

	.form-control {
		padding: 8px 16px;
		height: 50px;
	}

	.form-group.form-group50 {
		width: calc(50% - 8px);
	}

	.form-group {
		margin-bottom: 18px;
	}

	.form-group label {
		font-size: 14px;
		letter-spacing: 0.1px;
	}

	.section-head-center {
		margin-bottom: 40px;
	}

	p, ol li, ul li {
		line-height: 24px;
	}

	.section-head {
		margin-bottom: 40px;
		gap: 15px;
	}

	.section-head-title {
		width: 100%;
	}

	.section-head-desc {
		width: 100%;
		padding-top: 0;
	}

	.section-label {
		margin-bottom: 10px;
		letter-spacing: 1px;
	}

	.section-footer {
		margin-top: 60px;
	}

	.footer-nav li {
		gap: 14px;
		line-height: 1.1;
	}

	.footer-nav a {
		font-size: 14px;
		letter-spacing: 0.1px;
	}

	.footer-nav ul {
		gap: 14px;
		margin: 0 0 40px;
	}

	.footer-cols {
		margin-bottom: 40px;
	}

	.footer-card {
		width: 100%;
		padding: 30px 20px;
	}

	.footer-card-touch {
		border: 1px solid #353535;
	}

	.footer-touch-content {
		width: calc(100% - (180px + 30px));
	}

	.footer-card-title {
		line-height: 1.1;
		margin-bottom: 14px;
	}

	.footer-touch-list {
		margin: 0 0 30px;
		gap: 24px;
		display: flex;
		flex-wrap: wrap;
	}

	.footer-touch-list li {
		margin-bottom: 0;
	}

	.footer-cols {
		gap: 10px;
	}

	.page-banner {
		min-height: 450px;
	}

	.divider {
		margin-bottom: 60px;
	}

	.content-wrapper .ctent-block-wr:not(:last-child) {
		margin-bottom: 60px;
	}

	.ctent-block .faq-list {
		margin: 0;
	}

	.ctent-block .faq-list .accordion_in:last-child {
		margin-bottom: 0;
	}

	.video-wrapper video {
		width: 100%;
		height: auto;
	}

	
}


@media (max-width: 991.98px) {
	main {
		margin-top: 54px;
	}

	.tagline {
		gap: 40px;
	}

	.tagline li {
		letter-spacing: 4px;
	}

	.tagline li:not(:last-child)::after {
		margin-right: -16px;
	}

	.flex-row-reverse .ctent-block {
		padding-left: 0px;
	}

	.ctent-block {
		padding-right: 0px;
		width: 100%;
		margin-bottom: 30px;
	}

	.ctent-img {
		width: 100%;
	}

	.about-desc {
		margin-bottom: 30px;
	}

	.projects-item-arrow::before {
		width: 8px;
		margin-bottom: 0;
	}

	.section-footer {
		margin-top: 40px;
	}

	.site-footer {
		padding: 40px 0;
	}

	.footer-copyright p, .footer-privacy {
		line-height: 1.28;
		letter-spacing: 0.25px;
	}

	.footer-copyright {
		width: calc(100% - 140px);
	}

	.footer-privacy {
		width: 120px;
	}

	.footer-touch-text, .footer-touch-text a {
		font-size: 16px;
	}

	.footer-touch-list {
		gap: 18px;
	}

	.page-banner {
		min-height: 300px;
	}

	.page-banner__main {
		padding: 15px 0;
	}

	.woo_breadcums {
		padding: 16px 0;
	}

	.divider {
		margin-bottom: 60px;
	}

	.slick-next {
		right: 0;
	}

	.slick-prev {
		left: 0;
	}

	.cnt_scroll {
		max-height: unset;
		overflow-y: unset;
		padding-right: unset;
	}
	blockquote {
		flex-wrap: wrap;
	}
	blockquote .test_logo {
		flex: inherit; 
	}
	.thanks-error-page {
		& .ctent-block,
		& .ctent-img { 
			width: calc(100%);
		}
	}
}

@media (max-width: 767.98px) {
	.container-small h3 {
		font-size: 22px;
	}

	.container-small h4 {
		font-size: 18px;
	}

	.tagline li {
		font-size: min(3.56vw, 80px);
		letter-spacing: 1px;
		white-space: normal;
	}

	.tagline li:not(:last-child)::after {
		margin-right: -22px;
	}

	.section-label {
		margin-bottom: 15px;
	}

	.section-head-center {
		margin-bottom: 30px;
	}

	.footer-nav li {
		gap: 20px;
	}

	.footer-nav ul {
		gap: 20px;
		margin: 0 0 30px;
	}

	.footer-cols {
		margin-bottom: 30px;
	}

	.page-banner {
		min-height: 250px;
	}

	.slick-arrow {
		width: 28px;
		height: 28px;
	}

	.slick-next {
		right: 5px;
	}

	.slick-prev {
		left: 5px;
	}
	.footer-bottom { 
		justify-content: center;
	}
	.footer-copyright { 
		width: 100%;
		& p { 
			justify-content: center;
			text-align: center; gap: 5px; 
			width: 100%; line-height: 1.45;
		}
	}

	.site-footer {
		padding: 40px 0 20px;
	}
}

@media (max-width: 575.98px) {
	.button, button[type="submit"], input[type="submit"] {
		padding: 14px 18px;
		letter-spacing: 0;
	}

	.heading-24, h4 {
		font-size: clamp(16px, 16px + (20 - 16) * ((100vw - 320px) / (576 - 320)), 20px);
	}

	.heading-36, h3 {
		font-size: clamp(18px, 18px + (22 - 18) * ((100vw - 320px) / (576 - 320)), 22px);
	}

	.heading-46, h2 {
		font-size: clamp(20px, 20px + (24 - 20) * ((100vw - 320px) / (576 - 320)), 24px);
	}

	.btnlist {
		gap: 8px;
	}

	.sec-tagline {
		display: none;
	}

	p {
		margin-bottom: 25px;
	}

	p, ol li, ul li {
		line-height: 22px;
	}

	.sec-about .ctent-block .heading-46 {
		font-size: 22px;
	}

	.about-feature {
		padding: 15px 10px;
		flex-wrap: wrap;
		gap: 14px;
		text-align: center;
		justify-content: center;
	}

	.about-feature-text {
		font-size: 13px;
		line-height: 1.3;
		display: block;
		white-space: break-spaces;
		text-wrap-style: balance;
		letter-spacing: 0;
	}

	.form-group.form-group50 {
		width: 100%;
	}

	.section-head-center {
		margin-bottom: 20px;
	}

	.footer-touch-content {
		width: 100%;
	}

	.footer-card-touch {
		gap: 20px;
		padding: 20px;
	}

	.footer-touch-list {
		gap: 14px;
	}

	.footer-card {
		padding: 20px;
	}

	.footer-services-cols ul {
		column-count: 1;
		column-gap: 10px;
	}

	.footer-services-cols li {
		margin-bottom: 15px;
	}

	.footer-card-title {
		margin-bottom: 15px;
	}

	.footer-services-cols a {
		font-size: 14px;
		letter-spacing: 0;
	}

	.footer-services-cols li:last-child {
		margin-bottom: 0;
	}

	.footer-copyright {
		width: 100%;
	}

	.footer-privacy {
		width: auto;
		/* margin-left: auto; */
	}

	.footer-bottom {
		gap: 12px;
	}

	.footer-nav ul {
		margin: 0 0 20px;
		gap: 20px;
	}

	.footer-cols {
		margin-bottom: 25px;
	}

	.footer-copyright p, .footer-privacy {
		letter-spacing: 0.10px;
		gap: 5px;
	}

	.footer-services-cols > ul {
		display: none;
	}

	.footer-card-services .footer-card-title {
		margin-bottom: 0;
		position: relative;
	}

	.footer-card-services .footer-card-title:before {
		position: absolute;
		content: "";
		background-image: url(../images/icon/plus-icon.svg);
		width: 18px;
		height: 18px;
		background-position: 50% 50%;
		margin-top: -2px;
		right: 0;
		background-repeat: no-repeat;
	}

	.footer-card-services .footer-card-title.showhide:before {
		background-image: url(../images/icon/minus-icon.svg);
		background-repeat: no-repeat;
	}

	.footer-card-services .footer-card-title.showhide + .footer-services-cols > ul {
		display: block;
		margin-top: 20px;
	}

	.footer-card.footer-card-services {
		padding: 20px 20px 16px;
	}

	.scrollTop {
		display: none;
	}

	.divider {
		margin-bottom: 40px;
	}

	.page-banner {
		min-height: 200px;
	}

	.content-wrapper .ctent-block-wr:not(:last-child) {
		margin-bottom: 40px;
	}

	.faq-list .acc_head {
		font-size: 16px;
	}

	main .content-wrapper ul li {
		line-height: 1.11;
		padding-left: 24px;
	}

	main .content-wrapper ul li:before {
		width: 18px;
		height: 18px;
		background-size: contain;
	}

	main .content-wrapper ul li:not(:last-child) {
		margin-bottom: 20px;
	}

	.section-footer {
		align-items: center;
		justify-content: space-between;
	}

	.section-rule {
		display: none;
	}

	.section-footer .slick-prev {
		position: absolute;
		right: 0;
		margin-right: 50px;
	}

	p + .about-features {
		margin-top: 0px;
	}
}