/*
Theme Name:   GeneratePress Child
Theme URI:    https://generatepress.com
Description:  Default GeneratePress child theme
Author:       Tom Usborne
Author URI:   https://tomusborne.com
Template:     generatepress
Version:      0.1
*/

/* =============== Global Typography =============== */

body {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-weight: 300;
	font-size: 18px;
	line-height: 1.9;
	color: #1a1a1a;
}

p {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 18px;
	font-weight: 300;
	line-height: 1.9;
}

h2, h3, h4, h5, h6 {
	font-family: 'Cormorant Garamond', 'Source Serif Pro', serif;
	font-weight: 500;
	font-style: italic;
	color: #08101c;
}

h2 {
	font-size: 36px;
	line-height: 1.3;
	margin-top: 48px;
	margin-bottom: 16px;
}

h3 {
	font-size: 28px;
	line-height: 1.3;
	margin-top: 36px;
	margin-bottom: 12px;
}

h4 {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 14px;
	font-weight: 700;
	font-style: normal;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: rgba(8,16,28,0.5);
	margin-top: 32px;
	margin-bottom: 12px;
}

/* =============== Market Ticker =============== */

.market-ticker {
	background: #020408;
	border-bottom: 1px solid rgba(255,255,255,0.03);
	padding: 8px 0;
	overflow: hidden;
	position: relative;
	z-index: 10;
	box-shadow: inset 0 1px 4px rgba(0,0,0,0.6);
}
.market-ticker::before,
.market-ticker::after {
	content: '';
	position: absolute;
	top: 0; bottom: 0;
	width: 80px;
	z-index: 2;
	pointer-events: none;
}
.market-ticker::before {
	left: 0;
	background: linear-gradient(90deg, #020408 0%, transparent 100%);
}
.market-ticker::after {
	right: 0;
	background: linear-gradient(-90deg, #020408 0%, transparent 100%);
}
.market-ticker-track {
	display: flex;
	width: max-content;
	animation: tickerScroll 60s linear infinite;
}
.market-ticker-track:hover {
	animation-play-state: paused;
}
.market-ticker-strip {
	display: flex;
	align-items: center;
	padding: 0 24px;
	flex-shrink: 0;
}
@keyframes tickerScroll {
	0% { transform: translateX(0); }
	100% { transform: translateX(-50%); }
}
.ticker-sep {
	color: rgba(255,255,255,0.06);
	margin: 0 18px;
	font-size: 4px;
}
.ticker-item {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: 'Share Tech Mono', 'Courier New', monospace;
	font-size: 12px;
	letter-spacing: 0.5px;
}
.ticker-name {
	font-weight: 400;
	color: rgba(255,255,255,0.35);
	text-transform: uppercase;
	letter-spacing: 1.5px;
	font-size: 10px;
}
.ticker-price {
	font-weight: 400;
	color: rgba(255,255,255,0.7);
	font-variant-numeric: tabular-nums;
	text-shadow: 0 0 6px rgba(255,255,255,0.15);
}
.ticker-change {
	font-weight: 400;
	font-size: 10px;
	font-variant-numeric: tabular-nums;
}
.ticker-change.up {
	color: #00e676;
	text-shadow: 0 0 8px rgba(0,230,118,0.3);
}
.ticker-change.down {
	color: #ff1744;
	text-shadow: 0 0 8px rgba(255,23,68,0.3);
}

/* =============== Transparent Nav Over Hero =============== */

.site-header {
	z-index: 100;
	background: none !important;
}

ul#menu-main-menu a {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 12px;
	color: #fff;
	transition: color 0.3s;
}

ul#menu-main-menu a:hover,
ul#menu-main-menu li.current-menu-item > a {
	color: #fff !important;
}

ul#menu-main-menu .sub-menu {
	background: #051F3C;
	border: 1px solid rgba(255,255,255,0.06);
	z-index: 100;
}

ul#menu-main-menu .sub-menu a {
	color: rgba(255,255,255,0.6) !important;
}

ul#menu-main-menu .sub-menu a:hover {
	color: #fff !important;
	background: rgba(255,255,255,0.05);
}

.site-header .site-logo img,
.site-header .custom-logo,
.navigation-branding img {
	filter: brightness(0) invert(1);
}

.site-header .search-item a {
	color: rgba(255,255,255,0.75) !important;
}

.site-header .search-item a:hover {
	color: #fff !important;
}

.menu-toggle,
.menu-toggle .mobile-menu {
	color: #fff !important;
}

@media (max-width: 768px) {
	.main-navigation .main-nav ul li a {
		color: rgba(255,255,255,0.75) !important;
	}
	.main-navigation .main-nav ul li a:hover {
		color: #fff !important;
	}
	.navigation-branding img,
	.site-logo.mobile-header-logo img {
		filter: brightness(0) invert(1);
	}
	nav#generate-slideout-menu {
		background: url(/wp-content/uploads/2025/12/klayman-toskes-gradient-blue-premium.svg);
	}
	/* Mobile nav */
	body.post-template-default .main-navigation .main-nav ul li a, body.post-template-default .main-navigation .main-nav ul li a:hover {
		color: #fff !important;
	}
	body.wp-singular .main-navigation .main-nav ul li a, body.wp-singular .main-navigation .main-nav ul li a:hover {
		color: #fff !important;
	}
}

/* =============== News Banner =============== */

#global-header-news {
	padding: 0;
	border-bottom: 1px solid rgba(255,255,255,0.06);
	border-top: 1px solid rgba(255,255,255,0.06);
	background: none;
	z-index: 10;
	position: relative;
}

#global-header-news-inner {
	max-width: 1600px;
	margin: 0 auto;
	padding: 10px 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
	position: relative;
}

/* Overlay link — covers entire bar on mobile for tap target */
.news-banner-link-overlay {
	display: none;
}

#global-header-news-inner span,
#global-header-news-inner a {
	font-family: "franklin-gothic-atf", sans-serif;
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
	font-size: 13px;
	color: rgba(255,255,255,0.7);
	float: none;
}

.news-banner-content {
	display: flex;
	align-items: center;
	gap: 16px;
	min-width: 0;
}

.news-banner-badge {
	flex-shrink: 0;
	font-family: "franklin-gothic-atf", sans-serif;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #fff;
	background: #B7322C;
	padding: 4px 10px;
	line-height: 1.2;
}

.news-banner-title {
	font-family: "franklin-gothic-atf", sans-serif;
	font-size: 13px;
	font-weight: 400;
	color: rgba(255,255,255,0.7);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.news-banner-cta {
	flex-shrink: 0;
	font-family: "franklin-gothic-atf", sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: rgba(255,255,255,0.5);
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 6px;
	transition: color 0.3s;
}

.news-banner-cta:hover {
	color: #fff;
}

.news-banner-arrow {
	transition: transform 0.3s;
	display: inline-block;
}

.news-banner-cta:hover .news-banner-arrow {
	transform: translateX(3px);
}

@media (max-width: 768px) {
	#global-header-news-inner {
		padding: 8px 16px;
	}
	.news-banner-title {
		font-size: 11px;
	}
	.news-banner-cta {
		display: none;
	}
	.news-banner-link-overlay {
		display: block;
		position: absolute;
		inset: 0;
		z-index: 1;
	}
}

/* =============== Global Elements =============== */

aside#block-22 {
	margin: auto;
}

.site-main > * {
	margin-bottom: 20px !important;
}

a.button {
	--btn-bg: #B7322C;
	--btn-bg-hover: #9F2B26;
	--btn-bg-active: #84211D;
	align-items: center;
	justify-content: center;
	padding: 10px 50px;
	background: var(--btn-bg);
	text-decoration: none;
	box-shadow: 0 10px 18px rgba(0, 0, 0, .14);
	transition: background-color .16s ease, box-shadow .16s ease, border-color .16s ease;
	text-transform: uppercase;
	margin-bottom: 20px;
	color: #fffaf2;
	font-size: 14px;
	border-radius: 5px;
	display: inline-block;
	font-family: Montserrat, sans-serif;
	font-weight: bold;
	letter-spacing: 1px;
}

a.button:hover {
	background: var(--btn-bg-hover);
	border-color: rgba(255,255,255,.22);
	box-shadow: 0 12px 20px rgba(0,0,0,.16);
}

a.button:active {
	background: var(--btn-bg-active);
	box-shadow: 0 8px 14px rgba(0,0,0,.16);
}

a.button:focus-visible {
	outline: none;
	box-shadow:
		0 0 0 3px rgba(255,255,255,.22),
		0 0 0 6px rgba(0,60,166,.35),
		0 12px 20px rgba(0,0,0,.16);
}

.slideout-navigation.main-navigation .main-nav ul li[class*="current-menu-"] > a {
	background-color: none !important;
}

@media only screen and (max-width: 1500px) {
	.nav-align-center .inside-navigation {
		justify-content: left;
	}
}

@media (max-width: 1400px) {
	#mobile-header {
		position: relative;
	}
}

@media only screen and (max-width: 768px) {
	.navigation-branding img, .site-logo.mobile-header-logo img {
		width: 200px !important;
		height: fit-content !important;
		padding-left: 10px !important;
	}
	.inside-article h2 {
		font-size: 24px;
	}
	.inside-article h3, .inside-article h4 {
		font-size: 18px;
	}
	.sticky-phone {
		display: none;
	}
	.page-template-template-no-sidebar div#page {
		padding: 0px 20px;
	}
	.menu-item-272 {
		border-left: none;
	}
	span#top-bar-text {
		display: none;
	}
	.main-navigation .main-nav ul li a, .main-navigation .menu-toggle, .main-navigation .menu-bar-items {
		border-right: none;
	}
	ul.sub-menu li {
		border-top: none;
	}
}

a.wp-block-button__link.wp-element-button {
	border-radius: 5px;
	padding: 10px 30px;
	font-size: 14px;
	line-height: 32px;
}

hr.wp-block-separator.has-alpha-channel-opacity.page-separator {
	border-top: 3px double #e6e2da;
	background: #fefefc;
}

/* =============== Featured Snippet Box =============== */

strong#highlighted-text {
	background: rgba(80, 151, 255, 0.18);
}

#fs-cta {
	display: flex;
}

#fs-cta-link {
	display: inline-flex;
}

#fs-cta-bullet {
	display: inline-flex;
}

#fs-cta-phone {
	display: inline-flex;
}

@media only screen and (max-width: 800px) {
	#fs-bottom-bar {
		display: none;
	}
}

/* =============== Contact Forms =============== */

span#higher-form-title {
	font-family: Source Serif Pro, serif;
	display: block;
	text-align: center;
	font-size: 32px;
	line-height: 1.2em;
	font-weight: 500;
	color: #fff;
	margin-bottom: 10px;
}

span#lower-form-title {
	color: #fff;
	font-family: Montserrat;
	text-align: center;
	display: block;
	font-weight: 600;
	font-size: 18px;
	line-height: 1.3em;
	margin-bottom: 10px;
}

span.required {
	display: block;
	text-align: center;
	font-family: 'Montserrat';
	font-size: 12px;
	text-transform: uppercase;
	color: #fff;
}

p.gform_required_legend {
	display: none;
}

span.gfield_required.gfield_required_asterisk {
	color: #fff;
	font-size: 18px;
}

/* =============== Page/Posts - Hero Banner (Editorial Redesign) =============== */

.global-hero-banner {
	position: relative;
	isolation: isolate;
	background: none;
	width: 100%;
	padding: 280px 30px 80px 30px;
	z-index: 1;
	overflow: visible;
	margin-top: -207px;
}

.global-hero-banner::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--ink);
	z-index: -2;
}

.global-hero-banner::after {
	content: "";
	position: absolute;
	inset: 0;
	background: url(/wp-content/uploads/2025/12/klayman-toskes-gradient-blue-premium.svg) center bottom / cover no-repeat;
	opacity: .92;
	z-index: -1;
}

.global-hero-banner-inner {
	max-width: 860px;
	margin: 0 auto;
	padding: 0 48px;
	text-align: center;
}

.global-hero-banner .hero-title-wrapper {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin-bottom: 20px;
}

.global-hero-banner .hero-title-wrapper h1 {
	font-family: 'Cormorant Garamond', 'Source Serif Pro', serif;
	font-size: 64px;
	line-height: 1.1;
	color: #fff;
	font-weight: 400;
	letter-spacing: -0.5px;
	text-transform: none;
	margin: 0;
}

.global-hero-banner .hero-title-wrapper h1::after {
	content: '';
	display: block;
	width: 48px;
	height: 1px;
	background: rgba(255,255,255,0.2);
	margin: 24px auto 0;
}

.global-hero-banner-inner p {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 17px;
	letter-spacing: 0.2px;
	font-weight: 300;
	line-height: 1.8;
	color: rgba(255,255,255,0.55);
	margin: 0 auto 36px auto;
	max-width: 620px;
	text-align: center;
}

.global-hero-banner .page-buttons a.button,
.global-hero-banner .page-buttons a#desktop-button {
	background: #b7322c !important;
	color: #fff !important;
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
	padding: 16px 48px !important;
	border-radius: 0 !important;
	border: 1px solid #b7322c !important;
	box-shadow: none !important;
	transition: background 0.3s, border-color 0.3s;
}

.global-hero-banner .page-buttons a.button:hover,
.global-hero-banner .page-buttons a#desktop-button:hover {
	background: #d43b34 !important;
	border-color: #d43b34 !important;
}

/* Ghost phone button — used across hero banners */
.hero-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
	padding: 16px 48px !important;
	border: 1px solid rgba(255, 255, 255, 0.2);
	transition: all 0.3s;
	height: fit-content;
}
.hero-phone:hover {
	color: rgba(255,255,255,0.9);
	border-color: rgba(255,255,255,0.4);
}

.global-hero-banner .page-buttons {
	text-align: center;
	margin-top: 0;
	display: inline-flex;
	align-items: stretch;
	gap: 16px;
}

a#mobile-button {
	background: #b7322c;
	border: none;
	color: #fff;
}

@media only screen and (max-width: 768px) {
	.global-hero-banner {
		padding: 0 20px 40px !important;
		margin-top: -160px;
		padding-top: 200px !important;
	}
	.global-hero-banner-inner {
		padding: 0;
	}
	.global-hero-banner .hero-title-wrapper {
		margin-bottom: 12px;
	}
	.global-hero-banner .hero-title-wrapper h1 {
		font-size: 34px !important;
		line-height: 1.15;
		margin-bottom: 0;
	}
	.global-hero-banner .hero-title-wrapper h1::after {
		width: 36px;
		margin: 16px auto 0;
	}
	.global-hero-banner-inner p {
		font-size: 14px;
		line-height: 1.7;
		margin-bottom: 24px;
	}
	.global-hero-banner .page-buttons {
		margin-top: 0;
		flex-direction: column;
		width: 100%;
		max-width: 320px;
		margin-left: auto;
		margin-right: auto;
	}
	.hero-phone {
		font-size: 11px !important;
		padding: 14px 24px !important;
		letter-spacing: 1.5px;
	}
	a#desktop-button {
		display: none;
	}
}

/* =============== CTA Bar — Editorial Redesign =============== */

.cta-bar {
	position: relative;
	background: linear-gradient(0deg, #051f3c 0%, transparent 100%);
}

.cta-bar::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--ink);
	z-index: -2;
}

.cta-bar::after {
	content: "";
	position: absolute;
	inset: 0;
	background: url(/wp-content/uploads/2025/12/klayman-toskes-gradient-blue-premium.svg) center top / cover no-repeat;
	opacity: .97;
	z-index: -1;
}

.cta-bar__inner {
	max-width: 1560px;
	margin: 0 auto;
	padding: 0 48px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	align-items: end;
	margin-top: -150px;
}

.cta-bar__form {
	padding: 80px 0 80px;
	position: relative;
	z-index: 1;
}

.cta-bar__inner #gform_wrapper_2, .cta-bar__inner #gform_wrapper_4 {
	background: #ffffff;
	padding: 48px 40px;
	border: 1px solid #d8d2c8;
	border-radius: 8px;
	box-shadow: 0 32px 80px rgba(0,0,0,0.25);
	max-width: 520px;
	position: relative;
}

div#gform_wrapper_2 span#higher-form-title, 
div#gform_wrapper_4 span#higher-form-title {
	font-family: 'Cormorant Garamond', 'Source Serif Pro', serif;
	color: #08101c;
	text-transform: none;
	font-size: 32px;
	font-weight: 400;
	letter-spacing: 0;
	font-style: normal;
	line-height: 1.2;
	margin-bottom: 8px;
	text-align: left;
}

div#gform_wrapper_2 span#lower-form-title, div#gform_wrapper_4 span#lower-form-title {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	color: #7a7a7a;
	font-size: 14px;
	font-weight: 300;
	text-transform: none;
	letter-spacing: 0;
	opacity: 1;
	text-align: left;
}

div#gform_wrapper_2 span.required, div#gform_wrapper_4 span.required {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	color: #7a7a7a;
	font-size: 10px;
	letter-spacing: 3px;
	text-transform: uppercase;
	text-align: left;
}

div#gform_wrapper_2 span.gfield_required.gfield_required_asterisk, div#gform_wrapper_4 span.gfield_required.gfield_required_asterisk {
	color: #7a7a7a;
}

div#gform_wrapper_2 legend.gfield_label.gform-field-label.gfield_label_before_complex,
div#gform_wrapper_2 label.gfield_label.gform-field-label,
div#gform_wrapper_2 legend.gfield_label.gform-field-label,
label#label_2_8_0,
label#label_2_8_1 {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	color: #7a7a7a;
	font-weight: 500;
	font-size: 10px;
	letter-spacing: 3px;
	text-transform: uppercase;
	text-align: left;
	transition: color 0.3s;
}

div#gform_wrapper_4 legend.gfield_label.gform-field-label.gfield_label_before_complex,
div#gform_wrapper_4 label.gfield_label.gform-field-label,
div#gform_wrapper_4 legend.gfield_label.gform-field-label,
label#label_4_8_0,
label#label_4_8_1 {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	color: #7a7a7a;
	font-weight: 500;
	font-size: 10px;
	letter-spacing: 3px;
	text-transform: uppercase;
	text-align: left;
	transition: color 0.3s;
}

div#gform_wrapper_2 .gfield:focus-within label.gform-field-label,
div#gform_wrapper_2 .gfield:focus-within legend.gfield_label {
	color: #08101c;
}

div#gform_wrapper_4 .gfield:focus-within label.gform-field-label,
div#gform_wrapper_4 .gfield:focus-within legend.gfield_label {
	color: #08101c;
}

div#gform_wrapper_2 input[type="text"],
div#gform_wrapper_2 input[type="email"],
div#gform_wrapper_2 input[type="tel"],
div#gform_wrapper_2 textarea {
	background: #faf7f2;
	border: 1px solid #d8d2c8;
	border-radius: 6px;
	padding: 14px 16px;
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-weight: 300;
	font-size: 14px;
	color: #1a1a1a;
	box-shadow: none;
	transition: border-color 0.4s, box-shadow 0.4s, background 0.4s;
}

div#gform_wrapper_4 input[type="text"],
div#gform_wrapper_4 input[type="email"],
div#gform_wrapper_4 input[type="tel"],
div#gform_wrapper_4 textarea {
	background: #faf7f2;
	border: 1px solid #d8d2c8;
	border-radius: 6px;
	padding: 14px 16px;
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-weight: 300;
	font-size: 14px;
	color: #1a1a1a;
	box-shadow: none;
	transition: border-color 0.4s, box-shadow 0.4s, background 0.4s;
}

div#gform_wrapper_2 input[type="text"]::placeholder,
div#gform_wrapper_2 input[type="email"]::placeholder,
div#gform_wrapper_2 input[type="tel"]::placeholder,
div#gform_wrapper_2 textarea::placeholder {
	color: #7a7a7a;
}

div#gform_wrapper_4 input[type="text"]::placeholder,
div#gform_wrapper_4 input[type="email"]::placeholder,
div#gform_wrapper_4 input[type="tel"]::placeholder,
div#gform_wrapper_4 textarea::placeholder {
	color: #7a7a7a;
}

div#gform_wrapper_2 input[type="text"]:focus,
div#gform_wrapper_2 input[type="email"]:focus,
div#gform_wrapper_2 input[type="tel"]:focus,
div#gform_wrapper_2 textarea:focus {
	border-color: #08101c;
	box-shadow: 0 0 0 4px rgba(8,16,28,0.04);
	background: #ffffff;
	outline: none;
}

div#gform_wrapper_4 input[type="text"]:focus,
div#gform_wrapper_4 input[type="email"]:focus,
div#gform_wrapper_4 input[type="tel"]:focus,
div#gform_wrapper_4 textarea:focus {
	border-color: #08101c;
	box-shadow: 0 0 0 4px rgba(8,16,28,0.04);
	background: #ffffff;
	outline: none;
}

input#gform_submit_button_2, input#gform_submit_button_4 {
	width: 100%;
	padding: 18px 36px;
	color: #fff;
	text-transform: uppercase;
	background: #b7322c;
	border: none;
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 11px;
	letter-spacing: 2px;
	font-weight: 700;
	line-height: 1;
	margin: 32px auto 0 auto;
	border-radius: 0;
	cursor: pointer;
	transition: background 0.3s;
}

input#gform_submit_button_2:hover, 
input#gform_submit_button_4:hover {
	background: #d43b34;
}

.cta-bar__trust {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 20px 0 0;
	max-width: 520px;
}

.cta-bar__trust span {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 12px;
	font-weight: 400;
	color: rgba(255,255,255,0.5);
	letter-spacing: 0.3px;
}

.cta-bar__media {
	position: relative;
	z-index: 1;
	align-self: end;
}

.cta-bar__img {
	width: 100%;
	height: auto;
	display: block;
	margin-top: -40px;
	filter: drop-shadow(0 -16px 48px rgba(0,0,0,0.15));
}

@media (max-width: 980px) {
	.cta-bar__inner {
		grid-template-columns: 1fr;
		padding: 0 20px;
		gap: 0;
		margin-top: 0px;
	}
	.cta-bar__media {
		order: -1;
	}
	.cta-bar__form {
		padding: 40px 0;
	}
	.cta-bar__inner #gform_wrapper_2 {
		padding: 32px 24px;
		max-width: 100%;
	}
	div#gform_wrapper_2 span#higher-form-title {
		font-size: 28px;
	}
	div#gform_fields_2 {
		gap: 10px;
	}
	input#gform_submit_button_2 {
		margin: 20px auto;
	}
	.cta-bar__inner #gform_wrapper_4 {
		padding: 32px 24px;
		max-width: 100%;
	}
	div#gform_wrapper_4 span#higher-form-title {
		font-size: 28px;
	}
	div#gform_fields_4 {
		gap: 10px;
	}
	input#gform_submit_button_4 {
		margin: 20px auto;
	}
}

/* =============== Footer — Editorial Redesign =============== */

.footer-widgets {
	background: #051f3c;
}

.inside-footer-widgets {
	display: block !important;
	max-width: 1560px;
	margin: 0 auto;
	text-align: center;
}

.footer-brand-columns {
	display: block;
	padding: 100px 48px 0;
	max-width: 1560px;
	margin: 0 auto;
}

.footer-brand {
	max-width: 640px;
	margin: 0 auto;
	text-align: center;
}

.footer-logo-link {
	display: inline-block;
	margin-bottom: 0px;
}

.footer-logo-link img {
	width: 300px;
	height: auto;
}

.footer-phone-block {
	margin-bottom: 8px;
	text-align: center;
}

.footer-phone-label {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: #fff;
	margin-bottom: 14px;
}

.footer-phone-label::before,
.footer-phone-label::after {
	content: '';
	width: 32px;
	height: 1px;
	background: rgba(255,255,255,0.15);
}

.footer-phone-number {
	font-family: 'Cormorant Garamond', 'Source Serif Pro', serif;
	font-size: 64px;
	font-weight: 300;
	font-style: italic;
	letter-spacing: 1px;
	color: #fff;
	text-decoration: none;
	display: inline-block;
	transition: color 0.3s;
	line-height: 1em;
	margin-bottom: 20px;
}

.footer-phone-number:hover {
	color: rgba(255,255,255,0.65);
}

span#phone-footer { display: none; }
span#hours-footer { display: none; }

.footer-hours {
	display: block;
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 13px;
	font-weight: 300;
	letter-spacing: 0.5px;
	color: #fff;
	margin-bottom: 48px;
}

.footer-social {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin: 0 0 48px !important;
	flex-wrap: nowrap;
}

.footer-social-label {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: #fff;
}

.footer-social-line {
	width: 32px;
	height: 1px;
	background: #fff;
}

.footer-social-icons {
	display: flex !important;
	gap: 20px;
	align-items: center;
}

.footer-social-icon,
.inside-footer-widgets .footer-social-icon,
.footer-brand .footer-social .footer-social-icons .footer-social-icon {
	width: auto !important;
	height: auto !important;
	border: none !important;
	border-radius: 0 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	color: #fff !important;
	text-decoration: none !important;
	transition: color 0.3s, transform 0.3s;
	background: none !important;
	padding: 0 !important;
}

.footer-social-icon:hover {
	border: none !important;
	color: #fff !important;
	background: none !important;
	transform: translateY(-1px);
}

.footer-social-icon svg {
	width: 16px;
	height: 16px;
	color: inherit;
	stroke: currentColor;
}

.footer-social-icon svg[fill="currentColor"] {
	stroke: none;
}

.follow-us-label,
.social-divider {
	display: none;
}

.inside-footer-widgets > .social-icons {
	display: none;
}

.footer-disclaimer {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 11px;
	line-height: 1.7;
	color: #fff;
	max-width: 480px;
	margin: 0 auto;
	padding: 0;
	border: none;
	border-radius: 0;
}

span#disclaimer { display: none; }

.footer-locations-eyebrow {
	display: none;
}

.footer-locations {
	padding: 0 48px !important;
	margin: 64px auto 0 !important;
	max-width: 1560px !important;
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0 !important;
	border-top: 1px solid rgba(255,255,255,0.05);
}

.footer-nap {
	background: none !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	overflow: hidden;
	margin-bottom: 0 !important;
	padding: 40px 28px;
	text-align: center;
	flex: 0 0 auto;
	width: 16.666%;
	border-right: 1px solid rgba(255,255,255,0.04) !important;
	position: relative;
	transition: background 0.5s;
}

.footer-nap:last-child {
	border-right: none !important;
}

.footer-nap-image-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	opacity: 0;
	transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1);
	z-index: 0;
}

.footer-nap:hover .footer-nap-image-wrap {
	opacity: 1;
}

.footer-nap-image-wrap img,
#location-image.footer-location-image,
img#location-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	opacity: 0.12;
	filter: grayscale(100%);
}

.footer-nap:hover {
	background: none !important;
	transform: none;
	box-shadow: none !important;
}

.footer-nap-inner {
	padding: 0 !important;
	position: relative;
	z-index: 1;
}

.footer-nap-title,
p#location-title {
	font-family: 'Cormorant Garamond', 'Source Serif Pro', serif !important;
	font-size: 24px !important;
	font-weight: 500 !important;
	font-style: normal;
	color: #fff !important;
	margin-bottom: 10px !important;
	letter-spacing: 0.2px !important;
	line-height: 1.3 !important;
}

.footer-nap-address {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif !important;
	font-size: 11px !important;
	font-weight: 300 !important;
	line-height: 1.6 !important;
	color: #fff !important;
	margin-bottom: 8px !important;
}

.footer-nap p:not(.footer-nap-title):not(.footer-nap-phone):not(.footer-nap-note):not(.footer-nap-address) {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif !important;
	font-size: 11px !important;
	font-weight: 300 !important;
	line-height: 1.6 !important;
	color: #fff !important;
	margin-bottom: 8px !important;
}

.footer-nap-phone {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif !important;
	font-size: 11px !important;
	font-weight: 400 !important;
	color: #fff !important;
	margin-bottom: 6px !important;
}

.footer-nap-note {
	display: block !important;
	font-family: 'Cormorant Garamond', 'Source Serif Pro', serif !important;
	font-size: 11px !important;
	font-weight: 400 !important;
	font-style: italic;
	letter-spacing: 0.3px !important;
	text-transform: none !important;
	color: #fff !important;
	margin-top: 4px !important;
	margin-bottom: 0 !important;
}

.footer-nap p {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif !important;
	color: #fff !important;
	font-size: 11px !important;
	line-height: 1.6 !important;
}

.footer-bottom {
	background: #041527;
	border-top: 1px solid rgba(255,255,255,0.04);
	padding: 28px 48px;
	margin-top: 0;
}

.footer-bottom-inner {
	max-width: 1560px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

footer.footer-menu { display: none; }
footer.site-info { display: none; }

.footer-nav {
	text-align: left;
}

.footer-menu-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	gap: 32px;
}

.footer-menu-list li {
	display: inline-block;
	margin: 0;
	position: relative;
}

.footer-menu-list li::after { display: none; }

.footer-menu-list a {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(255,255,255,0.25);
	text-decoration: none;
	transition: color 0.3s;
}

.footer-menu-list a:hover {
	color: rgba(255,255,255,0.6);
}

.footer-copyright {
	font-family: 'Outfit', 'franklin-gothic-atf', sans-serif;
	font-size: 10px;
	font-weight: 400;
	letter-spacing: 1px;
	color: rgba(255,255,255,0.15);
}

@media (max-width: 1024px) {
	.footer-nap {
		width: 33.333%;
	}
}

@media (max-width: 768px) {
	.footer-brand-columns {
		padding: 60px 20px 0;
	}
	.footer-logo-link img {
		width: 200px;
	}
	.footer-phone-number {
		font-size: 36px;
	}
	.footer-locations {
		padding: 0 20px !important;
		flex-direction: column;
		align-items: center;
	}
	.footer-nap {
		width: 100%;
		padding: 24px 16px;
		border-right: none !important;
		border-bottom: 1px solid rgba(255,255,255,0.04) !important;
	}
	.footer-nap:last-child {
		border-bottom: none !important;
	}
	.footer-nap-image-wrap {
		display: none;
	}
	.footer-bottom {
		padding: 24px 20px;
	}
	.footer-bottom-inner {
		flex-direction: column;
		gap: 16px;
		text-align: center;
	}
	.footer-menu-list {
		flex-wrap: wrap;
		justify-content: center;
		gap: 12px 24px;
	}
}

/* =============== Team Member Page Template =============== */

.team-member-wrapper {
	display: flex;
	flex-wrap: wrap;
	margin-top: 50px;
}

.team-member-column-1 {
	flex: 1 1 40%;
	padding: 40px;
}

.team-member-info {
	padding: 20px;
	background: #fff;
	box-shadow: 0 6px 18px rgba(31, 42, 68, .06);
}

.team-member-image {
	position: relative;
	border: 5px solid;
	border-image-slice: 1;
	border-image-source: linear-gradient(to bottom, #b7322b, #013ca6);
}

.team-member-image img {
	display: block;
	width: 100%;
	height: auto;
	padding-top: 20px;
	background: url(/wp-content/uploads/2025/12/klayman-toskes-gradient-blue-premium.svg);
}

.team-member-image::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 70%, #013ca6 100%);
	z-index: 1;
	pointer-events: none;
}

.team-member-basic-info {
	background: #013ca6;
	text-align: center;
	color: #fff;
	padding: 40px 20px;
}

.team-member-basic-info h2 {
	color: #fff;
	margin-bottom: 10px;
}

.team-member-basic-info h3 {
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 30px;
	font-family: Montserrat, sans-serif;
}

.team-member-basic-info p {
	margin-bottom: 10px;
	font-size: 14px;
}

.team-member-basic-info a#phone-email {
	color: #fff;
	text-decoration: none;
}

.team-member-basic-info a.button {
	margin-top: 40px;
	background: #A6463D;
	border: 3px solid #A6463D;
}

.team-member-additional-info {
	padding: 30px 20px 0px 20px;
}

.team-member-additional-info h4 {
	color: #243552;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 10px;
	font-family: Source Serif Pro, serif;
}

.team-member-additional-info ul {
	font-size: 14px;
	font-weight: bold;
	color: #2c2c2c;
}

.team-member-additional-info li {
	line-height: 2em;
}

.team-member-column-2 {
	flex: 1 1 60%;
	padding: 40px;
}

.team-member-bio {
	max-width: 720px;
}

.team-member-column-2 h4 {
	color: #003f67;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
	font-family: Montserrat, sans-serif;
}

.team-member-column-2 ul {
	font-size: 14px;
	font-weight: bold;
}

@media (max-width: 768px) {
	.team-member-wrapper {
		padding: 0px 10px;
	}
	.team-member-column-1,
	.team-member-column-2 {
		flex: 1 1 100%;
		padding: 10px;
	}
}

/* =============== Page: Transactional =============== */

.global-hero-banner.transactional-hero {
	padding: 0 20px;
	margin-bottom: 0px;
}

.global-hero-banner.transactional-hero .hero-content-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.hero-left {
	flex: 2;
	margin: auto;
}

.global-hero-banner.transactional-hero h1 {
	font-size: 64px;
	color: #263c4d;
	font-family: Source Serif Pro, serif;
	letter-spacing: 1px;
}

.atf-text p {
	font-size: 17px;
	font-family: Montserrat, sans-serif;
	font-weight: 500;
	line-height: 32px;
	color: #2c2c2c;
	margin-bottom: 30px;
	max-width: 800px;
}

.hero-left .page-buttons {
	text-align: left;
	margin-top: 0;
}

.hero-right {
	flex: 1;
	align-items: flex-end;
}

.attorney-image {
	position: relative;
	margin-top: 40px;
}

.attorney-image img {
	display: block;
	max-width: 100%;
	height: auto;
}

.inside-right-sidebar span#higher-form-title {
	color: #fff;
}

@media (min-width: 769px) {
	.transactional-page {
		flex: 65%;
		float: left;
	}
	.transactional-page #right-sidebar {
		width: 35%;
		float: right;
	}
}

@media screen and (max-width: 768px) {
	.global-hero-banner.transactional-hero {
		padding: 40px 20px;
		margin-bottom: 20px;
	}
	.global-hero-banner.transactional-hero .hero-content-wrapper {
		flex-direction: column;
	}
	.hero-left {
		text-align: center;
		margin: 0 auto;
		width: 100%;
	}
	.hero-left .page-buttons {
		text-align: center;
	}
	.hero-right {
		display: none;
	}
	.global-hero-banner.transactional-hero h1 {
		font-size: 42px;
	}
	.atf-text p {
		max-width: 100%;
	}
	#right-sidebar {
		width: 100%;
	}
}

/* =============== Page: Contact =============== */

.page-id-265 .page-breadcrumbs {
	display: none;
}

.page-id-265 .page-buttons {
	display: none;
}

@media screen and (max-width: 768px) {
	.wp-block-columns.is-layout-flex.wp-container-core-columns-is-layout-1.wp-block-columns-is-layout-flex {
		display: flex;
	}
	.wp-block-column.contact-page-form.is-layout-flow.wp-block-column-is-layout-flow {
		order: 1;
	}
	.wp-block-column.is-layout-flow.wp-block-column-is-layout-flow {
		order: 2;
	}
}

/* =============== Blog/Archive =============== */

h2.entry-title a {
	color: #263c4d;
	font-size: 32px;
	text-decoration: none;
}

.entry-summary p {
	font-size: 14px;
	line-height: 1.5em;
}

.post-image {
	margin-top: 10px !important;
}

.entry-summary {
	margin-top: 10px !important;
}

body.blog .generate-columns-container {
	margin-top: 50px;
}

@media only screen and (max-width: 768px) {
	body.blog .generate-columns-container {
		margin-top: 0px;
	}
}

/* =============== Default Page Content — Gutenberg Extras =============== */

/* Page content entry animation */
@keyframes pageContentReveal {
	from { opacity: 0; transform: translateY(32px); }
	to { opacity: 1; transform: translateY(0); }
}

.page-template-default .inside-article,
.page-template-template-no-sidebar .inside-article {
	opacity: 0;
	animation: pageContentReveal 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.15s forwards;
}

/* Full-width page wrapper — fixes CTA bar/footer overlap */
.page-template-default div#page,
.page-template-template-no-sidebar div#page {
	width: 100% !important;
	max-width: none;
	background: #fff;
}

/* Content container */
.page-template-default .site-main .inside-article,
.page-template-template-no-sidebar .site-main .inside-article {
	max-width: 900px;
	margin: 0 auto;
}

.page-template-default .entry-content,
.page-template-template-no-sidebar .entry-content {
	padding-top: 80px;
}

/* Drop cap — first paragraph */
.page-template-default .entry-content > p:first-of-type::first-letter,
.page-template-default .entry-content > div > p:first-of-type::first-letter,
.page-template-template-no-sidebar .entry-content > p:first-of-type::first-letter,
.page-template-template-no-sidebar .entry-content > div > p:first-of-type::first-letter {
	font-family: 'Cormorant Garamond', 'Source Serif Pro', serif;
	font-size: 60px;
	font-weight: 400;
	color: #08101c;
	float: left;
	line-height: 0.8;
	margin-right: 10px;
	margin-top: 6px;
}

.page-template-default .entry-content a,
.page-template-template-no-sidebar .entry-content a {
	color: #b7322c;
	text-decoration: underline;
	text-decoration-color: rgba(183,50,44,0.3);
	text-underline-offset: 2px;
	transition: text-decoration-color 0.3s;
}

.page-template-default .entry-content a:hover,
.page-template-template-no-sidebar .entry-content a:hover {
	text-decoration-color: #b7322c;
}

.page-template-default .entry-content ul,
.page-template-template-no-sidebar .entry-content ul {
	padding-left: 20px;
	margin: 20px 0;
}

.page-template-default .entry-content ul li,
.page-template-template-no-sidebar .entry-content ul li {
	margin-bottom: 8px;
	line-height: 1.8;
}

.page-template-default .entry-content ul li::marker,
.page-template-template-no-sidebar .entry-content ul li::marker {
	color: rgba(8,16,28,0.2);
}

.page-template-default .entry-content blockquote,
.page-template-template-no-sidebar .entry-content blockquote {
	border-left: 3px solid #b7322c;
	padding: 0 0 0 24px;
	margin: 32px 0;
}

.page-template-default .entry-content blockquote p,
.page-template-template-no-sidebar .entry-content blockquote p {
	font-size: 24px;
	font-style: italic;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(8,16,28,0.7);
}

.page-template-default .entry-content img,
.page-template-template-no-sidebar .entry-content img {
	border-radius: 6px;
	margin: 24px 0;
}

/* Hide duplicate title — already in hero banner */
.page-template-default .entry-header,
.page-template-template-no-sidebar .entry-header {
	display: none;
}

@media (max-width: 768px) {
	h2 { font-size: 28px; margin-top: 36px; }
	h3 { font-size: 22px; }
}

/* =============== Custom Post Types =============== */

.press_releases-template-default .hero-title-wrapper,
.brokerage-firms-template-default .hero-title-wrapper,
.investigations-template-default .hero-title-wrapper,
.broker-investigation-template-default .hero-title-wrapper {
	display: inline-block;
	text-align: left;
}

.press_releases-template-default .hero-title-wrapper,
.brokerage-firms-template-default .hero-title-wrapper,
.investigations-template-default .hero-title-wrapper,
.broker-investigation-template-default .hero-title-wrapper {
	max-width: 1000px;
}

.press_releases-template-default .hero-title-wrapper h1,
.brokerage-firms-template-default .hero-title-wrapper h1,
.investigations-template-default .hero-title-wrapper h1,
.broker-investigation-template-default .hero-title-wrapper h1 {
	font-size: 64px;
}

.press_releases-template-default .page-breadcrumbs p,
.brokerage-firms-template-default .page-breadcrumbs p,
.investigations-template-default .page-breadcrumbs p,
.broker-investigation-template-default .page-breadcrumbs p {
	text-align: left;
}

.press_releases-template-default .page-breadcrumbs a,
.brokerage-firms-template-default .page-breadcrumbs a,
.investigations-template-default .page-breadcrumbs a,
.broker-investigation-template-default .page-breadcrumbs a {
	text-align: left;
}

.press_releases-template-default .entry-content,
.brokerage-firms-template-default .entry-content,
.investigations-template-default .entry-content,
.broker-investigation-template-default .entry-content {
	margin-top: 30px;
}