* {
	margin: 0;
	padding: 0;
}

body {
	font-family: 'Ubuntu', sans-serif;
	font-size: 15px;
	line-height: 24px;
	color: #666666;
	width: 100%;
	min-width: 1100px;
	font-weight: 300;
	background: #515151 url(images/body_bg.png) center repeat-y;
	position: relative;
}

/* text styles
-----------------------------------------------------------------------------*/

h1,
.h1 {
	font-size: 30px;
	line-height: 33px;
	font-weight: 700;
	color: #24438e;
	padding: 0 0 10px 0;
	margin: 0;
}

h2,
.h2 {
	font-size: 28px;
	line-height: 31px;
	font-weight: 700;
	color: #273e75;
	padding: 0 0 10px 0;
	margin: 0;
}

h3,
.h3,
h4,
.h4 {
	font-size: 26px;
	line-height: 29px;
	font-weight: 700;
	color: #142f70;
	padding: 0 0 10px 0;
	margin: 0;
}

a {
	color: #00978b;
	text-decoration: none;
	outline: none;
}

a:hover {
	text-decoration: underline;
}

table {
	border: 0;
	border-spacing: 0;
	border-collapse: separate;
	padding: 0;
	margin: 0;
}

ul,
ol {
	margin: 0 0 20px 20px;
	padding: 0 0 0 20px;
	list-style-position: outside;
}

ul.no-list-image,
ul.no-list-image li {
	list-style: none;
	list-style-image: none;
}

p {
	margin: 0 0 24px 0;
}

img {
	border: none;
}

/* forms styles
-----------------------------------------------------------------------------*/
input,
textarea,
select {
	color: #000;
	font-size: 15px;
	line-height: 15px;
	box-sizing: border-box;
}

input[type="image"] {
	background: none !important;
	border: none !important;
	outline: 0 !important;
}

label {
	box-sizing: border-box;
}

input {
	vertical-align: middle;
}

.form_standard {
	width: 700px !important;
	display: table;
	margin: 0 auto;
}

.form_standard_half {
	width: 350px !important;
	display: table;
	margin: 0 auto;
}

.form {
	width: 100%;
}

.form input.submit,
input.button {
	width: auto;
	height: 40px;
	color: #fff;
	background: #00978b;
	font-size: 18px;
	line-height: 40px;
	border: 0px;
	padding: 0 15px;
	text-align: center;
	text-transform: uppercase;
}

.form fieldset {
	border: 0px;
	padding: 0px;
	margin: 0px;
}

.form fieldset legend {
	color: #000;
	font-size: 17px;
	font-weight: bold;
	padding: 0px;
}

.form label {
	float: left;
	padding: 0 2px 0 0;
	margin: 0;
	color: #000;
	font-size: 16px;
	line-height: 16px;
}

.form label.edit {
	width: 50%;
}

.form label.edit_full {
	width: 100%;
}

.form label.edit_half {
	width: 25%;
}

.form label.edit_third {
	width: 33%;
}

.form label.no_float {
	float: none !important;
}

.form input[type=text],
.form input[type=email],
.form input[type=number],
.form input[type=date],
.form select,
.form textarea {
	width: 100%;
	color: #000;
	font-size: 15px;
	line-height: 15px;
	padding: 9px;
	margin: 0px 0px 10px 0px;
	background: #fff url(images/input_bg.png) top repeat-x;
	border: 1px solid #bfbfbf;
	border-radius: 0px;
}

.form select {
	padding: 8px;
}

.form textarea {
	height: 150px;
}

.required {
	color: #f00;
}

/* scode_block
-----------------------------------------------------------------------------*/
#scode_block {
	width: 100%;
	text-align: center;
}

#scode_block table {
	border: 0px;
	border-spacing: 0px;
	border-collapse: separate;
	margin-left: auto;
	margin-right: auto;
	padding-top: 13px;
}

#scode_block table tr {
	vertical-align: top;
}

#scode_block table td {
	width: auto;
}

#scode_block table td {
	padding: 0 2px;
	margin: 0;
}

#scode_block #scode {
	width: 90px;
	height: 40px;
}

#scode_block input[type=text] {
	margin: 0px;
}

#scode_block #img_code {
	border-radius: 0px;
}

/* placeholder
-----------------------------------------------------------------------------*/
::-webkit-input-placeholder {
	font: 14px;
	color: #0f2353 !important;
	font-weight: 700;
	text-overflow: ellipsis;
	text-transform: uppercase;
}

::-moz-placeholder {
	font: 14px;
	color: #0f2353 !important;
	font-weight: 700;
	text-overflow: ellipsis;
	text-transform: uppercase;
}

:-moz-placeholder {
	font: 14px;
	color: #0f2353 !important;
	font-weight: 700;
	text-overflow: ellipsis;
	text-transform: uppercase;
}

:-ms-input-placeholder {
	font: 14px;
	color: #0f2353 !important;
	font-weight: 700;
	text-overflow: ellipsis;
	text-transform: uppercase;
}

/* standard styles
-----------------------------------------------------------------------------*/

.uppercase {
	text-transform: uppercase;
}

.underline {
	text-decoration: underline
}

.align_center {
	text-align: center;
	margin: auto;
}

.align_right {
	text-align: right;
}

.align_left {
	text-align: left;
}

.align_justify {
	text-align: justify;
}

.valign_top {
	vertical-align: top;
}

.valign_middle {
	vertical-align: middle;
}

.valign_bottom {
	vertical-align: bottom;
}

.position_center {
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
}

.position_middle:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.box_center {
	display: table;
	margin: 0 auto !important;
}

.clear {
	height: 0;
	font-size: 1px;
	line-height: 0px;
	clear: both;
}

.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

.hidden {
	display: none;
}

.desktop_only {}

.mobile_only {
	display: none;
}

.img_left {
	width: auto;
	float: left;
	margin: 0px 15px 10px 0px;
}

.img_right {
	width: auto;
	float: right;
	margin: 0px 0px 10px 15px;
}

.images,
.images_left,
.images_right {
	border: 2px solid #b7b7b7;
}

.images_left {
	width: auto;
	float: left;
	margin: 0px 25px 15px 0px;
}

.images_right {
	width: auto;
	float: right;
	margin: 0px 0px 15px 25px;
}

hr,
.hr {
	line-height: 1px;
	height: 1px;
	font-size: 1px;
	background: url(images/hr_bg.png) top repeat-x;
	border: 0px;
}

.a_button {
	display: inline-block;
	height: 28px;
	color: #fff;
	font-size: 13px;
	line-height: 13px;
	text-decoration: none;
	font-weight: 700;
	outline: none;
	background: #00978b;
	text-align: center;
	text-transform: uppercase;
	padding: 15px 32px 0 32px;
	border-radius: 22px;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.a_button:hover {
	color: #01c0b1;
	background: #0f2353;
	text-decoration: none;
}

.columns {
	-moz-column-gap: 20px;
	-webkit-column-gap: 20px;
	column-gap: 20px;
	-moz-column-count: 2;
	-webkit-column-count: 2;
	column-count: 2;
}

.columns[data-columns-count="2"] {
	-moz-column-count: 2;
	-webkit-column-count: 2;
	column-count: 2;
}

.columns[data-columns-count="3"] {
	-moz-column-count: 3;
	-webkit-column-count: 3;
	column-count: 3;
}

.columns[data-columns-count="4"] {
	-moz-column-count: 4;
	-webkit-column-count: 4;
	column-count: 4;
}

.columns[data-columns-count="5"] {
	-moz-column-count: 5;
	-webkit-column-count: 5;
	column-count: 5;
}

.columns[data-columns-count="6"] {
	-moz-column-count: 6;
	-webkit-column-count: 6;
	column-count: 6;
}

.res_list {}

.res_list div {
	display: inline-block;
	padding-bottom: 10px;
}

/* columns_list
-----------------------------------------------------------------------------*/
ul.columns_list {
	list-style: none;
}

ul.columns_list>li {
	list-style: none;
	list-style-image: none;
	display: inline-block;
	padding: 0px 0px 15px 0px;
	margin: 0px 0px 0px 0px;
	vertical-align: top;
}

ul.columns_list>li,
ul.columns_list[data-columns-count="2"]>li {
	width: 47%;
	margin-right: 3%;
}

ul.columns_list[data-columns-count="3"]>li {
	width: 30%;
	margin-right: 3%;
}

ul.columns_list[data-columns-count="4"]>li {
	width: 22%;
	margin-right: 3%;
}

ul.columns_list[data-columns-count="5"]>li {
	width: 17%;
	margin-right: 3%;
}

/* portfolio styles
-----------------------------------------------------------------------------*/
.sectionname,
.imagepages {
	display: inline-block;
	color: #fff;
	background: #878787;
	padding: 3px 6px 3px 6px;
	margin: 0px 3px 5px 0px;
	border-radius: 2px;
}

.sectionname:hover,
.imagepages:hover {
	text-decoration: none;
	color: #fff;
	background: #1d8917;
}

.sectionnameselected,
.imagepageselected {
	display: inline-block;
	color: #fff;
	background: #1d8917;
	padding: 3px 6px 3px 6px;
	margin: 0px 3px 5px 0px;
	border-radius: 2px;
}

.sectionnameselected:hover,
.imagepageselected:hover {
	text-decoration: none;
}

.sectionname_divider {
	display: none;
}

.imagesmallname {
	color: #000;
}

.imagemediumname {
	color: #000;
	font-weight: bold;
}

.image_delimiter {
	font-size: 1px;
	line-height: 1px;
	height: 3px;
	padding: 0px;
	margin: 0px;
}


/* portfolio
-----------------------------------------------------------------------------*/
.portfolio {}

.portfolio ul {
	display: table;
	margin: 0 auto;
	padding: 0px;
	list-style: none;
	list-style-image: none;
}

.portfolio ul li {
	display: inline-block;
	margin: 0px 5px 20px 5px;
	padding: 0px;
	vertical-align: top;
}

.portfolio ul li:first-child {}

.portfolio ul li:last-child {}

a.portfolio_button {
	position: relative;
	display: inline-block;
	height: 33px;
	color: #fff;
	font-size: 13px;
	line-height: 13px;
	text-decoration: none;
	outline: none;
	background: #00978b;
	text-align: center;
	text-transform: uppercase;
	padding: 10px 15px 0 15px;
	border-radius: 22px;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

a.portfolio_button:hover,
.portfolio ul li:hover a.portfolio_button,
.portfolio li.selected a.portfolio_button {
	color: #fff;
	text-decoration: none;
	background: #02665e;
}

/* portfolio_sections_list
-----------------------------------------------------------------------------*/
.portfolio_sections_list {
	padding: 0px 0px 15px 0px;
	text-align: center;
	border-bottom: 1px solid #eae9e9;
	margin-bottom: 15px;
}

.portfolio_sections_list_caption {
	font-size: 20px;
	line-height: 23px;
	color: #000;
	font-weight: bold;
	padding: 0px 0px 5px 0px;
}

.portfolio_sections_list select {
	width: 100%;
	font-size: 16px;
	line-height: 16px;
	padding: 8px;
	margin: 0 0 10px 0;
	background: #fff url(images/input_bg.png) top repeat-x;
	border: 1px solid #ccc;
}

.portfolio_sections_list ul li {
	margin: 0 4px 10px 4px;
	padding: 0;
	vertical-align: top;
}

.portfolio_section_name {
	font-size: 27px;
	line-height: 30px;
	font-weight: normal;
	color: #7aa201;
	padding: 0px 0px 10px 0px;
	margin: 0px;
	text-transform: uppercase;
	text-align: center;
}

.portfolio_section_text {
	padding: 0px 0px 20px 0px;
	text-align: left;
}

/* portfolio_navigation
-----------------------------------------------------------------------------*/
.portfolio_navigation {
	padding: 0 0 10px 0;
}

.portfolio_navigation_last {
	width: 70px;
	float: left;
}

.portfolio_navigation_next {
	width: 70px;
	float: right;
	text-align: right;
}

.portfolio_navigation_pages {
	width: -webkit-calc(100% - 140px);
	width: -moz-calc(100% - 140px);
	width: calc(100% - 140px);
	float: left;
	text-align: center;
}

/* portfolio_thumbnails
-----------------------------------------------------------------------------*/
.portfolio_thumbnails {
	padding: 0px 0px 10px 0px;
	text-align: center;
}

.portfolio_thumbnails_caption {
	padding: 0px 0px 20px 0px;
}

.portfolio_thumbnails ul li {
	text-align: left;
	position: relative;
}

.portfolio_thumbnail_link {}

.portfolio_thumbnail_image {
	box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.2);
}

.portfolio_thumbnail_image img {
	vertical-align: bottom;
}

.portfolio_thumbnail_caption {
	width: 92%;
	overflow: hidden;
	color: #fff;
	font-size: 13px;
	line-height: 14px;
	position: absolute;
	bottom: -10px;
	left: 0px;
	padding: 7px 4% 7px 4%;
	opacity: 0;
	background: rgba(72, 72, 72, 0.8);
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.portfolio_thumbnails ul li:hover .portfolio_thumbnail_caption {
	opacity: 1;
	bottom: 0px;
}

.portfolio_thumbnail_caption a {
	color: #FF0;
}


/* portfolio_index
-----------------------------------------------------------------------------*/
.portfolio_index {
	padding: 0px 0px 10px 0px;
	text-align: center;
}

.portfolio_index ul li {
	text-align: left;
	position: relative;
}

.portfolio_index_link {
	color: #FF0;
}

.portfolio_index_image {
	box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.2);
	overflow: hidden;
}

.portfolio_index_image img {
	vertical-align: bottom;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.portfolio_index ul li:hover .portfolio_index_image img {
	transform: scale(1.1);
}

.portfolio_index_caption {
	width: 80%;
	position: absolute;
	left: 5%;
	top: 50%;
	margin-top: -15%;
	opacity: 0.8;
	transition: all 0.5s ease;
	z-index: 2;
	background: rgba(72, 72, 72, 0.8);
	color: #fff;
	font-size: 30px;
	line-height: 30px;
	text-transform: uppercase;
	text-align: center;
	padding: 5%;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.portfolio_index ul li:hover .portfolio_index_caption {
	opacity: 1;
}


/* portfolio_slider
-----------------------------------------------------------------------------*/
.portfolio_slider {}

.portfolio_slider_previews_area {
	position: relative;
}

.portfolio_slider_previews {
	vertical-align: middle;
	height: 500px;
	overflow: hidden;
	margin-bottom: 10px;
}

.portfolio_slider_preview {
	width: auto;
	height: 500px;
	text-align: center;
}

.portfolio_slider_preview_link {
	width: auto;
	display: inline-block;
	text-align: center;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.portfolio_slider_preview_image {
	width: 100%;
	height: auto;
}

.portfolio_slider_preview_image img {
	width: 100%;
	height: auto;
}

.portfolio_slider_preview_caption {
	width: 94%;
	overflow: hidden;
	color: #fff;
	font-size: 14px;
	line-height: 15px;
	text-align: left;
	position: absolute;
	bottom: 0px;
	left: 0px;
	padding: 10px 3% 10px 3%;
	opacity: 1;
	background: rgba(72, 72, 72, 0.7);
}

.portfolio_slider_preview_caption small {
	color: #CCC;
}

.portfolio_slider_previews_last,
.portfolio_slider_thumbnails_last {
	position: absolute !important;
	top: 50%;
	margin-top: -20px;
	left: 20px;
}

.portfolio_slider_previews_last:after,
.portfolio_slider_thumbnails_last:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	background: url(images/portfolio_slider_last.png) center center no-repeat;
}

.portfolio_slider_previews_next,
.portfolio_slider_thumbnails_next {
	position: absolute !important;
	top: 50%;
	margin-top: -20px;
	right: 20px;
}

.portfolio_slider_previews_next:after,
.portfolio_slider_thumbnails_next:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	background: url(images/portfolio_slider_next.png) center center no-repeat;
}

.portfolio_slider_navigation {
	display: table;
	margin: 0 auto;
	margin-bottom: 15px;
}

.portfolio_slider_slideshow {
	position: relative;
}

.portfolio_slider_thumbnails_area {
	position: relative;
}

.portfolio_slider_thumbnails {
	margin-bottom: 10px;
}

.portfolio_slider_thumbnail {
	text-align: center;
}

.portfolio_slider_thumbnail_link {
	text-align: left;
	position: relative;
	width: auto;
	display: inline-block;
}

.portfolio_slider_thumbnail_image img {
	opacity: 0.7;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.portfolio_slider_thumbnail_image:hover img,
.portfolio_slider_thumbnails .slick-current img {
	opacity: 1 !important;
}

.portfolio_slider_thumbnail_caption {
	width: 92%;
	overflow: hidden;
	color: #fff;
	font-size: 13px;
	line-height: 14px;
	position: absolute;
	bottom: -10px;
	left: 0px;
	padding: 7px 4% 7px 4%;
	opacity: 0;
	background: rgba(72, 72, 72, 0.7);
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.portfolio_slider_thumbnail_link:hover .portfolio_slider_thumbnail_caption {
	opacity: 1;
	bottom: 0px;
}

.portfolio_slider_thumbnail_caption a {
	color: #FF0;
}


/* portfolio magnific-popup styles
-----------------------------------------------------------------------------*/
.mfp-figure {}

.mfp-close {}

.mfp-img {}

.mfp-bottom-bar {}

.mfp-title {
	font-size: 14px;
	line-height: 16px;
}

.mfp-title a {
	color: #FF0;
}

.mfp-title small {
	font-size: 13px;
	line-height: 14px;
	color: #fff;
}

.mfp-counter {}


/* breadcrumbs
-----------------------------------------------------------------------------*/
.breadcrumbs {
	font-size: 15px;
	line-height: 15px;
	color: #000;
	padding: 0px 0px 13px 0px;
	margin: 0px 0px 20px 0px;
	border-bottom: 1px solid #CCC;
}

.breadcrumbs ol {
	margin: 0px;
	padding: 0px;
	list-style: none;
	list-style-image: none;
}

.breadcrumbs ol li {
	position: relative;
	display: inline-block;
	padding: 0px 15px 0px 0px;
	margin: 0px 5px 0px 0px;
}

.breadcrumbs ol li:after {
	content: " / ";
	display: block;
	width: 20px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	text-align: right;
	font-size: 14px;
	line-height: 14px;
}

.breadcrumbs ol li:last-child {
	margin: 0;
}

.breadcrumbs ol li:last-child:after {
	content: "";
	display: block;
	width: 0px;
}

.breadcrumbs ol li a {
	color: #00978b;
}

.breadcrumbs ol li:hover a {
	text-decoration: underline;
}

/* Table
-----------------------------------------------------------------------------*/
.table {
	width: 100%;
	border-top: 1px solid #bdb6a3;
	border-left: 1px solid #bdb6a3;
}

.table tr {
	vertical-align: middle;
}

.table th,
.table td {
	padding: 5px;
	border-bottom: 1px solid #bdb6a3;
	border-right: 1px solid #bdb6a3;
	color: #64534c;
}

.table thead td,
.table tfoot td {
	background: #efae40 url(images/table_header_bg.png) top repeat-x;
	color: #fff;
	font-weight: normal;
	font-size: 18px;
	line-height: 18px;
	text-transform: uppercase;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.table tr th {
	font-weight: normal;
	font-size: 18px;
	line-height: 18px;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
	background: #ada48c;
}

.table tr:nth-child(odd) {
	background: #efede8;
}

.table tr:nth-child(even) {
	background: #f5f3ee;
}


/* belgard
-----------------------------------------------------------------------------*/
table.belgard td {
	padding: 0px 20px 20px 0px;
}

/* main styles
-----------------------------------------------------------------------------*/
.animatedParent {
	/*	overflow: hidden;*/
}

.page_wrapper {
	width: 1100px;
	height: 100%;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}

#main_wrapper {
	overflow: hidden;
}

.body_offset {
	padding-top: 47px;
}

.body_wrapper {
	max-width: 1920px !important;
	margin: 0 auto !important;
	float: none !important;
}

.box_fixed {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	margin-left: auto !important;
	margin-right: auto !important;
	z-index: 1000 !important;
	width: 100% !important;
	max-width: 1920px !important;
	float: none !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

/* header_slogan_box
-----------------------------------------------------------------------------*/
#header_slogan_box {
	width: 100%;
	position: relative;
	background: #0f2353;
	padding-bottom: 2px;
}

#header_slogan {
	float: left;
	color: #00978b;
	font-size: 13px;
	line-height: 13px;
	font-weight: 700;
	text-transform: uppercase;
	margin-top: 19px;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

#header_social {
	float: right;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.header_social_fix {
	top: -2px !important;
	right: 0 !important;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

#header_social ul {
	margin: 0;
	padding: 0;
	list-style: none;
	list-style-image: none;
}

#header_social ul li {
	float: left;
	display: table;
	margin: 9px 2px 0 3px;
	list-style: none;
	list-style-image: none;
}

#header_social ul li:last-child {
	margin: 9px 0 0 3px;
}

#header_social a img {
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
	opacity: 1;
}

#header_social a:hover img {
	opacity: .7;
}

#header_phone {
	position: relative;
	color: #fff;
	font-size: 14px;
	line-height: 14px;
	text-align: right;
	font-weight: 700;
	padding-left: 31px;
	margin-top: 9px;
	margin-right: 17px;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

#header_phone:before {
	position: absolute;
	content: "";
	width: 20px;
	height: 20px;
	top: -2px;
	left: 0;
	background: url(images/header_phone_bg.png) center center no-repeat;
}

/* Header
-----------------------------------------------------------------------------*/
#header {
	width: 100%;
	position: relative;
	height: 80px;
	background: #fff;
	z-index: 2;
}

.header_fix {
	position: fixed !important;
	height: 50px !important;
	top: 50px !important;
	left: 0 !important;
	box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
	z-index: 999 !important;
}

#header_logo {
	float: left;
	width: 184px;
	margin-top: 12px;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.header_logo_fix {
	transform: scale(0.7);
	margin-top: -4px !important;
	margin-left: -26px !important;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

/* menutop
-----------------------------------------------------------------------------*/
#menutop {
	float: right;
	margin-top: 27px;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

.menutop_fix {
	margin-top: 11px !important;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

#menutop ul {
	display: table;
	margin: 0 auto;
	padding: 0px;
	list-style: none;
	list-style-image: none;
}

#menutop li {
	float: left;
	padding: 0 23px;
	margin: 0;
}

#menutop li:first-child {
	padding: 0 23px 0 0;
}

#menutop li:last-child {
	padding: 0 0 0 23px;
}

#menutop li:nth-child(3) {
	padding: 0 17px 0 23px;
}

#menutop ul li a {
	display: block;
	color: #0f2353;
	font-size: 13px;
	line-height: 13px;
	font-weight: 700;
	height: 20px;
	text-align: center;
	text-transform: uppercase;
	padding: 7px 0 0 0;
	margin: 0;
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
}

#menutop ul li:hover a,
#menutop li.selected a {
	color: #00978b;
	text-decoration: none;
	background: url(images/menutop_hover_bg.png) left bottom repeat-x;
}

/* slideshow
-----------------------------------------------------------------------------*/
#slideshow {
	position: relative;
	width: 100%;
	height: 570px;
	z-index: 1;
}

.inside #slideshow {
	height: 320px;
}

#slideshow:before {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(35, 31, 32, .5);
	z-index: 101;
}

#slideshow ul {
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
	list-style-image: none;
}

#slideshow li {
	width: 100%;
	height: 100%;
	background-position: center bottom;
	background-repeat: no-repeat;
	list-style: none;
	list-style-image: none;
}

#slides_arrow_next {
	width: auto;
	position: absolute;
	top: 50%;
	margin-top: -86px;
	right: 40px;
	z-index: 101;
}

#slides_arrow_prev {
	width: auto;
	position: absolute;
	top: 50%;
	margin-top: -86px;
	left: 40px;
	z-index: 101;
}

#slideshow_slogan {
	width: 1100px;
	position: absolute;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	top: 149px;
	text-align: center;
	color: #fff;
	font-size: 18px;
	line-height: 18px;
	font-weight: 300;
	z-index: 201;
}

#slideshow_slogan span {
	display: block;
	font-size: 72px;
	line-height: 82px;
	font-weight: 700;
	margin-bottom: 10px;
}

#slideshow_slogan .a_button {
	background: #0f2353;
	margin-top: 33px;
}

#slideshow_slogan .a_button:hover {
	color: #03c3b4;
}

.inside #slideshow_slogan {
	top: 54px;
}

/* slideshow_pager
-----------------------------------------------------------------------------*/
#slideshow_pager {
	position: absolute;
	text-align: center;
	width: 100%;
	left: 0px;
	bottom: 20px;
	overflow: hidden;
	z-index: 101 !important;
}

.inside #slideshow_pager {
	bottom: 31px;
}

#slideshow_pager span {
	width: 10px;
	height: 10px;
	display: inline-block;
	cursor: pointer;
	background: url(images/slide_icon.png) center center no-repeat;
	padding: 0 2px 0 1px;
	font-family: arial;
	font-size: 0px;
}

#slideshow_pager span.cycle-pager-active {
	background: url(images/slide_icon_on.png) center center no-repeat;
}

#slideshow_pager>* {
	cursor: pointer;
}

/* box_services
-----------------------------------------------------------------------------*/
#box_services {
	position: relative;
	height: 436px;
	background: #c6c4c2 url(images/box_services_bg.jpg) center top no-repeat;
	padding: 0;
	text-align: center;
	z-index: 2;
}


/* middle
-----------------------------------------------------------------------------*/
#middle {
	position: relative;
	padding: 49px 0 60px 0;
	background: #fff;
}

.inside #middle {
	padding: 49px 0 40px 0;
	min-height: 400px;
	height: auto !important;
	height: 400px;
}

/* content
-----------------------------------------------------------------------------*/
#content {
	width: 1100px;
}

/* content_title
-----------------------------------------------------------------------------*/
.content_title {
	width: 100%;
	background: url(images/content_title_icon.png) center top no-repeat;
	color: #0f2353;
	font-size: 48px;
	line-height: 48px;
	font-weight: 700;
	text-align: center;
	padding: 85px 0 0 0;
	margin-bottom: 28px;
}

.content_title h1 {
	padding: 0px;
	margin: 0px;
	width: 100%;
	color: #0f2353;
	font-size: 48px;
	line-height: 48px;
	font-weight: 700;
	text-align: center;
}

#box_reviews .content_title {
	color: #fff;
}

#box_what_we_do_take .content_title {
	/*background: url(images/content_title_icon1.png) center top no-repeat;
	color: #fff;*/
}

#box_contact .content_title {
	color: #fff;
	margin-bottom: 34px;
}

/* service_area
----------------------------------------------------------------------------*/
#service_area {}

#service_area ul {
	margin: 10px 0px 0px 20px;
	padding: 0px;

	-moz-column-count: 4;
	-webkit-column-count: 4;
	column-count: 4;

	-moz-column-gap: 30px;
	-webkit-column-gap: 30px;
	column-gap: 30px;
}

#service_area span {
	font-size: 16px;
	line-height: 17px;
	font-weight: bold;
}

#service_area a[href="javascript:;"] {
	color: #666666;
	text-decoration: none;
	cursor: text;
}

/* box_what_we_do_take
-----------------------------------------------------------------------------*/
#box_what_we_do_take {
	position: relative;
	background: url(images/box_what_we_do_take_bg.jpg) center top no-repeat;
	background-size: cover;
	padding: 70px 0 70px 0;
	color: #fff;
	font-size: 20px;
	line-height: 26px;
}

#box_option1 {
	position: relative;
	float: left;
	width: 366px;
	height: 300px;
	background: #0f2353;
	text-align: center;
	padding-top: 30px;
}

#box_option1:after {
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	top: 0;
	right: 0;
	background: #fff;
}

#box_option2 {
	position: relative;
	float: left;
	width: 367px;
	height: 300px;
	background: #0f2353;
	text-align: center;
	padding-top: 30px;
}

#box_option2:after {
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	top: 0;
	right: 0;
	background: #fff;
}

#box_option3 {
	position: relative;
	float: left;
	width: 367px;
	height: 300px;
	background: #0f2353;
	text-align: center;
	padding-top: 30px;
}

#box_what_we_do_take p {
	margin: 0 0 10px 0;
	padding: 0 59px;
}

#box_what_we_do_take .a_button {
	height: 43px;
	box-sizing: border-box;
	padding: 13px 30px 0 30px;
	background: none;
	border: 2px #6f7b98 solid;
	margin-top: 29px;
}

#box_option1 span,
#box_option2 span,
#box_option3 span {
	display: block;
	font-size: 29px;
	line-height: 32px;
	font-weight: 700;
	color: #fff;
	padding: 0 0 10px 0;
	margin: 15px auto 0 auto;
	width: 80%;
}

/* box_reviews
-----------------------------------------------------------------------------*/
#box_reviews {
	position: relative;
	height: 506px;
	background: url(images/box_reviews_bg.jpg) center top no-repeat;
	padding: 60px 0;
	z-index: 1;
}

#box_reviews:after {
	/*position: absolute;
	content: "";
	display: block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background:rgba(35,31,32,.3);
	z-index:-1;*/
}

#box_reviews1 {
	height: 456px;
	background: #0f2353;
	padding: 50px 0 0 0;
}

/* reviews_show
-----------------------------------------------------------------------------*/
#reviews_show {
	position: relative;
	display: table;
	width: 883px;
	padding: 0;
	margin: 0 auto;
}

#reviews_show ul {
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	list-style-image: none;
	font-size: 0;
	line-height: 0;
}

#reviews_show li {
	width: 883px;
	height: 120px;
	overflow: hidden;
	list-style: none;
	list-style-image: none;
	text-align: center;
	padding: 0 0 12px 0;
	color: #fff;
}

#reviews_slides_arrow_next {
	position: absolute;
	width: auto;
	top: 187px;
	right: 42px;
	z-index: 101;
}

#reviews_slides_arrow_prev {
	position: absolute;
	width: auto;
	top: 187px;
	left: 42px;
	z-index: 101;
}

/* reviews_pager
-----------------------------------------------------------------------------*/
#reviews_pager {
	position: absolute;
	text-align: center;
	width: 100%;
	left: 0;
	bottom: 125px;
	overflow: hidden;
	z-index: 101 !important;
}

#reviews_pager span {
	width: 10px;
	height: 10px;
	display: inline-block;
	cursor: pointer;
	background: url(images/slide_icon.png) center center no-repeat;
	padding: 0 2px 0 1px;
	font-family: arial;
	font-size: 0px;
}

#reviews_pager span.cycle-pager-active {
	background: url(images/slide_icon_on.png) center center no-repeat;
}

#reviews_pager>* {
	cursor: pointer;
}

#box_reviews .a_button {
	height: 43px;
	box-sizing: border-box;
	padding: 13px 30px 0 30px;
	background: none;
	border: 2px #6f7b98 solid;
	margin-top: 69px;
}

/* box_contact
-----------------------------------------------------------------------------*/
#box_contact {
	position: relative;
	width: 100%;
	height: 498px;
	padding: 65px 0 0 0;
	background: url(images/box_contact_bg.jpg) center top no-repeat;
	color: #fff;
	z-index: 1;
}

#box_contact:before {
	/*position:absolute;
	content:"";
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background:rgba(35,31,32,.33);
	z-index:-1;*/
}

#box_contact form {
	width: 100%;
}

/* form_contact
-----------------------------------------------------------------------------*/
#form_contact {
	position: relative;
	width: 100%;
	padding: 0;
	margin: 0 auto;
}

#form_contact fieldset {
	border: none;
	padding: 0;
	margin: 0;
}

#form_contact input[type=text],
#form_contact input[type=email],
#form_contact input[type=date],
#form_contact select,
#form_contact textarea {
	margin: 0 0 12px 0 !important;
	height: 45px;
	padding: 0 14px;
	background: #fff;
	border: none !important;
	color: #0f2353 !important;
	font-weight: 700;
	font-size: 14px;
	line-height: 45px;
}

#form_contact input:required {
	color: #0f2353 !important;
	background: #fff url(images/placeholder_req_bg.png) 9px 11px no-repeat;
}

#form_contact input:required:active,
#form_contact input:required:focus,
#form_contact input:required:valid {
	background: #fff;
}

#form_contact input.submit {
	border: none;
	padding: 0 42px;
	height: 45px;
	line-height: 45px;
}

#form_contact #scode_block #scode {
	margin: 0 10px !important;
	font-size: 20px;
	height: 45px;
}

#form_contact textarea {
	padding: 0 14px;
	margin: 0 !important;
	height: 159px;
}

#form_contact table#table_form {
	width: 100%;
}

#form_contact table#table_form td {
	width: 49%;
	padding: 0;
	margin: 0;
	padding-right: 1.5%;
	vertical-align: top;
}

#form_contact table#table_form td:last-child {
	padding: 0;
}

#form_contact #scode_block {
	margin-top: 2px;
	font-size: 15px;
	color: #fff;
}

#form_contact #scode_block table td {
	padding: 0 !important;
}

#form_contact #scode_block #img_code {
	border: none;
}

/* Footer
----------------------------------------------------------------------------*/
#footer {
	position: relative;
	color: #d1d1d1;
	background: #0f2353;
	padding: 50px 0 67px 0;
	font-size: 14px;
	line-height: 18px;
	text-align: center;
}

#footer_logo {
	display: table;
	width: 185px;
	margin: 0 auto 28px auto;
}

#footer_address {}

#footer_address span {
	color: #fff;
	font-weight: 700;
}

#footer_links {}

#footer_links a {
	color: #d1d1d1;
}

/* Contact
-----------------------------------------------------------------------------*/

#contact_address {
	width: 250px;
	float: left;
}

#contact_form {
	width: 800px;
	float: right;
}

/* styles
-----------------------------------------------------------------------------*/
#scroll_top {
	display: none;
	position: fixed;
	bottom: 15px;
	right: 15px;
	width: 47px;
	height: 47px;
	background: #00978b url(images/scroll_top_bg.png) center no-repeat;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
	transition: all 250ms ease-in;
	-webkit-transition: all 250ms ease-in;
	z-index: 1000;
}

#scroll_top:hover {
	background: #105a54 url(images/scroll_top_bg.png) center no-repeat;
	text-decoration: none;
}

/*******************************************/
@media screen and (-webkit-min-device-pixel-ratio:0) {
	html {
		/*margin-left: 1px;*/
	}

	/*html.evenWidth {
        margin-left: 0;
    }*/
}

/****************************************/
#welcome_text {}

#welcome_text .a_button {
	display: table;
	margin: 33px auto 0 auto;
}

.small_font {
	font-size: small;
}

#read_more_links {}

#read_more_links strong a {
	color: #000;
}

#read_more_links strong a span {
	color: #4e9707;
}

/****************************************/
span.dollar {
	position: relative;
}

span.dollar:before {
	position: absolute;
	content: "$";
	top: -2px;
	left: 5px;
	color: #000;
}

span.dollar input {
	padding-left: 15px !important;
}

.integral_phone {
	display: inline-block;
	white-space: nowrap;
	font-weight: 700;
}

/* Promo Cards */
#box_promos {
	padding: 50px 0;
}

.promo-cards-container {
	padding-top: 40px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
}

.promo-card {
	flex: 1;
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	display: flex;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
	min-height: 250px;
}

.promo-card-image {
	flex: 0 0 50%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.promo-card-content {
	flex: 1;
	padding: 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.promo-card-content h3 {
	font-size: 24px;
	line-height: 1.2;
	color: #0d1e43;
	margin-bottom: 15px;
	font-weight: 700;
	text-align: left;
}

.promo-card-content p {
	font-size: 16px;
	color: #555;
	margin-bottom: 25px;
	text-align: left;
}

/* Inspiration Gallery */
#box_gallery {
	padding: 60px 0;
	background-color: white;
}

.gallery-section-micro .text-stack-center {
	text-align: center;
	margin-bottom: 40px;
}

.gallery-wrap {
	width: 100%;
}

.gallery_grid {
	display: grid;
	grid-template-columns: 1fr 0.6fr 1fr 1.15fr;
	grid-template-rows: 250px 250px;
	gap: 15px;
	align-items: stretch;
}

.gallery_thumbnail-wrapper {
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: 8px;
}

.gallery_grid>a:nth-child(1) {
	grid-column: 1 / 3;
	grid-row: 1 / 2;
}

.gallery_grid>a:nth-child(2) {
	grid-column: 3 / 4;
	grid-row: 1 / 2;
}

.gallery_grid>a:nth-child(3) {
	grid-column: 4 / 5;
	grid-row: 1 / 3;
}

.gallery_grid>a:nth-child(4) {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
}

.gallery_grid>a:nth-child(5) {
	grid-column: 2 / 4;
	grid-row: 2 / 3;
}

.gallery_image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}

.gallery_thumbnail-wrapper:hover .gallery_image {
	transform: scale(1.05);
}

.gallery_icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 10;
}

.gallery_thumbnail-wrapper:hover .gallery_icon {
	opacity: 1;
}

.gallery_thumbnail-wrapper::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.3);
	opacity: 0;
	transition: opacity 0.3s ease;
}

.gallery_thumbnail-wrapper:hover::after {
	opacity: 1;
}

/* box_customer_reviews
-----------------------------------------------------------------------------*/
#box_customer_reviews {
	background-color: #f9f7fa;
	background-size: cover;
	padding-top: 55px;
	font-family: Arial, 'Ubuntu', sans-serif;
}

.reviews_masonry_wrap {
	position: relative;
	max-height: 920px;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(to bottom, black 65%, transparent 100%);
	mask-image: linear-gradient(to bottom, black 65%, transparent 100%);
}

.reviews_masonry {
	-webkit-column-count: 3;
	-moz-column-count: 3;
	column-count: 3;
	-webkit-column-gap: 20px;
	-moz-column-gap: 24px;
	column-gap: 24px;
	width: 100%;
}

.review_card {
	background: #fff;
	border-radius: 8px;
	padding: 24px;
	margin-bottom: 24px;
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
	border: 1px solid #f0f0f0;
	display: inline-block;
	/* Helps prevent breaking across columns */
	width: 100%;
	box-sizing: border-box;
}

.review_header {
	display: flex;
	align-items: center;
	margin-bottom: 16px;
}

.review_avatar {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	object-fit: cover;
	margin-right: 16px;
	background: #7ca887;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
}

.review_meta {
	flex: 1;
}

.review_nameLine {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 4px;
}

.review_name {
	font-size: 15px;
	font-weight: 700;
	color: #2b2b4d;
}

.review_date {
	font-size: 12px;
	color: #adb5bd;
}

.review_stars {
	color: #f09e3a;
	font-size: 28px;
	letter-spacing: 2px;
}

/* Star rating styling */
.review_meta .fa-star {
	font-size: 16px;
	/* control star size */
	color: #f09e3a;
	/* default star color (empty) */
	margin-right: 2px;
	/* small spacing */
}

.review_meta .checked {
	color: #e3e3e3;
	/* gold star */
}

.review_text {
	font-size: 14px;
	color: #636b75;
	line-height: 1.6;
	margin: 0;
	font-weight: 400;
}


/* Quote Gallery Popup
-----------------------------------------------------------------------------*/
.quote-gallery-popup-wrapper {
	background: #f4f7fa;
	width: 100%;
	height: 100vh;
	margin: 0;
	padding: 40px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
}

.qg-popup-inner {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	max-width: 1200px;
	justify-content: center;
	align-items: center;
	gap: 30px;
	margin: 0 auto;
}

.qg-form-col {
	width: 450px;
	background-color: #30323e;
	color: #fff;
	padding: 40px;
	border-radius: 8px;
	box-sizing: border-box;
	flex-shrink: 0;
}

.qg-form-col h3 {
	color: #fff;
	font-size: 32px;
	margin: 0 0 10px 0;
	padding: 0;
	text-align: center;
}

.qg-form-col p {
	color: #fff;
	font-size: 16px;
	margin: 0 0 25px 0;
	text-align: center;
}

.qg-form-col form {
	width: 100%;
}

.qg-form-row {
	display: flex;
	justify-content: space-between;
}

.qg-form-row input {
	width: 48% !important;
}

.qg-form-col input {
	width: 100%;
	padding: 12px;
	margin-bottom: 15px;
	border: none;
	border-radius: 4px;
	box-sizing: border-box;
	font-size: 14px;
	color: #333;
	background: #fff;
	height: 44px;
}

.qg-form-col ::-webkit-input-placeholder {
	color: #999 !important;
	font-weight: 400 !important;
	text-transform: none !important;
	font-size: 15px !important;
}

.qg-form-col ::-moz-placeholder {
	color: #999 !important;
	font-weight: 400 !important;
	text-transform: none !important;
	font-size: 15px !important;
}

.qg-form-col :-ms-input-placeholder {
	color: #999 !important;
	font-weight: 400 !important;
	text-transform: none !important;
	font-size: 15px !important;
}

.qg-submit-btn {
	width: 100%;
	background-color: #194a7a;
	color: #fff;
	border: none;
	padding: 15px;
	font-size: 18px;
	font-weight: 700;
	cursor: pointer;
	border-radius: 4px;
	transition: background-color 0.3s ease;
}

.qg-submit-btn:hover {
	background-color: #10345b;
}

.qg-slider-col {
	flex-grow: 1;
	position: relative;
	border-radius: 8px;
	overflow: hidden;
}

.qg-slider {
	/* height determined by contents */
}

.qg-slider .slick-list,
.qg-slider .slick-track,
.qg-slider .slick-slide,
.qg-slider .slick-slide>div {
	/* allow to flow */
}

.qg-slider img {
	width: 100%;
	max-height: 300px;
	object-fit: cover;
	display: block;
	border-radius: 8px;
}

/* Slider arrows */
.qg-slider-prev,
.qg-slider-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	background: #fff;
	border: none;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	cursor: pointer;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
	display: flex;
	align-items: center;
	justify-content: center;
	outline: none;
	opacity: 0.8;
}

.qg-slider-prev {
	left: 20px;
}

.qg-slider-next {
	right: 20px;
}

.qg-slider-prev svg,
.qg-slider-next svg {
	fill: #000;
	width: 24px;
	height: 24px;
}

.qg-slider-prev:hover,
.qg-slider-next:hover {
	background: #f0f0f0;
	opacity: 1;
}

/* Close button positioning */
/* Override default magnific popup close button to be fixed */
.mfp-fullscreen-popup .mfp-close {
	color: #fff !important;
	right: 30px !important;
	top: 30px !important;
	background: #194a7a !important;
	width: 40px !important;
	height: 40px !important;
	line-height: 40px !important;
	border-radius: 50%;
	opacity: 1 !important;
	text-align: center;
	padding: 0;
	font-size: 24px !important;
	position: absolute !important;
	z-index: 10000 !important;
	cursor: pointer !important;
}

.mfp-fullscreen-popup .mfp-close:hover {
	background: #10345b !important;
}

/* Remove default magnific popup padding so our full viewport height works properly */
.mfp-fullscreen-popup .mfp-container {
	padding: 0 !important;
}

@media screen and (max-width: 900px) {
	.quote-gallery-popup-wrapper {
		height: auto;
		min-height: 100vh;
	}

	.qg-popup-inner {
		flex-direction: column;
	}

	.qg-form-col {
		width: 100%;
		margin-bottom: 20px;
	}

	.qg-slider-col {
		width: 100%;
		flex-grow: 0;
	}
}

/* Bottom Newsletter Popup
-----------------------------------------------------------------------------*/
.newsletter-popup-wrap {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 10001;
	background: linear-gradient(to top, #6b1d05, #1a0400);
	color: #fff;
	box-shadow: 0 -5px 20px rgba(0, 0, 0, 0.5);
	transition: bottom 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.newsletter-popup-wrap.hide-popup {
	bottom: -150%;
}

.newsletter-popup-wrap.show-popup {
	bottom: 0;
}

.newsletter-popup-inner {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 20px 50px 20px;
	text-align: center;
	position: relative;
}

/* Close Button */
.newsletter-close-btn {
	position: absolute;
	top: 60px;
	right: 35px;
	background: none;
	border: none;
	color: #bf0000;
	font-size: 66px;
	line-height: 1;
	cursor: pointer;
	padding: 0;
	font-weight: 900;
}

.newsletter-close-btn:hover {
	color: #ff0000;
}

/* Header Title */
.newsletter-header h2 {
	font-family: impact, sans-serif;
	font-size: 65px;
	color: #ff7a00;
	text-shadow: 3px 3px 0 #000;
	margin: 0 0 10px 0;
	font-weight: normal;
	text-decoration: underline;
	letter-spacing: 1px;
	vertical-align: baseline;
	letter-spacing: 3.25px;
	font-weight: 400;
	font-style: italic;
}

.newsletter-logo {
	height: 80px;
	width: auto;
}

/* Sub Heading */
.newsletter-sub {
	font-family: impact, sans-serif;
	font-size: 28px;
	font-weight: 400;
	margin-top: 35px;
	margin-bottom: 25px;
	color: #ffffff;
	text-shadow: 1px 1px 2px #000;
	vertical-align: baseline;
}

/* Description Text */
.newsletter-desc {
	font-family: impact, sans-serif;
	font-size: 26px;
	font-weight: 400;
	margin-bottom: 25px;
	line-height: 1.3;
	color: #ffffff;
}

/* Form */
#newsletter_form {
	max-width: 650px;
	margin: 0 auto;
	text-align: left;
}

.newsletter-form-group {
	display: flex;
	flex-direction: column;
}

.newsletter-form-group label {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 6px;
	color: #fff;
}

/* Input + Button Layout */
.newsletter-input-wrap {
	display: flex;
	align-items: center;
	gap: 15px;
}

/* Email Field */
#newsletter-email {
	flex-grow: 1;
	background: #b8aaa2;
	border: 3px solid #e6e6e6;
	padding: 14px 18px;
	font-size: 18px;
	color: #000;
	height: 52px;
	box-sizing: border-box;
}

#newsletter-email::placeholder {
	color: #444;
}

/* Submit Button */
.newsletter-submit-btn {
	background: #000;
	color: #fff;
	border: 3px solid #fff;
	padding: 0 40px;
	font-size: 18px;
	font-weight: bold;
	height: 52px;
	cursor: pointer;
	border-radius: 8px;
	box-sizing: border-box;
	transition: all 0.3s ease;
}

.newsletter-submit-btn:hover {
	background: #222;
	transform: scale(1.05);
}

/* Mobile Responsive */
@media screen and (max-width: 768px) {

	.newsletter-header h2 {
		font-size: 40px;
	}

	.newsletter-sub {
		font-size: 18px;
	}

	.newsletter-desc {
		font-size: 20px;
	}

	.newsletter-input-wrap {
		flex-direction: column;
	}

	#newsletter-email,
	.newsletter-submit-btn {
		width: 100%;
	}

	.newsletter-close-btn {
		right: 20px;
		top: 20px;
	}
}