/*
Modern Styles for Kingly Insights Website
Design by LOOK Design & Direction @ https://workwithlook.com/ 
*/

/* HTML Reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { 
	margin: 0; 
	padding: 0; 
	border: 0; 
	font-size: 100%; 
	font: inherit; 
	vertical-align: baseline; 
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { 
	display: block; 
	position: relative; 
}
ol, ul { 
	list-style: none; 
	position: relative; 
}
blockquote, q { 
	quotes: none; 
	position: relative; 
}
blockquote:before, blockquote:after, q:before, q:after { 
	content: ''; 
	content: none; 
}
table { 
	border-collapse: collapse; 
	border-spacing: 0; 
	position: relative; 
}
*, .boxsizing { 
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	box-sizing: border-box; 
}
.cf:before, .cf:after { 
	content: " "; 
	display: table; 
}
.cf:after { 
	clear: both; 
}
.cf { 
	*zoom: 1; 
}
.transition { 
	-webkit-transition: all 500ms ease; 
	-moz-transition: all 500ms ease; 
	-o-transition: all 500ms ease; 
	transition: all 500ms ease; 
}
.visuallyhidden { 
	border: 0; 
	clip: rect(0 0 0 0); 
	height: 1px; 
	margin: -1px; 
	overflow: hidden; 
	padding: 0; 
	position: absolute; 
	width: 1px; 
}

/* Base Styles */
html { 
	background: #1a365d; 
	font-size: 18px; 
	scroll-behavior: smooth; 
}
body#home { 
	min-width: 320px; 
	background: #ffffff; 
	color: #2c3e50; 
	font-family: 'proxima-nova', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; 
	font-size: 1em; 
	font-weight: 400; 
	line-height: 1.7; 
}
#home p { 
	font-size: 1.1em; 
	line-height: 1.8em; 
	padding: 0 0 1.2em; 
}
#home h1, #home .h1 { 
	font-size: 0.9em; 
	font-weight: 600; 
	line-height: 1.6em; 
	padding: 0; 
	text-transform: uppercase; 
	color: #5681bb; 
	letter-spacing: 0.15em; 
}
#home h2 { 
	font-size: 2.5em; 
	font-family: 'proxima-nova', sans-serif; 
	font-weight: 700; 
	line-height: 1.3em; 
	padding: 0 0 0.5em; 
	color: #1a365d; 
}
#home h3 { 
	font-size: 1.75em; 
	font-weight: 600; 
	line-height: 1.4em; 
	padding: 0 0 0.5em; 
	color: #1a365d; 
}
#home h4 { 
	font-size: 1.4em; 
	font-weight: 600; 
	line-height: 1.4em; 
	padding: 0 0 0.5em; 
	color: #2c3e50; 
}
#home h5 { 
	font-size: 1.2em; 
	font-weight: 600; 
	line-height: 1.4em; 
	padding: 0 0 0.5em; 
	color: #2c3e50; 
}
#home strong { 
	font-weight: 700; 
}
#home ul { 
	list-style: disc; 
	margin-left: 1.5em; 
	margin-bottom: 1em; 
}
#home ul li { 
	margin-bottom: 0.5em; 
	line-height: 1.7em; 
}

/* Layout */
.wrap-1320 { 
	width: 100%; 
	max-width: 1320px; 
	margin: 0 auto; 
	-webkit-transition: all 500ms ease; 
	-moz-transition: all 500ms ease; 
	-o-transition: all 500ms ease; 
	transition: all 500ms ease; 
}
.wrap-1200 { 
	width: 96%; 
	max-width: 1200px; 
	margin: 0 auto; 
	-webkit-transition: all 500ms ease; 
	-moz-transition: all 500ms ease; 
	-o-transition: all 500ms ease; 
	transition: all 500ms ease; 
}
.center { 
	text-align: center; 
	margin: 0 auto; 
}
.section { 
	padding: 5em 0; 
}

/* Navigation */
#navigation { 
	position: relative; 
	background: #ffffff; 
	z-index: 10; 
	top: 0; 
	padding: 1.5em 0; 
}
#navigation .logo { 
	max-width: 200px; 
	position: absolute; 
	top: 50%; 
	transform: translateY(-50%); 
	left: 0; 
	z-index: 10; 
}
#navigation a.logo-link { 
	text-decoration: none; 
	color: transparent; 
	display: block; 
}
#navigation ul { 
	display: block; 
	text-align: center; 
	float: right; 
	margin: 0; 
	padding: 0; 
}
#navigation li { 
	display: inline-block; 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
	padding: 0.5em 1.5em; 
}
#navigation li.mobile { 
	display: none; 
}
#navigation li a { 
	display: inline-block; 
	color: #2c3e50; 
	text-decoration: none; 
	padding: 0.5em 0; 
	font-weight: 500; 
	font-size: 0.95em; 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
}
#navigation li a:hover, #navigation li a.active { 
	color: #5681bb; 
}
#navigation li:last-child { 
	padding-right: 0; 
}
#header { 
	position: relative; 
	z-index: 10; 
	background: #fff; 
}
.sticky #header, .nav-active #header, .no-js #header { 
	position: fixed; 
	top: 0; 
	width: 100%; 
	-webkit-box-shadow: 0 4px 20px rgba(0,0,0,0.1); 
	box-shadow: 0 4px 20px rgba(0,0,0,0.1); 
}
.no-js #content { 
	margin-top: 5em; 
}

/* Hero Section */
#section-hero { 
	position: relative; 
	min-height: 90vh; 
	display: flex; 
	align-items: center; 
	overflow: hidden; 
	background: linear-gradient(135deg, #044d7f 0%, #5681bb 50%, #2c5282 100%); 
}
@media all and (max-width: 899px) {
	#section-hero { 
		min-height: 80vh; 
	}
}
@media all and (max-width: 676px) {
	#section-hero { 
		min-height: 70vh; 
	}
}
.hero-background { 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%; 
	z-index: 1; 
	opacity: 0.4; 
}
.hero-background::after { 
	content: ''; 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%; 
	background: rgba(4, 77, 127, 0.6); 
	z-index: 1; 
}
.hero-background img { 
	width: 100%; 
	height: 100%; 
	object-fit: cover; 
	position: relative; 
	z-index: 0; 
}
#section-hero .wrap-1200 { 
	position: relative; 
	z-index: 2; 
}
.hero-content { 
	max-width: 800px; 
	color: #ffffff; 
	padding: 3em 0; 
}
.hero-headline { 
	font-size: 5.5em; 
	font-weight: 800; 
	line-height: 1.15em; 
	margin-bottom: 0.6em; 
	color: #ffffff !important; 
	text-shadow: 2px 2px 20px rgba(0,0,0,0.8), 0 0 40px rgba(0,0,0,0.6), 4px 4px 8px rgba(0,0,0,0.5); 
	letter-spacing: -0.02em; 
}
.hero-subheadline { 
	font-size: 1.9em; 
	font-weight: 600; 
	margin-bottom: 1.2em; 
	color: #ffffff !important; 
	opacity: 1; 
	text-shadow: 2px 2px 15px rgba(0,0,0,0.7), 0 0 25px rgba(0,0,0,0.5); 
	line-height: 1.4em; 
}
.hero-description { 
	font-size: 1.5em; 
	line-height: 1.8em; 
	margin-bottom: 2.5em; 
	color: #ffffff !important; 
	opacity: 1; 
	text-shadow: 1px 1px 12px rgba(0,0,0,0.7), 0 0 20px rgba(0,0,0,0.4); 
}
.hero-cta { 
	display: flex; 
	gap: 1.5em; 
	margin-bottom: 3em; 
	flex-wrap: wrap; 
}
.btn { 
	display: inline-block; 
	padding: 1em 2.5em; 
	border-radius: 50px; 
	text-decoration: none; 
	font-weight: 600; 
	font-size: 1.1em; 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
	cursor: pointer; 
	border: none; 
}
.btn-primary { 
	background: linear-gradient(135deg, #5681bb 0%, #044d7f 100%); 
	color: #ffffff; 
	box-shadow: 0 8px 25px rgba(4, 77, 127, 0.4); 
}
.btn-primary:hover { 
	transform: translateY(-3px); 
	box-shadow: 0 12px 35px rgba(4, 77, 127, 0.6); 
	background: linear-gradient(135deg, #6b95d1 0%, #055a9a 100%); 
}
.btn-secondary { 
	background: rgba(255, 255, 255, 0.2); 
	color: #ffffff; 
	border: 2px solid rgba(255, 255, 255, 0.5); 
	backdrop-filter: blur(10px); 
}
.btn-secondary:hover { 
	background: rgba(255, 255, 255, 0.3); 
	transform: translateY(-3px); 
}
.hero-stat { 
	padding-top: 2em; 
	border-top: 1px solid rgba(255, 255, 255, 0.3); 
}
.stat-text { 
	font-size: 1em; 
	color: #ffffff; 
	opacity: 0.85; 
	font-style: italic; 
}

/* Value Proposition Section */
#section-value-prop { 
	background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%); 
	padding: 6em 0; 
}
.section-title { 
	font-size: 2.8em; 
	font-weight: 700; 
	text-align: center; 
	margin-bottom: 1.5em; 
	background: linear-gradient(135deg, #044d7f 0%, #5681bb 100%); 
	-webkit-background-clip: text; 
	-webkit-text-fill-color: transparent; 
	background-clip: text; 
}
.value-prop-content { 
	max-width: 900px; 
	margin: 0 auto 3em; 
	text-align: center; 
}
.value-prop-image { 
	max-width: 1000px; 
	margin: 3em auto; 
	border-radius: 20px; 
	overflow: hidden; 
	box-shadow: 0 15px 50px rgba(0,0,0,0.1); 
}
.value-prop-image img { 
	width: 100%; 
	height: auto; 
	display: block; 
	object-fit: cover; 
}
.value-prop-content .lead-text { 
	font-size: 1.3em; 
	line-height: 1.9em; 
	color: #2c3e50; 
	margin-bottom: 1.5em; 
}
.bridge-text { 
	font-size: 1.5em; 
	color: #5681bb; 
	margin: 1.5em 0; 
}
.what-sets-us-apart { 
	margin-top: 4em; 
}
.what-sets-us-apart h3 { 
	text-align: center; 
	font-size: 2.2em; 
	margin-bottom: 2em; 
	color: #1a365d; 
}
.feature-grid { 
	display: grid; 
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); 
	gap: 2.5em; 
	margin-top: 2em; 
}
.feature-card { 
	background: #ffffff; 
	padding: 2.5em; 
	border-radius: 20px; 
	box-shadow: 0 10px 40px rgba(0,0,0,0.08); 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
	border-top: 4px solid; 
	border-image: linear-gradient(135deg, #044d7f 0%, #5681bb 100%) 1; 
}
.feature-card:hover { 
	transform: translateY(-10px); 
	box-shadow: 0 20px 60px rgba(0,0,0,0.15); 
}
.feature-card h4 { 
	font-size: 1.4em; 
	margin-bottom: 1em; 
	color: #1a365d; 
}
.feature-card ul { 
	list-style: none !important; 
	margin-left: 0; 
	padding-left: 0; 
}
.feature-card ul li { 
	padding-left: 1.5em; 
	position: relative; 
	margin-bottom: 0.8em; 
	line-height: 1.7em; 
	list-style: none !important; 
}
.feature-card ul li:before { 
	content: "✓"; 
	position: absolute; 
	left: 0; 
	color: #5681bb; 
	font-weight: bold; 
	font-size: 1.2em; 
}
.feature-card ul li::marker { 
	display: none !important; 
}

/* Services Section */
#section-services { 
	background: linear-gradient(135deg, #044d7f 0%, #5681bb 50%, #2c5282 100%); 
	padding: 6em 0; 
	color: #ffffff; 
}
#section-services .section-title { 
	color: #ffffff; 
	-webkit-text-fill-color: #ffffff; 
	background: none; 
}
.services-grid { 
	display: grid; 
	grid-template-columns: 1fr; 
	gap: 3em; 
	margin-top: 3em; 
}
.service-card { 
	background: rgba(255, 255, 255, 0.95); 
	border-radius: 25px; 
	overflow: hidden; 
	box-shadow: 0 15px 50px rgba(0,0,0,0.2); 
	display: grid; 
	grid-template-columns: 300px 1fr; 
	gap: 0; 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
}
.service-card:hover { 
	transform: translateY(-5px); 
	box-shadow: 0 20px 60px rgba(0,0,0,0.3); 
}
.service-image { 
	overflow: hidden; 
	min-height: 300px; 
	display: flex; 
	align-items: center; 
	justify-content: center; 
}
.service-image img { 
	width: 100%; 
	height: 100%; 
	object-fit: cover; 
	object-position: center center; 
	min-height: 300px; 
}
.service-content { 
	padding: 3em; 
	color: #2c3e50; 
}
.service-content h3 { 
	font-size: 2em; 
	margin-bottom: 1em; 
	color: #1a365d; 
}
.service-when, .service-what, .service-timeline { 
	margin-bottom: 1em; 
	line-height: 1.8em; 
}
.service-what { 
	margin-bottom: 0.5em !important; 
}
.service-list { 
	margin-top: 0.5em; 
	margin-bottom: 1.5em; 
}
.service-expertise { 
	margin-top: 2em; 
}
.service-expertise h4 { 
	font-size: 1.4em; 
	margin-bottom: 1em; 
	color: #1a365d; 
}
.expertise-category { 
	margin-bottom: 2em; 
}
.expertise-category h5 { 
	font-size: 1.2em; 
	margin-bottom: 0.8em; 
	color: #5681bb; 
}
.expertise-category ul { 
	margin-left: 1.5em; 
}
.expertise-category ul li { 
	margin-bottom: 0.5em; 
	line-height: 1.7em; 
}

/* FAQ Section */
#section-faq { 
	background: #f8f9fa; 
	padding: 6em 0; 
}
#section-faq .section-title { 
	background: linear-gradient(135deg, #044d7f 0%, #5681bb 100%); 
	-webkit-background-clip: text; 
	-webkit-text-fill-color: transparent; 
	background-clip: text; 
}
.faq-list { 
	max-width: 900px; 
	margin: 3em auto 0; 
}
.faq-item { 
	background: #ffffff; 
	border-radius: 15px; 
	margin-bottom: 1.5em; 
	box-shadow: 0 5px 20px rgba(0,0,0,0.08); 
	overflow: hidden; 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
}
.faq-item:hover { 
	box-shadow: 0 8px 30px rgba(0,0,0,0.12); 
}
.faq-question { 
	padding: 1.8em 5.5em 1.8em 2em; 
	font-size: 1.3em; 
	font-weight: 600; 
	color: #1a365d; 
	cursor: pointer; 
	margin: 0; 
	position: relative; 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
	line-height: 1.5em; 
	padding-right: 5.5em !important; 
	display: block; 
	box-sizing: border-box; 
	word-wrap: break-word; 
	overflow-wrap: break-word; 
}
.faq-question:hover { 
	color: #5681bb; 
}
.faq-question:after { 
	content: "+"; 
	position: absolute; 
	right: 1.8em; 
	top: 50%; 
	transform: translateY(-50%); 
	font-size: 2em; 
	color: #5681bb; 
	font-weight: 300; 
	line-height: 1; 
	width: 1.5em; 
	text-align: center; 
	flex-shrink: 0; 
	pointer-events: none; 
}
.faq-item.active .faq-question:after { 
	content: "−"; 
}
.faq-answer { 
	padding: 0 2em 1.8em; 
	color: #2c3e50; 
	line-height: 1.8em; 
	display: none; 
}
.faq-item.active .faq-answer { 
	display: block; 
}
.faq-answer p { 
	margin-bottom: 1em; 
}
.faq-answer p:last-child { 
	margin-bottom: 0; 
}

/* About Section */
#section-about { 
	background: #ffffff; 
	padding: 6em 0; 
}
#section-about .section-title { 
	background: linear-gradient(135deg, #044d7f 0%, #5681bb 100%); 
	-webkit-background-clip: text; 
	-webkit-text-fill-color: transparent; 
	background-clip: text; 
}
.section-subtitle { 
	text-align: center; 
	font-size: 1.2em; 
	color: #5681bb; 
	margin-bottom: 3em; 
	font-weight: 500; 
}
.about-intro { 
	display: grid; 
	grid-template-columns: 300px 1fr; 
	gap: 3em; 
	margin-bottom: 3em; 
	align-items: start; 
}
.about-headshot { 
	position: relative; 
	width: 100%; 
	aspect-ratio: 1; 
	overflow: hidden; 
	border-radius: 20px; 
	box-shadow: 0 10px 40px rgba(0,0,0,0.15); 
}
.about-headshot img { 
	width: 100%; 
	height: 100%; 
	object-fit: cover; 
	object-position: center top; 
	transform: scale(1.2); 
}
.about-intro-text { 
	font-size: 1.2em; 
	line-height: 1.9em; 
}
.about-intro-text p { 
	margin-bottom: 1.5em; 
}
.about-content { 
	max-width: 900px; 
	margin: 0 auto; 
}
.about-content > p { 
	font-size: 1.2em; 
	line-height: 1.9em; 
	margin-bottom: 1.5em; 
}
.about-sections { 
	margin-top: 3em; 
}
.about-section { 
	margin-bottom: 3em; 
	padding: 2.5em; 
	background: #f8f9fa; 
	border-radius: 20px; 
	border-left: 5px solid #5681bb; 
}
.about-section h3 { 
	font-size: 2em; 
	margin-bottom: 1em; 
	color: #1a365d; 
}
.about-section h4 { 
	font-size: 1.5em; 
	margin: 1.5em 0 1em; 
	color: #5681bb; 
}
.about-section p { 
	margin-bottom: 1em; 
	line-height: 1.8em; 
}
.about-section ul { 
	margin-left: 1.5em; 
	margin-bottom: 1.5em; 
}
.about-section ul li { 
	margin-bottom: 0.8em; 
	line-height: 1.8em; 
}

/* Contact Section */
#section-contact { 
	background: linear-gradient(135deg, #1a365d 0%, #2c5282 50%, #2d3748 100%); 
	padding: 4em 0; 
	color: #ffffff; 
}
#section-contact .section-title { 
	color: #ffffff; 
	-webkit-text-fill-color: #ffffff; 
	background: none; 
}
.contact-intro { 
	text-align: center; 
	font-size: 1.2em; 
	line-height: 1.8em; 
	margin-bottom: 2.5em; 
	color: rgba(255, 255, 255, 0.9); 
	max-width: 800px; 
	margin-left: auto; 
	margin-right: auto; 
}
.contact-cta-grid { 
	display: flex; 
	justify-content: center; 
	align-items: stretch; 
	max-width: 900px; 
	margin: 0 auto; 
}
.cta-card { 
	border-radius: 28px; 
	padding: 3em; 
	box-shadow: 0 20px 55px rgba(0,0,0,0.25); 
	position: relative; 
	width: 100%; 
	max-width: 100%; 
}
.cta-card h3, .cta-card h4 { 
	margin-bottom: 0.8em; 
	font-weight: 700; 
}
.cta-card p { 
	line-height: 1.8em; 
	margin-bottom: 1.2em; 
}
.cta-card ul { 
	margin: 0 0 1.5em 0; 
	padding-left: 0; 
	list-style: none; 
}
.cta-card li { 
	margin-bottom: 0.6em; 
	line-height: 1.6em; 
}
.cta-primary { 
	background: #ffffff; 
	color: #1a365d; 
}
.cta-secondary { 
	background: rgba(11, 21, 40, 0.75); 
	border: 1px solid rgba(255, 255, 255, 0.3); 
	color: #ffffff; 
}
.cta-actions { 
	display: flex; 
	flex-wrap: wrap; 
	gap: 1em; 
	margin: 2em 0 1em; 
}
.btn-outline { 
	background: transparent; 
	color: #1a365d; 
	border: 2px solid #1a365d; 
	box-shadow: none; 
}
.cta-primary .btn-outline:hover { 
	background: rgba(26, 54, 93, 0.08); 
}
.cta-note { 
	font-size: 0.95em; 
	color: #4a5568; 
	margin-top: 0.5em; 
}
.contact-form { 
	margin-top: 1.5em; 
}
.contact-form .form-grid { 
	display: grid; 
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); 
	gap: 1.2em; 
}
.contact-form .form-field { 
	display: flex; 
	flex-direction: column; 
	gap: 0.35em; 
}
.contact-form .form-field.full { 
	grid-column: 1 / -1; 
}
.contact-form label { 
	font-weight: 600; 
	font-size: 0.95em; 
	color: #1a365d; 
}
.contact-form input, 
.contact-form textarea { 
	width: 100%; 
	padding: 0.9em 1.1em; 
	border-radius: 12px; 
	border: 1px solid rgba(26, 54, 93, 0.2); 
	font-size: 1em; 
	color: #1a365d; 
	background: #f7fafc; 
	transition: border-color 200ms ease, box-shadow 200ms ease; 
}
.contact-form textarea { 
	min-height: 160px; 
	resize: vertical; 
}
.contact-form input:focus, 
.contact-form textarea:focus { 
	border-color: #5681bb; 
	box-shadow: 0 0 0 3px rgba(86, 129, 187, 0.2); 
	outline: none; 
	background: #ffffff; 
}
.contact-form button { 
	margin-top: 0.5em; 
}
.hp-field-wrapper { 
	position: absolute; 
	left: -9999px; 
	opacity: 0; 
	pointer-events: none; 
}
.form-status { 
	margin-top: 1em; 
	font-size: 0.95em; 
	font-weight: 600; 
}
.form-status.success { 
	color: #0f7b5f; 
}
.form-status.error { 
	color: #c53030; 
}
.cta-list { 
	list-style: none !important; 
	padding-left: 0; 
	margin-left: 0; 
}
.cta-list li { 
	position: relative; 
	padding-left: 1.5em; 
}
.cta-list li:before { 
	content: "•"; 
	position: absolute; 
	left: 0; 
	color: #5681bb; 
	font-size: 1.6em; 
	line-height: 1; 
	top: -0.1em; 
}
.cta-secondary .cta-list li:before { 
	color: #fbd38d; 
}
.cta-highlights { 
	border-radius: 18px; 
	padding: 1.5em; 
	background: rgba(255, 255, 255, 0.05); 
	margin-bottom: 1.5em; 
}
.cta-highlights .highlight { 
	display: flex; 
	justify-content: space-between; 
	align-items: center; 
	padding: 0.6em 0; 
	border-bottom: 1px solid rgba(255, 255, 255, 0.1); 
}
.cta-highlights .highlight:last-child { 
	border-bottom: none; 
}
.cta-highlights .label { 
	font-size: 0.9em; 
	text-transform: uppercase; 
	letter-spacing: 0.08em; 
	opacity: 0.7; 
}
.cta-highlights .value { 
	font-weight: 600; 
	text-align: right; 
}
.text-link {
	color: #fbd38d;
	font-weight: 600;
	text-decoration: none;
}
.text-link:hover {
	text-decoration: underline;
}

/* Cognito Form Styling - Match existing form design */
html .cog-branding--minimal, html .cog-branding--minimal *, :root:root:root:root:root .cog-branding--minimal, :root:root:root:root:root .cog-branding--minimal *, html .cog-cognito hr, :root:root:root:root:root .cog-cognito hr {
	display: none !important;
}

#cognito-form-container .cog-form {
	margin: 0;
	padding: 0;
}

#cognito-form-container .cog-form .cog-field {
	margin-bottom: 1.2em;
}

#cognito-form-container .cog-form .cog-field-label {
	font-weight: 600 !important;
	font-size: 0.95em !important;
	color: #1a365d !important;
	margin-bottom: 0.35em !important;
	display: block !important;
}

html #section-contact .cog-form input, html #section-contact .cog-form textarea, html #section-contact .cog-form select {
	padding: 0.9em 1.1em !important;
	border-radius: 12px !important;
	border: 1px solid rgba(26, 54, 93, 0.2) !important;
	background: #f7fafc !important;
	color: #1a365d !important;
	font-size: 1em !important;
	width: 100% !important;
	box-sizing: border-box !important;
	-webkit-transition: all 200ms ease !important;
	-moz-transition: all 200ms ease !important;
	-o-transition: all 200ms ease !important;
	transition: border-color 200ms ease, box-shadow 200ms ease !important;
}

html #section-contact .cog-form input::placeholder, html #section-contact .cog-form textarea::placeholder {
	color: #999 !important;
}

html #section-contact .cog-form input:focus, html #section-contact .cog-form textarea:focus, html #section-contact .cog-form select:focus {
	border-color: #5681bb !important;
	box-shadow: 0 0 0 3px rgba(86, 129, 187, 0.2) !important;
	outline: none !important;
	background: #ffffff !important;
}

html #section-contact .cog-form textarea {
	min-height: 160px !important;
	resize: vertical !important;
}

html #section-contact .cog-form .cog-button--primary, html #section-contact .cog-form .cog-page__navigation .cog-button {
	padding: 0.9em 2.5em !important;
	background: linear-gradient(135deg, #5681bb 0%, #044d7f 100%) !important;
	border-radius: 50px !important;
	border: none !important;
	font-weight: 600 !important;
	font-size: 1.1em !important;
	color: #ffffff !important;
	cursor: pointer !important;
	-webkit-transition: all 300ms ease !important;
	-moz-transition: all 300ms ease !important;
	-o-transition: all 300ms ease !important;
	transition: all 300ms ease !important;
	margin-top: 0.5em !important;
}

html #section-contact .cog-form .cog-button--primary:hover, html #section-contact .cog-form .cog-page__navigation .cog-button:hover {
	transform: translateY(-3px) !important;
	box-shadow: 0 12px 35px rgba(4, 77, 127, 0.6) !important;
	background: linear-gradient(135deg, #6b95d1 0%, #055a9a 100%) !important;
}

html #section-contact .cog-form .cog-button--secondary, html #section-contact .cog-form .cog-button--link {
	display: none !important;
}

html #section-contact .cog-form .cog-field-required:after {
	content: " *" !important;
	color: #5681bb !important;
}

/* Footer */
#footer { 
	background: linear-gradient(135deg, #044d7f 0%, #1a365d 100%); 
	color: #ffffff; 
	overflow: hidden; 
}
.footer-content { 
	padding: 3em 0 2em; 
	display: flex; 
	justify-content: center; 
}
.footer-connect { 
	text-align: center; 
	max-width: 600px; 
}
.footer-connect h4 { 
	font-size: 1.4em; 
	margin-bottom: 1.5em; 
	color: #ffffff !important; 
	font-weight: 700; 
	text-transform: uppercase; 
	letter-spacing: 0.05em; 
	text-shadow: 0 2px 4px rgba(0,0,0,0.4), 0 0 10px rgba(0,0,0,0.3); 
	opacity: 1 !important; 
}
.footer-connect ul { 
	list-style: none !important; 
	margin: 0; 
	padding: 0; 
	display: flex; 
	flex-wrap: wrap; 
	justify-content: center; 
	gap: 2em; 
}
.footer-connect li { 
	margin: 0; 
	padding: 0; 
	list-style: none !important; 
}
.footer-connect li a { 
	display: inline-flex; 
	align-items: center; 
	padding: 0.8em 1.5em; 
	color: #ffffff; 
	text-decoration: none; 
	font-size: 1em; 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
	background: rgba(255, 255, 255, 0.1); 
	border-radius: 50px; 
	border: 1px solid rgba(255, 255, 255, 0.2); 
	backdrop-filter: blur(10px); 
}
.footer-connect li a:hover { 
	background: rgba(255, 255, 255, 0.2); 
	transform: translateY(-2px); 
	box-shadow: 0 5px 15px rgba(0,0,0,0.2); 
}
.footer-connect li.phone a { 
	padding-left: 3em; 
	background-image: url('images/icon-phone.png'); 
	background-repeat: no-repeat; 
	background-position: 1em center; 
	background-size: 20px; 
}
.footer-connect li.email a { 
	padding-left: 3em; 
	background-image: url('images/icon-email.png'); 
	background-repeat: no-repeat; 
	background-position: 1em center; 
	background-size: 20px; 
}
.footer-connect li.linkedin a { 
	padding-left: 3em; 
	background-image: url('images/icon-email.png'); 
	background-repeat: no-repeat; 
	background-position: 1em center; 
	background-size: 20px; 
}
#copyright { 
	background: rgba(0, 0, 0, 0.3); 
	padding: 2em 0; 
	color: rgba(255, 255, 255, 0.8); 
	font-size: 0.9em; 
	border-top: 1px solid rgba(255, 255, 255, 0.1); 
}
#copyright a { 
	color: rgba(255, 255, 255, 0.8); 
	text-decoration: none; 
	-webkit-transition: all 300ms ease; 
	-moz-transition: all 300ms ease; 
	-o-transition: all 300ms ease; 
	transition: all 300ms ease; 
}
#copyright a:hover { 
	color: #ffffff; 
	opacity: 1; 
}
#copyright-credit { 
	float: left; 
	text-align: left; 
}
#design-credit { 
	float: right; 
}

#body-overlay { 
	background: rgba(0,0,0,0); 
	display: none; 
	position: fixed; 
	width: 100%; 
	height: 100%; 
	z-index: 9; 
	top: 0; 
	right: 0; 
	bottom: 0; 
	left: 0; 
	-webkit-transition: all 500ms ease; 
	-moz-transition: all 500ms ease; 
	-o-transition: all 500ms ease; 
	transition: all 500ms ease; 
}

/* Responsive Design */
@media all and (max-width: 1299px) {
	#navigation li { 
		padding: 0.5em 1em; 
	}
	.wrap-1200 { 
		width: 94%; 
	}
	.hero-headline { 
		font-size: 3.5em; 
	}
	.service-card { 
		grid-template-columns: 250px 1fr; 
	}
	.footer-content { 
		grid-template-columns: 2fr 1fr 1fr; 
	}
	.footer-brand { 
		grid-column: 1 / -1; 
	}
} 

@media all and (max-width: 1023px) {
	body#home { 
		font-size: 0.95em; 
	}
	#navigation .logo { 
		max-width: 180px; 
	}
	.nav-active #navigation .logo { 
		max-width: 0px; 
	}
	.nav-active #body-overlay { 
		display: block; 
		background: rgba(0,0,0,0.7); 
	}
	#navigation ul { 
		text-align: right; 
		margin: 0 2% 0 0; 
	}
	#navigation li { 
		display: none; 
		padding: 1em !important; 
	}
.nav-active #header, .nav-active #navigation { 
	background: #044d7f; 
}
	.nav-active #header { 
		height: 100%; 
		width: 80%; 
		right: 0; 
	}
	.nav-active #navigation li { 
		display: block; 
		padding: 0.8em !important; 
		border-bottom: 1px solid rgba(255, 255, 255, 0.2); 
	}
	.nav-active #navigation li:last-child { 
		border-bottom: 0; 
	}
	.nav-active #navigation li a { 
		color: #fff; 
		display: block; 
		width: 200px; 
	}
	#navigation li.mobile { 
		display: block; 
	}
	#navigation li a { 
		display: block; 
		padding: 10px 2%; 
	}
	#navigation li a.active { 
		background: transparent; 
	}
	.wrap-1200 { 
		width: 92%; 
	}
	.hero-headline { 
		font-size: 3em; 
	}
	.hero-subheadline { 
		font-size: 1.4em; 
	}
	.section-title { 
		font-size: 2.2em; 
	}
	.service-card { 
		grid-template-columns: 1fr; 
	}
	.service-image { 
		height: 250px; 
	}
	.contact-cta-grid {
		max-width: 100%;
	}
	.cta-card {
		padding: 2.5em;
	}
	#contact-wrap { 
		grid-template-columns: 1fr; 
	}
	.footer-content { 
		grid-template-columns: 1fr 1fr; 
		gap: 2em; 
	}
}

@media all and (max-width: 899px) {
	.section { 
		padding: 4em 0; 
	}
	.hero-headline { 
		font-size: 3.2em; 
	}
	.hero-subheadline { 
		font-size: 1.5em; 
	}
	.hero-description { 
		font-size: 1.25em; 
	}
	.hero-cta { 
		flex-direction: column; 
	}
	.btn { 
		width: 100%; 
		text-align: center; 
	}
	.section-title { 
		font-size: 2em; 
	}
	.feature-grid { 
		grid-template-columns: 1fr; 
	}
	.service-content { 
		padding: 2em; 
	}
	.service-content h3 { 
		font-size: 1.6em; 
	}
	.faq-question { 
		font-size: 1.1em; 
		padding: 1.5em 4em 1.5em 1.5em !important; 
	}
	.faq-question:after { 
		right: 1.2em; 
		font-size: 1.6em; 
		width: 1.2em; 
	}
	.faq-answer { 
		padding: 0 1.5em 1.5em; 
	}
	.about-intro { 
		grid-template-columns: 1fr; 
		gap: 2em; 
	}
	.about-headshot { 
		max-width: 300px; 
		margin: 0 auto; 
	}
	.about-section { 
		padding: 2em; 
	}
	.cta-card {
		padding: 2.2em;
	}
	.footer-connect ul { 
		flex-direction: column; 
		gap: 1em; 
	}
	.footer-content { 
		grid-template-columns: 1fr; 
	}
	#copyright { 
		text-align: center; 
	}
	#copyright-credit, #design-credit { 
		float: none; 
		text-align: center; 
		padding: 0.5em 0; 
	}
}

@media all and (max-width: 676px) {
	body#home { 
		font-size: 0.9em; 
	}
	.hero-headline { 
		font-size: 2.8em; 
		line-height: 1.2em; 
	}
	.hero-subheadline { 
		font-size: 1.3em; 
	}
	.hero-description { 
		font-size: 1.15em; 
	}
	.section-title { 
		font-size: 1.8em; 
	}
	#home h2 { 
		font-size: 2em; 
	}
	#home h3 { 
		font-size: 1.5em; 
	}
	.value-prop-content .lead-text { 
		font-size: 1.1em; 
	}
	.value-prop-image { 
		margin: 2em auto; 
		border-radius: 15px; 
	}
	.bridge-text { 
		font-size: 1.2em; 
	}
	.service-content h3 { 
		font-size: 1.4em; 
	}
	.faq-question { 
		font-size: 1em; 
		padding: 1.2em; 
	}
	.faq-answer { 
		padding: 0 1.2em 1.2em; 
	}
	#copyright-credit span { 
		display: block; 
	}
	#copyright-credit span.spacer { 
		display: none; 
	}
}

@media all and (max-width: 479px) {
	#navigation .logo { 
		max-width: 140px; 
	}
	.hero-headline { 
		font-size: 2.2em; 
		line-height: 1.25em; 
	}
	.hero-subheadline { 
		font-size: 1.2em; 
	}
	.hero-description { 
		font-size: 1.1em; 
	}
	.section { 
		padding: 3em 0; 
	}
	.section-title { 
		font-size: 1.6em; 
	}
	.btn { 
		padding: 0.9em 2em; 
		font-size: 1em; 
	}
	.feature-card { 
		padding: 1.8em; 
	}
	.service-content { 
		padding: 1.5em; 
	}
	.about-section { 
		padding: 1.5em; 
	}
	.cta-card { 
		padding: 1.5em; 
	}
	.footer-content { 
		padding: 3em 0 2em; 
	}
}
