@import url("../CherryFramework/style.css");
@import url(//fonts.googleapis.com/css?family=PT+Sans:700,700italic,400,400italic);
a[href^="tel:"] {
	color:inherit;
	text-decoration:none;
}
a {
	-webkit-transition:all 0.3s ease;
	-moz-transition:all 0.3s ease;
	-o-transition:all 0.3s ease;
	transition:all 0.3s ease;
}
a:hover, a:focus { text-decoration:none; }
h1, h2, h3, h4, h5, h6 {
	margin-top:0;
	text-transform:uppercase;
}
h3 { text-transform:none; }
h2 { margin-bottom:32px; }
h4, h5 {
	text-transform:none;
	margin-bottom:0;
}
p { margin:0 0 26px 0; }
.btn, .comment-reply-link {
	background:none;
	border:none;
	-webkit-border-radius:0px;
	-moz-border-radius:0px;
	border-radius:0px;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
	color:#3c3742;
	cursor:pointer;
	display:inline-block;
	font-size:15px;
	line-height:26px;
	font-weight:bold;
	margin:25px 0 0 0;
	padding:0 35px 0 0;
	text-align:left;
	text-shadow:none;
	position:relative;
}
.btn:after, .comment-reply-link:after {
	color:#fac785;
	content:"\f0a9";
	display:inline-block;
	font-family:FontAwesome;
	font-size:25px;
	line-height:26px;
	position:absolute;
	top:1px;
	right:1px;
}
.btn:hover, .comment-reply-link:hover { color:#fac785; }
.btn:hover:after, .comment-reply-link:hover:after { color:#3c3742; }
.btn:focus, .comment-reply-link:focus { color:#3c3742; }
.btn:hover, .btn:focus, .comment-reply-link:hover, .comment-reply-link:focus {
	background:none;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
}
input.btn {
	padding-right:0 !important;
	padding-left:0 !important;
}
.hr { background:#d9d9d9; }
.spacer { height:67px; }
.extra-wrap h1 {
	padding-top:30px;
	margin-bottom:30px;
}
.extra-wrap p { margin-bottom:0; }
.extra-wrap .spacer { height:26px; }
.extra-wrap .clear {
	display:none;
	height:30px;
}
#back-top span { background-color:#726b79; }
.zoom-icon:before {
	background:url("images/zoom.png") no-repeat 0 0;
	width:48px;
	height:61px;
	margin:-30px 0 0 -24px;
}
.logo { margin:0 25px 0 8px; }
a.logo_link:hover, a.logo_link:focus {
	text-decoration:none;
	color:inherit;
}
p.logo_tagline { margin:0; }
.logo_h__txt { text-transform:lowercase; }
.nav__primary { margin:39px 0px 0 25px; }
#topnav {
	float:none;
	display:inline-block;
}
#topnav li {
	background:none;
	text-align:left;
}
#topnav li a {
	text-transform:uppercase;
	border:none;
	padding:0;
}
#topnav li a >.sf-sub-indicator {
	background-image:url(images/arrows-ffffff.png);
	top:auto;
	bottom:-10px;
	left:50%;
	margin-left:-5px;
}
#topnav li .sub-menu {
	width:139px;
	position:absolute;
	background:#fac785;
	padding:20px 0px 20px 0px;
	top:30px;
}
#topnav li .sub-menu li {
	display:block;
	font-size:11px;
	line-height:15px;
	margin-top:15px;
	padding:0 15px;
	width:100%;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
#topnav li .sub-menu li a { color:#fff; }
#topnav li .sub-menu li a .sf-sub-indicator {
	background-image:url(images/arrows-ffffff.png);
	top:50%;
	left:auto;
	right:0px;
	margin-top:-5px;
}
#topnav li .sub-menu li:first-child { margin-top:0; }
#topnav li .sub-menu li>a:hover, #topnav li .sub-menu li>a:focus, #topnav li .sub-menu li.sfHover>a, #topnav li .sub-menu li.current-menu-item>a {
	color:#3c3742;
	background:none;
}
#topnav li .sub-menu .sub-menu { top:-20px; }
#topnav >li { margin-left:19px; }
#topnav >li:first-child { margin-left:0; }
#topnav >li.current-menu-item>a, #topnav li.sfHover>a, #topnav li a:hover {
	background:none;
	color:#bfb9c5;
}
.slider { margin-bottom:61px; }
.camera_prev, .camera_next, .camera_commands {
	width:44px;
	height:44px;
	background:#fac785;
	margin:0;
	bottom:21px;
	top:auto;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	padding:2px;
}
.camera_prev >span, .camera_next >span, .camera_commands >span {
	background:url("images/prev-next.gif") no-repeat 0 0;
	display:block;
	height:5px;
	width:3px;
	margin:-2px 0 0 -2px;
	position:absolute;
	left:50%;
	top:50%;
}
.camera_prev .camera_play, .camera_prev .camera_stop, .camera_next .camera_play, .camera_next .camera_stop, .camera_commands .camera_play, .camera_commands .camera_stop {
	width:40px;
	height:40px;
}
.camera_prev:hover, .camera_next:hover, .camera_commands:hover { background:#726b79; }
.cameraContents:after {
	content:"";
	height:1px;
	display:block;
	background:#d9d9d9;
	left:215px;
	right:120px;
	bottom:43px;
	position:absolute;
	z-index:99;
}
.camera_commands {
	right:92px;
	background:#fac785;
}
.camera_prev {
	right:46px;
	left:auto;
}
.camera_prev>span { background-position:0 0; }
.camera_next>span { background-position:right 0; }
.camera_caption { top:0px; }
.camera_caption a { margin-top:40px; }
.camera_caption { left:0; }
.camera_caption >div {
	background:none;
	padding:0;
}
.camera_caption span {
	display:block;
	font-size:14px;
	line-height:20px;
	color:#b7b5ba;
	text-transform:uppercase;
}
.camera_caption strong {
	display:block;
	font-size:80px;
	line-height:60px;
	color:#3c3742;
	text-transform:uppercase;
	font-weight:bold;
	margin-top:20px;
}
.camera_caption em {
	display:block;
	font-style:normal;
	font-weight:normal;
	font-size:100px;
	line-height:100px;
	color:#fac785;
	font-family:Pacifico;
	margin-top:-30px;
}
.camera_caption a {
	background:#fac785;
	font-size:42px;
	line-height:1em;
	color:#fff;
	font-weight:bold;
	text-transform:uppercase;
	display:inline-block;
	padding:23px 40px;
}
.camera_caption a:hover {
	text-decoration:none;
	background:#726b79;
}
.camera_thumbs_cont, .camera_pag {
	position:absolute;
	bottom:-70px;
	left:0;
	right:0;
	display:inline-block;
	background:none;
}
#content { padding-top:65px; }
.content-holder { padding-bottom:75px; }
.service-box {
	background:none;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border-radius:0;
	border:none;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
	padding:0;
	overflow:visible;
	padding:99px 0 0 0;
}
.box-1 { background:url("images/icon-1.jpg") no-repeat 0 0; }
.box-2 { background:url("images/icon-2.jpg") no-repeat 0 0; }
.box-3 {
	background:url("images/icon-3.jpg") no-repeat 0 0;
	margin-bottom:0 !important;
}
.service-box h2 {
	font-size:22px;
	line-height:22px;
	border-top:#d9d9d9 1px solid;
	position:relative;
	overflow:visible;
	padding-top:31px;
	margin-bottom:20px;
}
.service-box h2:after {
	content:"";
	top:-5px;
	left:0;
	width:69px;
	height:8px;
	background:#fac785;
	border-right:#fff 21px solid;
	position:absolute;
}
.motopress-wrapper.content-holder{
	    margin-top: 169px;
}
.single-post .motopress-wrapper.content-holder{
	margin-top: 0;
}
.service-box .btn-align { text-align:left; }
.service-box_txt { margin-bottom:0px; }
.service-box_txt { padding-right:100px; }
.service-box .icon { margin:20px 10px 10px 0; }
.block-1 h1 { padding-top:30px; }
.title-section { padding-top:64px; }
.title-section h1 { margin-bottom:19px; }
.title-section .breadcrumb {
	-webkit-border-radius:0px;
	-moz-border-radius:0px;
	border-radius:0px;
	background:#f3f3f3;
	padding:7px 20px 8px 20px;
}
.title-section .breadcrumb li { text-shadow:none; }
.title-section .breadcrumb li a { color:#9a979e; }
.title-section .breadcrumb li a:hover { color:#fac785; }
.title-section .breadcrumb .active { color:#fac785; }
.title-section .breadcrumb .divider { padding: 0 5px; color: #ccc; list-style: none; }
.title-section .breadcrumb .divider::before { content: '/'; }
.dropcap {
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border-radius:0;
	background:#fac785;
	font-weight:bold;
	font-size:42px;
	line-height:50px;
	color:#fff;
	height:50px;
	width:50px;
}
.thumbnail {
	border:none;
	border-radius:0;
	box-shadow:none;
	padding:0px;
}
.team li { margin-bottom:0; }
.team li figure.featured-thumbnail {
	margin-bottom:12px;
	display:block;
	float:none;
}
.filter-wrapper {
	color:#3c3742;
	padding-top:16px;
}
.filter-wrapper strong { margin-right:15px; }
.filter-wrapper .nav-pills { margin-bottom:34px; }
.filter-wrapper .nav-pills>li { margin-left:28px; }
.filter-wrapper .nav-pills>li:first-child { margin-left:0px; }
.filter-wrapper .nav-pills>li>a {
	font-size:22px;
	line-height:26px;
	font-weight:bold;
	padding:0;
	background:none;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border-radius:0;
	margin:0;
	text-transform:uppercase;
	color:#3c3742;
}
.filter-wrapper .nav-pills>.active>a, .filter-wrapper .nav-pills>.active>a:hover, .filter-wrapper .nav-pills>.active>a:focus {
	background:none;
	color:#fac785;
}
.filter-wrapper .nav-pills a, .filter-wrapper .nav-pills a:hover, .filter-wrapper .nav-pills a:focus {
	background:none;
	color:#fac785;
}
.filter-wrapper strong {
	font-size:22px;
	padding:0;
	line-height:26px;
	text-transform:uppercase;
}
.filterable-portfolio .thumbnail { margin-bottom:12px; }
.filterable-portfolio p.excerpt { margin-bottom:0; }
.pagination__posts a, .pager li>a {
	-webkit-border-radius:0 !important;
	-moz-border-radius:0 !important;
	border-radius:0 !important;
	color:#9a979e !important;
}
.post_meta i { color:#fac785; }
.post_meta a { color:#9a979e; }
.post_meta a:hover { color:#fac785; }
#sidebar { padding-top:105px; }
.sidebar ul, #recent-author-comments ul {
	margin:0;
	padding:0;
	list-style:none;
}
.sidebar ul li, #recent-author-comments ul li {
	margin-top:9px;
	padding-left:20px;
	line-height:26px;
	background:url("images/marker.png") no-repeat 0 11px;
}
.sidebar ul li:first-child, #recent-author-comments ul li:first-child { margin-top:0; }
.sidebar ul li a, #recent-author-comments ul li a {
	color:#49444f;
	font-weight:bold;
	line-height:26px;
}
.sidebar ul li a:hover, #recent-author-comments ul li a:hover { color:#fac785; }
.comments-custom a:hover { color:#fac785 !important; }
.categories { margin-bottom:60px; }
.sidebar h3 {
	font-size:42px;
	line-height:42px;
	text-transform:uppercase;
	margin-bottom:32px;
}
.post_content .btn { margin-top:0; }
.post-author { padding:18px 20px 20px 20px; }
.post-author h1, .post-author h3.post-author_h {
	font-size:22px;
	text-transform:uppercase;
	line-height:22px;
	margin:0 0 20px 0;
}
.post-author h1 small, .post-author h3.post-author_h small {
	font-size:22px;
	line-height:22px;
	font-weight:bold;
	color:#3C3742;
}
.post-author .avatar { border:1px solid #d9d9d9; }
#recent-author-comments { margin-top:30px; }
.google-map { margin-bottom:40px; }
.related-posts h3 {
	font-size:42px;
	line-height:42px;
	text-transform:uppercase;
	margin:30px 0 30px 0;
}
.related-posts a {
	font-size:15px;
	line-height:26px;
	font-weight:bold;
}
.comment-reply-link { margin-top:0; }
.comment.bypostauthor .comment-body {
	background:#fff;
	border-color:#d9d9d9;
}
#commentform textarea { border-color:#d9d9d9; }
.search-form input.search-form_it {
	width:80%;
	float:left;
}
.search-form .btn {
	margin-top:0px;
	margin-left:15px;
	float:left;
}
.error404-holder_num { color:#fac785; }
#nsu-form-1 {
	background:#fac785;
	border:#fff 1px solid;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	position:relative;
	height:55px;
}
#nsu-form-1 p { margin:0; }
#nsu-form-1 label { margin:0; }
#nsu-form-1 input.nsu-field {
	color:#fff;
	background:none;
	border:none;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	margin:0;
	padding:16px 142px 17px 22px !important;
	height:53px !important;
	line-height:20px !important;
	font-size:15px;
	text-transform:uppercase;
	width:100%;
	display:block;
}
#nsu-form-1 input.nsu-submit {
	position:absolute;
	top:-1px;
	right:-1px;
	background:#fff;
	-webkit-border-radius:0 !important;
	-moz-border-radius:0 !important;
	border-radius:0 !important;
	padding:13px 30px 14px 30px !important;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	border:none;
	text-transform:uppercase;
	font-size:22px;
	height:55px !important;
	line-height:28px !important;
	color:#fac785;
	font-weight:bold;
}
#nsu-form-1 input.nsu-submit:hover {
	background:#fbcf97;
	color:#fff;
}
#nsu-form-1 span {
	position:absolute;
	bottom:-20px;
	left:0;
}
.mc4wp-form {
	background:#fac785;
	border:#fff 1px solid;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	position:relative;
	height:55px;
}
@media (max-width: 767px) {
	.mc4wp-form { margin:30px 0 0 0; }
}
.mc4wp-form p { margin:0; }
.mc4wp-form label { margin:0; }
.mc4wp-form input[type="text"], .mc4wp-form input[type="email"] {
	color:#fff;
	background:none;
	border:none;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	margin:0;
	padding:16px 142px 17px 22px !important;
	height:53px !important;
	line-height:20px !important;
	font-size:15px;
	text-transform:uppercase;
	width:100%;
	display:block;
}
@media (max-width: 480px) {
	.mc4wp-form input[type="text"], .mc4wp-form input[type="email"] {
		padding-right:125px !important;
		padding-left:15px !important;
	}
}
.mc4wp-form input[type="submit"] {
	position:absolute;
	top:-1px;
	right:-1px;
	background:#fff;
	-webkit-border-radius:0 !important;
	-moz-border-radius:0 !important;
	border-radius:0 !important;
	padding:13px 30px 14px 30px !important;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	border:none;
	text-transform:uppercase;
	font-size:22px;
	height:55px !important;
	line-height:28px !important;
	color:#fac785;
	font-weight:bold;
}
.mc4wp-form input[type="submit"]:hover {
	background:#fbcf97;
	color:#fff;
}
@media (max-width: 480px) {
	.mc4wp-form input[type="submit"] {
		padding-right:15px !important;
		padding-left:15px !important;
	}
}
.banners { padding-bottom:30px; }
ul.post-list li {
	margin-top:0;
	background:none;
	padding-left:0;
}
ul.post-list li .excerpt { margin-bottom:0; }
ul.post-list li time { color:#fac785; }
#social_networks-2 ul li {
	margin-top:0;
	background:none;
	padding-left:0;
}
ul.comments-custom li {
	margin-top:0;
	background:none;
	padding-left:0;
}
ul.comments-custom li .featured-thumbnail {
	border:1px solid #d9d9d9;
	padding:19px;
}
ul.comments-custom li h4 {
	font-weight:normal;
	color:#fac785;
}
ul.comments-custom li .comments-custom_txt {
	border:none;
	padding:0;
}
ul.comments-custom li .comments-custom_txt a {
	font-weight:normal;
	color:#9a979e;
}
ul.comments-custom li .comments-custom_txt a:hover { text-decoration:none; }
ul.banners li {
	margin-top:0;
	background:none;
	padding-left:0;
}
.footer {
	padding:0;
	border-top:none;
}
.footer .span12, .footer .container {
	width:100%;
	padding:0;
}
.search-form input {
	line-height:18px;
	font-size:15px;
	padding:7px 10px 8px 10px;
	height:33px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
input.btn {
	margin-top:0px;
	padding-right:0;
}
input { height:33px !important; }
input, textarea {
	-webkit-box-shadow:none !important;
	-moz-box-shadow:none !important;
	box-shadow:none !important;
	line-height:18px !important;
	padding:6px 10px 7px 10px !important;
}
input:focus, input:active, textarea:focus, textarea:active { border-color:#d9d9d9 !important; }
form p.field { margin-bottom:10px !important; }
@media (min-width: 1200px) {
	.search-form input.search-form_it {
		width:290px;
		float:left;
	}
	.camera_caption { top:63px; }
	.camera_caption a { margin-top:105px; }
}
@media (min-width: 980px) and (max-width: 1199px) {
	.service-box_txt { padding-right:50px; }
}
@media (max-width: 980px) {
	.cameraContents:after { left:145px; }
	p img.alignleft { float:none; }
	h2, .sidebar h3, .related-posts h3 {
		font-size:35px !important;
		line-height:35px !important;
	}
	.search-form input.search-form_it {
		width:100%;
		float:none;
	}
	.search-form .btn {
		margin-top:0px;
		margin-left:0px;
		float:right;
	}
}
@media (min-width: 768px) and (max-width: 979px) {
	/* .logo { width:100%; } */
	.camera_caption { top:0px; }
	.camera_caption strong {
		font-size:50px;
		line-height:45px;
		margin-top:10px;
	}
	.camera_caption em {
		font-size:70px;
		line-height:70px;
		margin-top:-10px;
	}
	.camera_caption a {
		font-size:30px;
		line-height:1em;
		padding:13px 20px;
		margin-top:30px;
	}
	#nsu-form-1 input.nsu-field { padding:0px 122px 0px 22px !important; }
	#nsu-form-1 input.nsu-submit { padding:12px 20px 13px 20px !important; }
}
@media (max-width: 767px) {
	.header { padding-top:40px; }
	.header .pull-right, .header .pull-left { float:none; }
	.nav__primary { margin:20px 0px 0 0px; }
	#topnav { display:none; }
	body {
		padding-left:0px;
		padding-right:0px;
	}
	.container {
		padding-left:20px;
		padding-right:20px;
	}
	.select-menu {
		margin:20px 0;
		background-color:#fff;
		border:1px solid #fac785;
		-webkit-border-radius:0px;
		-moz-border-radius:0px;
		border-radius:0px;
		cursor:pointer;
		display:none;
		height:30px;
		margin:0;
		outline:medium none;
		padding:4px 5px;
		width:100%;
	}
	.header-line { margin-top:20px; }
	.camera_caption { top:0px; }
	.camera_caption strong {
		font-size:40px;
		line-height:35px;
		margin-top:10px;
	}
	.camera_caption em {
		font-size:50px;
		line-height:50px;
		margin-top:-5px;
	}
	.camera_caption a {
		font-size:30px;
		line-height:1em;
		padding:13px 20px;
		margin-top:30px;
	}
	.service-box { margin-bottom:40px; }
	.extra-wrap .clear { display:block; }
	#content { padding-top:50px; }
	#nsu-form-1 { margin-top:30px; }
}
@media (min-width: 481px) and (max-width: 767px) {
	.team li .featured-thumbnail {
		float:left;
		margin:0 20px 10px 0;
	}
	.team li .clear { display:none; }
	.team li {
		overflow:hidden;
		margin-top:30px;
	}
	.team li:first-child { margin-top:0; }
}
@media (max-width: 650px) {
	.nav-pills>li {
		float:none;
		margin-left:0 !important;
	}
}
@media (max-width: 400px) {
	.slider { display:none !important; }
	#nsu-form-1 input.nsu-field { padding:0px 122px 0px 12px !important; }
	#nsu-form-1 input.nsu-submit { padding:12px 20px 13px 20px !important; }
}
.clearfix { *zoom:1; }
.clearfix:before, .clearfix:after {
	display:table;
	content:"";
	line-height:0;
}
.clearfix:after { clear:both; }
.hide-text {
	font:0/0 a;
	color:transparent;
	text-shadow:none;
	background-color:transparent;
	border:0;
}
.input-block-level {
	display:block;
	width:100%;
	min-height:30px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}

/* Custom Styles from Landing Page */
:root {
  --color-white: #FFF;
  --color-black: #000;
  --color-dark: #232323;
  --color-gray: #D8D8D8;
  --color-gray-dark: #6B6C75;
  --color-gray-light: rgba(0, 0, 0, 0.2);
  --color-text-gray: #6B6C75;
  --color-error: #dc3545;
  --color-success: #28a745;
}

body, h1, h2, h3, h4, h5, h6, .section-title, .section-label {
    font-family: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
}

/* Button Reset & Styles */
/* Button Reset & Styles */
.btn,
.wp-block-button__link,
.wp-element-button {
  font-family: 'Manrope', sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: normal;
  border: 1px solid var(--color-black);
  cursor: pointer;
  position: relative;
  overflow: hidden;
  z-index: 1;
  transition: color 0.5s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  text-align: center;
  background: var(--color-white);
  color: var(--color-black);
  border-radius: 0;
  box-shadow: none;
  margin: 0;
  padding: 0 2rem;
  height: 72px;
  text-transform: none; /* Reset uppercase if needed */
  width: auto;
  min-width: 0; /* Reset min-width potentially set by themes */
}

.btn:after,
.wp-block-button__link:after,
.wp-element-button:after {
    display: none !important; /* Hide original arrow */
}

@media (min-width: 768px) {
  .btn,
  .wp-block-button__link,
  .wp-element-button {
    min-width: 412px;
  }
}

.btn::before,
.wp-block-button__link::before,
.wp-element-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  z-index: -1;
  transition: width 0.5s ease;
  background: var(--color-black);
}

.btn:hover,
.wp-block-button__link:hover,
.wp-element-button:hover {
    color: var(--color-white) !important;
    background: transparent !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

.btn:hover::before,
.wp-block-button__link:hover::before,
.wp-element-button:hover::before {
  width: 100%;
}

.btn:active,
.wp-block-button__link:active,
.wp-element-button:active {
  transform: scale(0.98);
}

.btn:focus,
.wp-block-button__link:focus,
.wp-element-button:focus {
  outline: 2px solid var(--color-black);
  outline-offset: 2px;
  color: var(--color-black);
}


/* Grid System from _base.scss */
.grid-1 { display: grid; gap: 20px; grid-template-columns: 1fr; }
.grid-2 { display: grid; gap: 20px; grid-template-columns: 1fr; }
@media (min-width: 768px) { .grid-2 { grid-template-columns: repeat(2, 1fr); } }
.grid-3 { display: grid; gap: 20px; grid-template-columns: 1fr; }
@media (min-width: 768px) { .grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .grid-3 { grid-template-columns: repeat(3, 1fr); } }
.grid-4 { display: grid; gap: 20px; grid-template-columns: 1fr; }
@media (min-width: 768px) { .grid-4 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .grid-4 { grid-template-columns: repeat(4, 1fr); } }
.grid { display: grid; gap: 20px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 1024px) { .grid { grid-template-columns: repeat(4, 1fr); } }

.gap-0 { gap: 0; }
.col-span-3 { grid-column: span 3; }

/* Hero Styles from _hero.scss */
.hero {
  position: relative;
  width: 100%;
  height: auto !important; /* User requested auto height */
  min-height: auto !important; /* Allow collapse if needed */
  background: var(--color-white);
  overflow: hidden;
  margin-top: 0 !important; /* Force remove top gap */
}
@media (max-width: 768px) {
  .hero {
    height: auto !important;
    min-height: auto !important;
  }
}

.hero-bg-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.hero::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4); /* Darkening layer as requested */
  z-index: 1;
}

.hero-content {
  position: relative;
  z-index: 2;
  padding-top: 166px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .hero-content {
    padding-top: 80px;
    padding-bottom: 50px;
    height: calc(100vh - 200px);
  }
}

.hero-title {
  font-family: 'Manrope', sans-serif;
  font-size: 64px;
  font-weight: 400;
  line-height: 100%;
  text-transform: uppercase;
  color: var(--color-white);
  margin: 0 0 56px 0;
  min-height: 128px;
}
@media (max-width: 1440px) { .hero-title { font-size: 48px; min-height: 96px; } }
@media (max-width: 768px) { 
  .hero-title { 
    font-size: 32px; 
    margin-bottom: 30px; 
    min-height: 64px;
    border-left: 2px solid white;
    padding-left: 20px;
    padding-bottom: 75px;
  } 
}

.hero-subtitle {
  font-family: 'Manrope', sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 120%;
  color: var(--color-white);
  margin-left: 0;
}
@media (max-width: 768px) { .hero-subtitle { font-size: 18px; } }

.hero-subtitle-wrapper {
  height: 338px;
  border-left: 2px solid var(--color-white);
  padding-left: 13px;
  margin-left: 0px;
  display: flex;
  align-items: center;
  line-height: 120%;
}
.hero-subtitle-wrapper > p { margin: -83px 0 0 0; }

@media (max-width: 768px) {
  .hero-subtitle-wrapper {
    border-left: 0;
    height: auto;
    display: flex;
    align-items: flex-end;
    order: -1;
  }
}
