/*
 * Old Style — SEO Landing Page styles.
 * High specificity (body.osls-landing) + !important to win over Salient.
 */

body.osls-landing,
body.osls-landing[data-smooth-scrolling="0"] {
	background: #fafaf7 !important;
	overflow: visible !important;
	overflow-x: hidden !important;
}

body.osls-landing #page-header-bg,
body.osls-landing .container-wrap > .container.main-content {
	display: none !important;
}

body.osls-landing .osls-landing-wrap {
	padding: 0 !important;
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

/* HERO --------------------------------------------------------------- */

body.osls-landing section.osls-hero {
	position: relative !important;
	min-height: 62vh !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background-color: #2b2b2b !important;
	background-image: linear-gradient(135deg, #2b2b2b 0%, #1f1c17 100%);
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	color: #fff !important;
	padding: 130px 24px 96px !important;
	text-align: center !important;
	overflow: hidden !important;
	margin: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

body.osls-landing section.osls-hero::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	background: linear-gradient(180deg, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.7) 100%) !important;
	z-index: 1 !important;
}

body.osls-landing section.osls-hero .osls-hero-inner {
	position: relative !important;
	z-index: 2 !important;
	max-width: 880px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.osls-landing section.osls-hero h1 {
	color: #fff !important;
	font-size: clamp(32px, 5vw, 56px) !important;
	line-height: 1.1 !important;
	margin: 0 0 22px !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em !important;
	padding: 0 !important;
	text-align: center !important;
}

body.osls-landing .osls-hero-subtitle {
	color: rgba(255,255,255,0.92) !important;
	font-size: clamp(17px, 1.5vw, 21px) !important;
	line-height: 1.5 !important;
	max-width: 720px !important;
	margin: 0 auto 36px !important;
	font-style: normal !important;
	padding: 0 !important;
}

body.osls-landing .osls-cta {
	display: inline-block !important;
	background: #ba9765 !important;
	color: #fff !important;
	padding: 16px 36px !important;
	border-radius: 4px !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	text-decoration: none !important;
	transition: background 0.2s ease, transform 0.2s ease !important;
	border: 0 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
}
body.osls-landing .osls-cta:hover {
	background: #9a7d4f !important;
	transform: translateY(-1px) !important;
	color: #fff !important;
}

/* BODY GRID ---------------------------------------------------------- */

body.osls-landing section.osls-body {
	padding: 80px 24px !important;
	background: #fafaf7 !important;
	margin: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

body.osls-landing .osls-grid {
	max-width: 1200px !important;
	margin: 0 auto !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 340px !important;
	gap: 56px !important;
	align-items: stretch !important;
}

body.osls-landing main.osls-content {
	background: #fff !important;
	padding: 48px 56px !important;
	border-radius: 6px !important;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
	min-width: 0 !important;
}

body.osls-landing main.osls-content > *:first-child { margin-top: 0 !important; }
body.osls-landing main.osls-content > *:last-child  { margin-bottom: 0 !important; }

body.osls-landing main.osls-content h1,
body.osls-landing main.osls-content h2 {
	font-size: 30px !important;
	line-height: 1.25 !important;
	margin: 40px 0 16px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
}
body.osls-landing main.osls-content h3 {
	font-size: 22px !important;
	line-height: 1.3 !important;
	margin: 32px 0 12px !important;
	font-weight: 600 !important;
	color: #1a1a1a !important;
}
body.osls-landing main.osls-content p {
	font-size: 17px !important;
	line-height: 1.7 !important;
	margin: 0 0 18px !important;
	color: #2c2c2c !important;
}
body.osls-landing main.osls-content ul,
body.osls-landing main.osls-content ol {
	font-size: 17px !important;
	line-height: 1.7 !important;
	margin: 0 0 22px !important;
	padding-left: 22px !important;
	color: #2c2c2c !important;
}
body.osls-landing main.osls-content li { margin-bottom: 8px !important; }
body.osls-landing main.osls-content a {
	color: #ba9765 !important;
	text-decoration: underline !important;
	text-underline-offset: 3px !important;
}
body.osls-landing main.osls-content a:hover { color: #9a7d4f !important; }
body.osls-landing main.osls-content strong { color: #1a1a1a !important; }
body.osls-landing main.osls-content blockquote {
	border-left: 4px solid #ba9765 !important;
	padding: 8px 24px !important;
	margin: 28px 0 !important;
	background: #fafaf7 !important;
	font-style: italic !important;
	color: #555 !important;
}
body.osls-landing main.osls-content img {
	max-width: 100% !important;
	height: auto !important;
	border-radius: 4px !important;
	margin: 24px 0 !important;
}

/* SIDEBAR ------------------------------------------------------------ */

body.osls-landing aside.osls-sidebar {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 24px !important;
}

body.osls-landing .osls-card {
	background: #fff !important;
	padding: 32px 28px !important;
	border-radius: 6px !important;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
	border-top: 4px solid #ba9765 !important;
}

body.osls-landing #osls-contact.osls-card {
	position: sticky !important;
	top: 100px !important;
}

body.osls-landing .osls-card h3 {
	font-size: 14px !important;
	margin: 0 0 18px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	padding: 0 !important;
}

body.osls-landing ul.osls-usps,
body.osls-landing .osls-card ul.osls-usps {
	list-style: none !important;
	list-style-type: none !important;
	list-style-image: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
body.osls-landing ul.osls-usps li,
body.osls-landing .osls-card ul.osls-usps li {
	list-style: none !important;
	list-style-type: none !important;
	list-style-image: none !important;
	padding: 12px 0 12px 32px !important;
	position: relative !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
	border-bottom: 1px solid #f0ece4 !important;
	color: #2c2c2c !important;
	margin: 0 !important;
}
body.osls-landing ul.osls-usps li::marker,
body.osls-landing .osls-card ul.osls-usps li::marker {
	content: "" !important;
	display: none !important;
}
body.osls-landing ul.osls-usps li:last-child { border-bottom: 0 !important; }
body.osls-landing ul.osls-usps li::before {
	content: "" !important;
	position: absolute !important;
	left: 0 !important;
	top: 14px !important;
	width: 20px !important;
	height: 20px !important;
	background: #ba9765 !important;
	border-radius: 50% !important;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") !important;
	background-size: 12px 12px !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
}

body.osls-landing a.osls-contact-row {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	padding: 14px 0 !important;
	font-size: 15px !important;
	color: #2c2c2c !important;
	text-decoration: none !important;
	border-bottom: 1px solid #f0ece4 !important;
	margin: 0 !important;
}
body.osls-landing a.osls-contact-row:last-of-type { border-bottom: 0 !important; }
body.osls-landing a.osls-contact-row .osls-icon {
	flex: 0 0 40px !important;
	width: 40px !important;
	height: 40px !important;
	background: #fafaf7 !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #ba9765 !important;
}
body.osls-landing a.osls-contact-row strong {
	display: block !important;
	font-size: 11px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	color: #888 !important;
	font-weight: 600 !important;
	margin: 0 0 2px 0 !important;
}
body.osls-landing a.osls-contact-row span:not(.osls-icon) {
	color: #1a1a1a !important;
	font-weight: 500 !important;
	display: block !important;
	flex: 1 !important;
}
body.osls-landing a.osls-contact-row:hover span:not(.osls-icon) { color: #ba9765 !important; }

body.osls-landing .osls-card a.osls-cta {
	display: block !important;
	text-align: center !important;
	margin-top: 22px !important;
}

@media (max-width: 980px) {
	body.osls-landing .osls-grid {
		grid-template-columns: 1fr !important;
		gap: 32px !important;
	}
	body.osls-landing aside.osls-sidebar { position: static !important; }
	body.osls-landing #osls-contact.osls-card { position: static !important; top: auto !important; }
	body.osls-landing main.osls-content { padding: 32px 24px !important; }
	body.osls-landing section.osls-body { padding: 56px 16px !important; }
	body.osls-landing section.osls-hero { padding: 100px 20px 72px !important; min-height: 50vh !important; }
}
