/* SP Mikvah visual refresh — typography, hero, announcement strip, forms.
   Loads after Salient's dynamic styles (priority 999). */

/* ---------- Typography ---------- */
h1, h2, h4,
.page-header-bg-image-wrap h1,
#page-header-bg h1,
.nectar-page-header h1 {
	font-family: 'Cormorant Garamond', 'Frank Ruhl Libre', Georgia, serif !important;
	font-weight: 500 !important;
	letter-spacing: -0.01em;
	color: #16293A;
}
h1 em, h2 em, h4 em,
.sp-hero h1.sp-hero-title em {
	font-family: 'Cormorant Garamond', 'Frank Ruhl Libre', Georgia, serif !important;
	font-style: italic !important;
	font-weight: 500 !important;
}
.container-wrap h4,
.container-wrap h2 {
	color: #16293A;
}
.light h4, .light h2, .sp-hero h1 {
	color: #FFFFFF;
}
body,
.container-wrap p,
.container-wrap li,
.gform_wrapper {
	font-family: 'Poppins', 'Frank Ruhl Libre', system-ui, -apple-system, 'Segoe UI', sans-serif !important;
}
.container-wrap p,
.container-wrap li {
	color: #3A4651;
}
.container-wrap .wpb_column_text p,
.container-wrap .wpb_text_column p {
	max-width: 70ch;
}
[lang="he"], .hebrew {
	font-family: 'Frank Ruhl Libre', serif !important;
}

/* ---------- Header ---------- */
#header-outer #top nav > ul > li > a {
	letter-spacing: 0.08em;
	white-space: nowrap;
}

/* ---------- Hero ---------- */
.sp-hero .row-bg-overlay {
	background: linear-gradient(90deg, rgba(12,34,52,0.92) 0%, rgba(12,34,52,0.72) 40%, rgba(12,34,52,0.22) 75%, rgba(12,34,52,0.06) 100%) !important;
	opacity: 1 !important;
}
.sp-hero .row-bg-wrap::after {
	content: '';
	position: absolute;
	left: 0; right: 0; bottom: 0;
	height: 220px;
	background: linear-gradient(180deg, rgba(12,34,52,0) 0%, rgba(12,34,52,0.55) 100%);
	pointer-events: none;
}
.sp-hero .sp-hero-copy {
	max-width: 760px;
}
.sp-eyebrow p {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #A9D3EA !important;
	margin-bottom: 22px;
}
.sp-hero h1.sp-hero-title {
	font-size: 76px;
	line-height: 1.04;
	color: #FFFFFF;
	margin-bottom: 24px;
	max-width: 20ch;
}
.sp-hero-lede p {
	font-size: 18px;
	line-height: 1.65;
	max-width: 44ch;
	color: rgba(255,255,255,0.9) !important;
	margin-bottom: 28px;
}
.sp-hero .nectar-button {
	margin: 0 12px 12px 0;
	border-radius: 999px !important;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
}
.sp-hero-meta p {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 36px;
	max-width: none;
	padding-top: 22px;
	margin-top: 16px;
	border-top: 1px solid rgba(255,255,255,0.25);
	font-size: 14px;
	line-height: 20px;
	color: rgba(255,255,255,0.85) !important;
}
.sp-hero-meta a {
	color: rgba(255,255,255,0.85);
	text-decoration: none;
}
.sp-hero-meta a:hover {
	color: #FFFFFF;
}
@media (max-width: 999px) {
	.sp-hero h1.sp-hero-title { font-size: 46px; }
	.sp-hero-lede p { font-size: 16px; }
	.sp-hero .nectar-button { display: block; width: 100%; margin: 0 0 10px; text-align: center; }
	.sp-hero-meta p { flex-direction: column; gap: 6px; }
}

/* ---------- Announcement strip ---------- */
.container-wrap .sp-announce .wpb_text_column p,
.sp-announce .wpb_text_column p,
.sp-announce p {
	margin: 0;
	max-width: none;
	font-size: 14px;
	line-height: 20px;
	color: #FFFFFF !important;
	text-align: center;
}
.sp-announce a {
	color: #FFFFFF;
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.sp-announce a:hover {
	color: #D6E8F2;
}

/* ---------- Membership section + forms ---------- */
.sp-member {
	box-shadow: 0 24px 60px rgba(22,41,58,0.14) !important;
	border-radius: 6px;
}
.sp-member .wpb_text_column,
.sp-member .vc_custom_heading,
.sp-member .gform_wrapper {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}
.container-wrap .sp-member h2,
.container-wrap .sp-member .wpb_text_column p {
	text-align: left !important;
}
.sp-member h2 {
	margin-bottom: 20px;
}
.sp-member .wpb_text_column p {
	max-width: 64ch;
}
.sp-member .gform_wrapper,
.sp-member .gform_wrapper label,
.sp-member .gform_wrapper legend,
.sp-member .gform_wrapper .gfield_description,
.sp-member .gform_wrapper .gsection_title,
.sp-member .gform_wrapper .ginput_complex label,
.sp-member .gform_wrapper .gform_footer {
	text-align: left !important;
}
.sp-member .gform_wrapper {
	max-width: 760px;
	margin: 32px auto 0;
}
.sp-visit h4 {
	font-size: 32px;
	line-height: 1.15;
}
.gform_wrapper.gform-theme--orbital,
.gform_wrapper.gravity-theme {
	--gf-color-primary: #00619a;
	--gf-color-primary-contrast: #FFFFFF;
	--gf-color-primary-darker: #004d7a;
	--gf-color-primary-lighter: #2a7fb3;
	--gf-color-in-ctrl-primary: #16293A;
	--gf-ctrl-border-color: #CFD6DB;
	--gf-ctrl-radius: 8px;
	--gf-ctrl-btn-radius: 999px;
	--gf-ctrl-btn-font-weight: 500;
	--gf-ctrl-btn-padding-x: 28px;
	--gf-label-color-primary: #16293A;
	--gf-label-color-secondary: #5A6670;
	--gf-label-font-weight-primary: 500;
	--gf-form-gap-y: 28px;
}
.container-wrap .gform_wrapper h3.gsection_title,
.gform_wrapper .gsection_title {
	font-family: 'Cormorant Garamond', 'Frank Ruhl Libre', Georgia, serif !important;
	font-weight: 500 !important;
	font-size: 32px !important;
	line-height: 1.15 !important;
	color: #16293A !important;
	margin-bottom: 4px;
}
.gform_wrapper label,
.gform_wrapper legend,
.gform_wrapper .gfield_description,
.gform_wrapper .ginput_product_price_label,
.gform_wrapper .ginput_quantity_label {
	font-family: 'Poppins', 'Frank Ruhl Libre', system-ui, -apple-system, 'Segoe UI', sans-serif !important;
}
.gform_wrapper .gfield_label,
.gform_wrapper legend.gfield_label {
	font-weight: 500 !important;
	font-size: 15px !important;
	color: #16293A !important;
}
.gform_wrapper .gform-field-label--type-sub,
.gform_wrapper .ginput_complex label,
.gform_wrapper .ginput_product_price_label,
.gform_wrapper .ginput_quantity_label {
	font-weight: 400 !important;
	font-size: 13px !important;
	color: #5A6670 !important;
}
.container-wrap .gform_wrapper .gsection .gsection_title,
.container-wrap .gform_wrapper .gsection_title,
.container-wrap .gform_wrapper [class*="gsection_title"] {
	font-family: 'Cormorant Garamond', 'Frank Ruhl Libre', Georgia, serif !important;
	font-weight: 500 !important;
	font-size: 32px !important;
	line-height: 1.15 !important;
	color: #16293A !important;
}
.gform_wrapper .gfield_required {
	color: #8A2A2A !important;
}
.gform_wrapper .ginput_product_price,
.gform_wrapper .ginput_total {
	color: #16293A !important;
}
.gform_wrapper .ginput_product_price_label,
.gform_wrapper .ginput_quantity_label {
	color: #5A6670;
}
.gform_wrapper .gform_footer {
	justify-content: flex-start;
}

/* Section headings inside forms (HTML blocks) */
.container-wrap .gform_wrapper .gfield--type-html h3.sp-form-section {
	font-family: 'Cormorant Garamond', 'Frank Ruhl Libre', Georgia, serif !important;
	font-weight: 500 !important;
	font-size: 32px !important;
	line-height: 1.15 !important;
	color: #16293A !important;
	padding-top: 24px;
	margin-bottom: 0;
}
.gform_wrapper .gfield--type-html:first-child h3.sp-form-section {
	padding-top: 8px;
}

/* About row: WPBakery hides the photo column on medium screens (992-1199px),
   so let the text column take the full width there instead of half. */
@media (min-width: 1000px) and (max-width: 1299px) {
	#about .wpb_column.vc_col-sm-6:not(.vc_hidden-md) {
		width: 100% !important;
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
	#about .wpb_column.vc_col-sm-6:not(.vc_hidden-md) .hideondesktop {
		display: block !important;
		max-width: 100%;
		margin-bottom: 32px;
	}
}
