/*
Theme Name: nhcibor-2026
Theme URI: 
Author: FirstTracks Marketing
Author URI: 
Description: NHCIBOR 2026
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: firsttracks-theme
Text Domain: nhcibor-2026
Tags: 
*/

/* ==============================
   BEGIN - Global styles 
   =========================== */
:root {
    --primary-50: #F0D2D7;
    --primary-100: #D17988;
    --primary-200: #B21F39;
    --primary-300: #8E192E;
    --primary-400: #470C17;

    --neutral-50: #FCFCFC;
    --neutral-100: #D5D5D9;
    --neutral-200: #B0B2B6;
    --neutral-300: #8B8E91;
    --neutral-400: #68696B;

    --secondary-50: #FDFBF7;
    --secondary-100: #FAF2E8;
    --secondary-200: #F6E9D8;
    --secondary-300: #F1DBC4;
    --secondary-400: #EDCCB0;

    --dark: #252121;
    --light: #FFFFFF;
    --border: #e5e5e5;
}
/* ==============================
   END - Global styles 
   =========================== */


/* ==============================
   BEGIN - ACF form styles 
   =========================== */
form.af-form.acf-form {
	max-width: 1100px;
	margin: 0 auto;
	padding: 32px;
	background: transparent;
	border: 0;
	border-radius: 0px;
	box-shadow: none;
	padding: 0;
}

/* Hide duplicate tab field rows */
form.af-form .acf-field-tab {
	display: none !important;
}

/* Field wrapper layout */
form.af-form .af-fields.acf-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px 24px;
	align-items: start;
}

/* Full width items */
form.af-form .acf-tab-wrap,
form.af-form .af-submit,
form.af-form .af-field-type-radio.af-field-membership-type,
form.af-form .af-field-type-radio.af-field-preferred-phone,
form.af-form .af-field-type-radio.af-field-gender,
form.af-form .af-field-type-radio.af-field-realtor-designation,
form.af-form .af-field-type-radio.af-field-license--certififed-appraiser,
form.af-form .af-field-type-radio.af-field-association-of-realtors-member,
form.af-form .af-field-type-radio.af-field-previously-held-membership-association-of-realtors,
form.af-form .af-field-type-radio.af-field-violation-of-the-code-of-ethics,
form.af-form .af-field-type-radio.af-field-are-you-a-principal-partner-corporate-officer-or-branch-office-manager,
form.af-form .af-field-type-radio.af-field-are-you-a-member-of-any-other-real-estate-board,
form.af-form .af-field-type-radio.af-field-if-you-will-elect-to-join-nhar-do-you-plan-on-attending-the-nhar-conference,
form.af-form .af-field-type-radio.af-field-have-you-ever-been-refused-membership-in-any-other-real-estate-board,
form.af-form .af-field-type-radio.af-field-complaints-against-you-or-the-firm,
form.af-form .af-field-type-textarea {
	grid-column: 1 / -1;
}

/* Generic field card */
form.af-form .af-field {
	padding: 18px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 0px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

form.af-form .af-field:focus-within {
	background: #ffffff;
	border-color: #2563eb;
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}

/* Labels */
form.af-form .af-label label,
form.af-form .acf-label label {
	display: inline-block;
	margin-bottom: 10px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	color: #0f172a;
}

form.af-form .acf-required {
	color: #dc2626;
	font-weight: 700;
}

/* Instructions */
form.af-form .af-field-instructions,
form.af-form .acf-field p.description,
form.af-form .acf-field .description {
	margin: 8px 0 0;
	font-size: 13px;
	line-height: 1.5;
	color: #475569;
}

/* Inputs */
form.af-form input[type="text"],
form.af-form input[type="email"],
form.af-form input[type="url"],
form.af-form input[type="password"],
form.af-form input[type="number"],
form.af-form select,
form.af-form textarea,
form.af-form .acf-date-picker input[type="text"] {
	width: 100%;
	min-height: 50px;
	padding: 12px 14px;
	font-size: 15px;
	line-height: 1.4;
	color: #0f172a;
	background: #ffffff;
	border: 1px solid #cbd5e1;
	border-radius: 0px;
	box-shadow: none;
	appearance: none;
	-webkit-appearance: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

form.af-form textarea {
	min-height: 140px;
	resize: vertical;
}

form.af-form input:focus,
form.af-form select:focus,
form.af-form textarea:focus,
form.af-form .acf-date-picker input[type="text"]:focus {
	outline: none;
	border-color: #2563eb;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

/* Select arrow */
form.af-form select {
	background-image:
		linear-gradient(45deg, transparent 50%, #475569 50%),
		linear-gradient(135deg, #475569 50%, transparent 50%);
	background-position:
		calc(100% - 18px) calc(50% - 3px),
		calc(100% - 12px) calc(50% - 3px);
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
	padding-right: 42px;
}

/* Tabs */
form.af-form .acf-tab-wrap {
	margin-bottom: 8px;
	padding: 6px;
}

form.af-form .acf-tab-group {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

form.af-form .acf-tab-group li {
	margin: 0;
}

form.af-form .acf-tab-group li a.acf-tab-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 18px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	color: #334155;
	background: transparent;
	border: 0;
	border-radius: 0px;
	transition: all 0.2s ease;
}

form.af-form .acf-tab-group li.active a.acf-tab-button,
form.af-form .acf-tab-group li a.acf-tab-button:hover {
	color: #0f172a;
	background: #ffffff;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

/* Radio groups */
form.af-form .acf-radio-list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

form.af-form .acf-radio-list li {
	margin: 0;
}

form.af-form .acf-radio-list label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	margin: 0;
	font-size: 14px;
	font-weight: 600;
	color: #1e293b;
	background: #ffffff;
	border: 1px solid #cbd5e1;
	border-radius: 0px;
	cursor: pointer;
	transition: all 0.2s ease;
}

form.af-form .acf-radio-list label:hover {
	border-color: #94a3b8;
	background: #f8fafc;
}

form.af-form .acf-radio-list label.selected {
	border-color: #2563eb;
	background: rgba(37, 99, 235, 0.08);
	color: #1d4ed8;
}

form.af-form .acf-radio-list input[type="radio"] {
	margin: 0;
	accent-color: #2563eb;
}

/* Button group */
form.af-form .acf-button-group {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

form.af-form .acf-button-group label {
	padding: 12px 16px;
	font-size: 14px;
	font-weight: 700;
	color: #334155;
	background: #ffffff;
	border: 1px solid #cbd5e1;
	border-radius: 0px;
	cursor: pointer;
	transition: all 0.2s ease;
}

form.af-form .acf-button-group label.selected {
	color: #1d4ed8;
	background: rgba(37, 99, 235, 0.08);
	border-color: #2563eb;
}

/* Submit */
form.af-form .af-submit {
	margin-top: 10px;
	padding: 0;
	background: transparent;
	border: 0;
}

form.af-form .acf-button.af-submit-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 0 24px;
	font-size: 16px;
	font-weight: 700;
  color: var(--light);
  background-color: #322d2d;
	border: 0;
	border-radius: 0px;
	cursor: pointer;
	box-shadow: 0 10px 20px rgba(37, 99, 235, 0.2);
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

form.af-form .acf-button.af-submit-button:hover {
	background: #000000;
	transform: translateY(-1px);
	box-shadow: 0 14px 28px rgba(37, 99, 235, 0.26);
}

/* Hidden conditional fields when revealed */
form.af-form .af-field.acf-hidden[hidden="hidden"],
form.af-form .af-field.acf-hidden[hidden] {
	display: none !important;
}

/* Honeypot/accessibility */
form.af-form input[name="email_for_non_humans"],
form.af-form label[for^="af_email_for_non_humans"] {
	position: absolute !important;
	left: -9999px !important;
}

/* Datepicker icon spacing */
form.af-form .acf-date-picker {
	position: relative;
}

form.af-form .acf-date-picker input[type="text"] {
	padding-right: 14px;
}

/* === Media Queries === */
@media (max-width: 900px) {
	form.af-form .af-fields.acf-fields {
		grid-template-columns: 1fr;
	}

	form.af-form .af-field,
	form.af-form .acf-tab-wrap,
	form.af-form .af-submit {
		grid-column: 1 / -1;
	}
}

@media (max-width: 640px) {
	form.af-form.acf-form {
		padding: 20px;
		border-radius: 0px;
	}

	form.af-form .af-field {
		padding: 16px;
		border-radius: 0px;
	}

	form.af-form .acf-tab-group {
		flex-direction: column;
	}

	form.af-form .acf-tab-group li a.acf-tab-button {
		width: 100%;
		justify-content: flex-start;
	}
}
/* ==============================
   END - ACF form styles 
   =========================== */


/* ==============================
   BEGIN - Contact page styles 
   =========================== */
/* === Media Queries === */
@media (max-width: 767px) {
  iframe.contact-map {
    max-width: 400px;
    max-height: 300px;
  }
}
/* ==============================
   END - Contact page styles 
   =========================== */
	 

/* ==============================
   BEGIN - Gravity Form styles
   Form IDs: 2, 3, 5, 6 
   =========================== */
/* Email Member Form Styles */
.email-member-form{display:none}
.email-member-form.is-visible{display:block}
#email-member-form #input_5_6 {display:none;}


#gform_wrapper_2,
#gform_wrapper_3 {
	max-width: 1100px;
	margin: 0 auto;
	background: transparent;
	border: 0;
	box-shadow: none;
}

#gform_wrapper_2 .gform_fields,
#gform_wrapper_3 .gform_fields {
	display: grid !important;
	grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
	gap: 0 !important;
	align-items: start;
}

/* Full-width fields */
#gform_wrapper_2 #field_2_1,
#gform_wrapper_2 #field_2_4,
#gform_wrapper_2 #field_2_5,
#gform_wrapper_3 #field_3_1,
#gform_wrapper_3 #field_3_4,
#gform_wrapper_3 #field_3_6 {
	grid-column: 1 / -1 !important;
}

/* Email / Phone and Company Name / Company Phone - equal columns */
#gform_wrapper_2 #field_2_3,
#gform_wrapper_2 #field_2_6,
#gform_wrapper_2 #field_2_7,
#gform_wrapper_2 #field_2_9,
#gform_wrapper_3 #field_3_3,
#gform_wrapper_3 #field_3_5,
#gform_wrapper_3 #field_3_7,
#gform_wrapper_3 #field_3_9 {
	grid-column: span 6 !important;
	min-width: 0;
}

/* Field card */
#gform_wrapper_2 .gfield,
#gform_wrapper_3 .gfield {
	padding: 18px;
	/*background: #f8fafc;
	border: 1px solid #e2e8f0;*/
	border-radius: 0;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

#gform_wrapper_2 .gfield:focus-within,
#gform_wrapper_3 .gfield:focus-within {
	background: #ffffff;
	border-color: #2563eb;
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}

/* Labels */
#gform_wrapper_2 .gfield_label,
#gform_wrapper_2 .gform-field-label,
#gform_wrapper_3 .gfield_label,
#gform_wrapper_3 .gform-field-label {
	display: inline-block;
	margin-bottom: 10px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	color: #0f172a;
}

#gform_wrapper_2 .gform-field-label--type-sub,
#gform_wrapper_3 .gform-field-label--type-sub {
	margin: 8px 0 0;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	color: #475569;
}

/* Inputs */
#gform_wrapper_2 input[type="text"],
#gform_wrapper_2 input[type="email"],
#gform_wrapper_2 input[type="tel"],
#gform_wrapper_2 input[type="password"],
#gform_wrapper_2 input[type="number"],
#gform_wrapper_2 input[type="url"],
#gform_wrapper_2 select,
#gform_wrapper_2 textarea,
#gform_wrapper_3 input[type="text"],
#gform_wrapper_3 input[type="email"],
#gform_wrapper_3 input[type="tel"],
#gform_wrapper_3 input[type="password"],
#gform_wrapper_3 input[type="number"],
#gform_wrapper_3 input[type="url"],
#gform_wrapper_3 select,
#gform_wrapper_3 textarea,
#email-member-form #input_5_1_3,
#email-member-form #input_5_3,
#email-member-form #input_5_4 {
	width: 100%;
	min-height: 50px;
	padding: 12px 14px;
	font-size: 15px;
	line-height: 1.4;
	color: #0f172a;
	background: #ffffff;
	border: 1px solid #cbd5e1;
	border-radius: 0;
	box-shadow: none;
	appearance: none;
	-webkit-appearance: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#gform_wrapper_2 textarea,
#gform_wrapper_3 textarea {
	min-height: 140px;
	resize: vertical;
}

#gform_wrapper_2 input:focus,
#gform_wrapper_2 select:focus,
#gform_wrapper_2 textarea:focus,
#gform_wrapper_3 input:focus,
#gform_wrapper_3 select:focus,
#gform_wrapper_3 textarea:focus {
	outline: none;
	border-color: #2563eb;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

/* Select arrow */
#gform_wrapper_2 select,
#gform_wrapper_3 select {
	background-image:
		linear-gradient(45deg, transparent 50%, #475569 50%),
		linear-gradient(135deg, #475569 50%, transparent 50%);
	background-position:
		calc(100% - 18px) calc(50% - 3px),
		calc(100% - 12px) calc(50% - 3px);
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
	padding-right: 42px;
}

/* Complex Gravity Forms fields */
#gform_wrapper_2 .ginput_complex,
#gform_wrapper_3 .ginput_complex {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 24px;
}

#gform_wrapper_2 .ginput_complex > span,
#gform_wrapper_2 .ginput_complex .gform-grid-col,
#gform_wrapper_3 .ginput_complex > span,
#gform_wrapper_3 .ginput_complex .gform-grid-col {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Street Address / Address Line 2 - equal columns on both forms */
#gform_wrapper_2 .ginput_container_address .address_line_1,
#gform_wrapper_2 .ginput_container_address .address_line_2,
#gform_wrapper_3 .ginput_container_address .address_line_1,
#gform_wrapper_3 .ginput_container_address .address_line_2 {
	grid-column: span 1 !important;
	min-width: 0;
}

#gform_wrapper_2 .ginput_container_address input,
#gform_wrapper_2 .ginput_container_address select,
#gform_wrapper_3 .ginput_container_address input,
#gform_wrapper_3 .ginput_container_address select {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
}

/* Footer / submit */
#gform_wrapper_2 .gform-footer,
#gform_wrapper_3 .gform-footer {
	margin: 25px 0;
	padding: 0;
	background: transparent;
	border: 0;
}

#gform_wrapper_2 .gform_button.button,
#gform_wrapper_2 input[type="submit"],
#gform_wrapper_3 .gform_button.button,
#gform_wrapper_3 input[type="submit"],
#email-member-form #gform_submit_button_5 {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 0 24px;
	font-size: 16px;
	font-weight: 700;
  color: var(--light);
  background-color: #322d2d;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	box-shadow: 0 10px 20px rgba(37, 99, 235, 0.2);
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

#gform_wrapper_2 .gform_button.button:hover,
#gform_wrapper_2 input[type="submit"]:hover,
#gform_wrapper_3 .gform_button.button:hover,
#gform_wrapper_3 input[type="submit"]:hover,
#email-member-form #gform_submit_button_5:hover {
  background-color: #000000;
	transform: translateY(-1px);
	box-shadow: 0 14px 28px rgba(37, 99, 235, 0.26);
}

/* Validation */
#gform_wrapper_2 .gfield_error,
#gform_wrapper_3 .gfield_error {
	border-color: #dc2626;
	background: #fff7f7;
}

#gform_wrapper_2 .validation_message,
#gform_wrapper_2 .gfield_validation_message,
#gform_wrapper_3 .validation_message,
#gform_wrapper_3 .gfield_validation_message {
	margin-top: 8px;
	font-size: 13px;
	font-weight: 600;
	color: #dc2626;
}

/* Fix fieldset legends sitting outside the card */
#gform_wrapper_2 fieldset.gfield,
#gform_wrapper_3 fieldset.gfield {
	position: relative;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

#gform_wrapper_2 fieldset.gfield > legend.gfield_label,
#gform_wrapper_3 fieldset.gfield > legend.gfield_label {
	display: block !important;
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 0 -35px 18px !important;
	padding: 25px 0 !important;
	position: relative !important;
	z-index: 2;
}

/* Make the actual input wrapper look like the card */
#gform_wrapper_2 fieldset.gfield > .ginput_complex,
#gform_wrapper_3 fieldset.gfield > .ginput_complex {
	padding: 18px !important;
	padding-top: 36px !important;
	margin-top: -18px !important;
	/*background: #f8fafc;
	border: 1px solid #e2e8f0;*/
	border-radius: 0;
	min-width: 0;
}

#field_2_11 .ginput_container.ginput_container_radio {
	margin: 20px 15px !important;
}

#gform_2 .gform-footer #gform_submit_button_2 {
	margin-left: 0 !important;
}

/* Keep normal div fields using the card style */
#gform_wrapper_2 .gfield:not(fieldset),
#gform_wrapper_3 .gfield:not(fieldset) {
	padding: 0 18px 10px !important;
	/*background: #f8fafc;
	border: 1px solid #e2e8f0;*/
}

/* Responsive */
@media (max-width: 900px) {
	#gform_wrapper_2 .gform_fields,
	#gform_wrapper_3 .gform_fields {
		grid-template-columns: minmax(0, 1fr) !important;
	}
	#gform_wrapper_2 .gform_fields > .gfield,
	#gform_wrapper_3 .gform_fields > .gfield {
		grid-column: 1 / -1 !important;
	}
	#gform_wrapper_2 .ginput_complex,
	#gform_wrapper_3 .ginput_complex {
		grid-template-columns: minmax(0, 1fr);
	}
	#gform_wrapper_2 .ginput_container_address .address_line_1,
	#gform_wrapper_2 .ginput_container_address .address_line_2,
	#gform_wrapper_3 .ginput_container_address .address_line_1,
	#gform_wrapper_3 .ginput_container_address .address_line_2 {
		grid-column: 1 / -1 !important;
	}
}

@media (max-width: 640px) {
	#gform_wrapper_2 .gfield,
	#gform_wrapper_3 .gfield {
		padding: 16px;
	}
	
	#gform_wrapper_2 .gform-footer,
  #gform_wrapper_3 .gform-footer {
		margin: 25px 0;
  }
}

/* Consistent horizontal alignment - both membership forms */
#gform_wrapper_2 .gform_fields > .gfield,
#gform_wrapper_3 .gform_fields > .gfield,
#gform_wrapper_2 .gfield:not(fieldset),
#gform_wrapper_3 .gfield:not(fieldset) {
	box-sizing: border-box;
	min-width: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 12px !important;
	padding-right: 12px !important;
}
#gform_wrapper_2 fieldset.gfield > legend.gfield_label,
#gform_wrapper_3 fieldset.gfield > legend.gfield_label {
	margin-left: 0 !important;
}
#gform_wrapper_2 fieldset.gfield > .ginput_complex,
#gform_wrapper_3 fieldset.gfield > .ginput_complex {
	box-sizing: border-box;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
#gform_wrapper_2 .ginput_complex > span,
#gform_wrapper_2 .ginput_complex .gform-grid-col,
#gform_wrapper_3 .ginput_complex > span,
#gform_wrapper_3 .ginput_complex .gform-grid-col {
	box-sizing: border-box;
	min-width: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
#gform_wrapper_2 .ginput_complex,
#gform_wrapper_3 .ginput_complex {
	width: 100%;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Align submit buttons with the left edge of the form fields */
#gform_wrapper_2 .gform-footer,
#gform_wrapper_3 .gform-footer {
	box-sizing: border-box;
	width: 100%;
	padding-left: 12px !important;
	padding-right: 12px !important;
}
#gform_wrapper_2 .gform-footer .gform_button,
#gform_wrapper_3 .gform-footer .gform_button {
	margin-left: 0 !important;
}

/* NECPE Membership Application - Form 6 */
#gform_wrapper_6{max-width:1100px;margin:0 auto;background:transparent;border:0;box-shadow:none}
#gform_wrapper_6 .gform_fields{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:0!important;align-items:start}
#gform_wrapper_6 .gform_fields>.gfield{box-sizing:border-box;min-width:0;margin-left:0!important;margin-right:0!important;padding:0 12px 10px!important;grid-column:1/-1!important}
#gform_wrapper_6 #field_6_3,#gform_wrapper_6 #field_6_5,#gform_wrapper_6 #field_6_7,#gform_wrapper_6 #field_6_9{grid-column:span 6!important}
#gform_wrapper_6 .gfield_label,#gform_wrapper_6 .gform-field-label{display:inline-block;margin-bottom:10px;font-size:15px;font-weight:700;line-height:1.4;color:#0f172a}
#gform_wrapper_6 .gform-field-label--type-sub{margin:8px 0 0;font-size:13px;font-weight:500;color:#475569}
#gform_wrapper_6 input:is([type="text"],[type="email"],[type="tel"],[type="password"],[type="number"],[type="url"]),#gform_wrapper_6 select,#gform_wrapper_6 textarea{box-sizing:border-box;width:100%;min-height:50px;padding:12px 14px;font-size:15px;line-height:1.4;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:0;box-shadow:none}
#gform_wrapper_6 textarea{min-height:140px;resize:vertical}
#gform_wrapper_6 input:not([type="checkbox"]):focus,#gform_wrapper_6 select:focus,#gform_wrapper_6 textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15)}
#gform_wrapper_6 select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#475569 50%),linear-gradient(135deg,#475569 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-size:6px 6px;background-repeat:no-repeat;padding-right:42px}
#gform_wrapper_6 .ginput_complex{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;width:100%;margin:0!important}
#gform_wrapper_6 .ginput_complex>span,#gform_wrapper_6 .ginput_complex .gform-grid-col{box-sizing:border-box;width:100%!important;max-width:none!important;min-width:0;margin:0!important;padding:0!important}
#gform_wrapper_6 .ginput_container_address :is(.address_line_1,.address_line_2){grid-column:span 1!important}
#gform_wrapper_6 .ginput_container_address :is(input,select){width:100%!important;max-width:100%!important}
#gform_wrapper_6 fieldset.gfield{min-width:0;border:0!important;background:transparent!important;box-shadow:none!important}
#gform_wrapper_6 fieldset.gfield>legend.gfield_label{display:block!important;float:none!important;width:auto!important;max-width:none!important;margin:0 0 10px!important;padding:0!important;position:relative}
#gform_wrapper_6 fieldset.gfield>.ginput_complex{padding:0!important;margin:0!important}
#gform_wrapper_6 .ginput_container_consent{display:flex;align-items:flex-start;gap:10px}
#gform_wrapper_6 .ginput_container_consent input[type="checkbox"]{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--primary-200)}
#gform_wrapper_6 .ginput_container_consent .gfield_consent_label{margin:0;font-weight:500}
#gform_wrapper_6 .gfield_consent_description{margin-top:10px;font-size:13px;line-height:1.5}
#gform_wrapper_6 .gform-footer{box-sizing:border-box;width:100%;margin:25px 0;padding:0 12px!important;background:transparent;border:0}
#gform_wrapper_6 .gform-footer .gform_button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;margin-left:0!important;padding:0 24px;font-size:16px;font-weight:700;color:var(--light);background:#322d2d;border:0;border-radius:0;cursor:pointer;box-shadow:0 10px 20px rgba(37,99,235,.2);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
#gform_wrapper_6 .gform-footer .gform_button:hover{background:#000;transform:translateY(-1px);box-shadow:0 14px 28px rgba(37,99,235,.26)}
#gform_wrapper_6 .gfield_error{border-color:#dc2626;background:#fff7f7}
#gform_wrapper_6 :is(.validation_message,.gfield_validation_message){margin-top:8px;font-size:13px;font-weight:600;color:#dc2626}
@media(max-width:900px){#gform_wrapper_6 .gform_fields{grid-template-columns:minmax(0,1fr)!important}#gform_wrapper_6 .gform_fields>.gfield{grid-column:1/-1!important}#gform_wrapper_6 .ginput_complex{grid-template-columns:minmax(0,1fr)}#gform_wrapper_6 .ginput_container_address :is(.address_line_1,.address_line_2){grid-column:1/-1!important}}

/* ==============================
   END - Gravity Form styles
   =========================== */


/* ==============================
   BEGIN - Index Styles 
   =========================== */
.index-result-card {
    border: 1px solid var(--border)!important;
    margin-right: 15px;
}
/* ==============================
   END - Index Styles 
   =========================== */
   
   
/* ==============================
   BEGIN - Link styles 
   =========================== */
a[target="_blank"] {
	color: #322d2d !important;
}

a[target="_blank"]:hover {
	color: #000000 !important;
}

/* Inline link styles */
.wp-block-heading .events-calendar-link,
.wp-block-heading .events-calendar-link:link,
.wp-block-heading .events-calendar-link:visited {
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 22px;
}

.wp-block-post-content a, 
.single-post-content a, 
.wp-block-post-terms a, 
.logged-in-as a,
.single-post-meta a {
	color: #322d2d !important;
}

.wp-block-post-content a:hover,
.single-post-content a:hover,
.wp-block-post-terms a:hover, 
.logged-in-as a:hover,
.single-post-meta a:hover {
	color: #000000 !important;
}

.tribe-common button.tribe-common-c-btn--small, .tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button {
	background-color: #322d2d;
	color: var(--light);
}

.tribe-common button.tribe-common-c-btn--small:hover, .tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button:hover {
	background-color: #000000;
	color: var(--light);
}

.tribe-events-c-subscribe-dropdown__button {
	background-color: transparent !important;
	color: #322d2d !important;
	border: 1px solid #322d2d !important;
}

.tribe-events-c-subscribe-dropdown__button:hover {
	background-color: #000000 !important;
	color: var(--light) !important;
	border: 1px solid #000000 !important;
}
/* ==============================
   END - Link styles 
   =========================== */


/* ==============================
   BEGIN - Single Post Content Styles 
   =========================== */
.single-post-wrap {
	padding-top: 40px;
	padding-bottom: 40px;
}

.single-post-title {
	margin: 0;
	font-size: 1.7rem;
	line-height: 1.2;
	color: var(--dark);
}

.single-post-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	line-height: 1.5;
	color: var(--neutral-300);
}

.single-post-meta p {
	margin: 0;
}

.single-post-meta a {
	color: var(--neutral-300);
	text-decoration: none;
}

.single-post-meta a:hover {
	text-decoration: underline;
}

/* Auto dividers */
.single-post-meta > *:not(:last-child)::after {
	content: "|";
	margin: 0 6px;
	color: var(--neutral-200);
}

/* Hide empty items */
.single-post-meta > *:empty {
	display: none;
}

.single-post-meta .wp-block-post-terms:empty {
	display: none;
}

.single-post-meta .taxonomy-post_tag:empty {
	display: none;
}

.single-post-meta .taxonomy-category:empty {
	display: none;
}

.single-post-meta > *:empty::after {
	display: none;
}

.single-post-meta .wp-block-post-terms a:empty {
	display: none;
}

.single-post-featured-image {
	margin-top: 0;
	margin-bottom: 0;
}

.single-post-featured-image img {
	width: 100%;
	height: auto;
	display: block;
}

.single-post-content {
	font-size: 1rem;
	line-height: 1.8;
	color: var(--neutral-400);
}

.single-post-content > *:first-child {
	margin-top: 0;
}

.single-post-content h2,
.single-post-content h3,
.single-post-content h4 {
	color: var(--dark);
	margin-top: 1.6em;
	margin-bottom: 0.6em;
}

.single-post-content a {
	color: var(--neutral-300);
	text-decoration: none;
}

.single-post-content a:hover {
	text-decoration: underline;
}

.single-post-divider {
	margin-top: 32px;
	margin-bottom: 24px;
	border-color: var(--border);
}

.single-post-taxonomy {
	font-size: 14px;
	line-height: 1.5;
}

.single-post-taxonomy a {
	text-decoration: none;
	color: var(--neutral-300);
}

.single-post-taxonomy a:hover {
	text-decoration: underline;
}

.single-post-comments-wrap {
	background: var(--light);
}

.wp-block-post-comments-form textarea {
	border: 1px solid var(--border);
	padding: 10px;
	border-radius: 0;
}

.single-comments-heading {
	margin-top: 0;
	margin-bottom: 18px;
	color: var(--dark);
	font-size: 2rem;
}

.single-comment-item .wp-block-comment-author-name,
.single-comment-item .wp-block-comment-date {
	display: block;
	margin-bottom: 6px;
}

.single-comment-item .wp-block-comment-content {
	line-height: 1.7;
	color: var(--neutral-400);
}

.single-comment-item a {
	color: var(--neutral-300);
	text-decoration: none;
}

.single-comment-item a:hover {
	text-decoration: underline;
}

.wp-block-post-comments-form input[type="submit"] {
	background: #322d2d;
	color: var(--light);
}

.wp-block-post-comments-form input[type="submit"]:hover {
	background: #000000;
	color: var(--light);
}

.single-post-nav {
	margin-top: 30px;
	margin-bottom: 30px;
	display: flex;
	justify-content: space-between;
	gap: 10px;
}

.single-post-nav .wp-block-post-navigation-link {
	display: flex;
}

.single-post-nav .wp-block-post-navigation-link.is-next {
	justify-content: flex-end;
	margin-left: auto;
}

.single-post-nav a {
	display: block;
	background: #322d2d;
	color: var(--light);
	padding: 12px 16px;
	text-decoration: none;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
}

.single-post-nav a:hover {
	background: #000000;
	color: var(--light);
	text-decoration: none;
}

/* Comments */
.comment-col {
    border: 1px solid var(--border);
    padding: 10px;
}

.wp-block-comment-date {
	font-size: 12px;
	background: var(--secondary-200);
	padding: 4px 8px;
	border-radius: 4px;
	display: inline-block;
}

.wp-block-comment-date a {
    text-decoration: none;
}

/* === Media Queries === */
@media (max-width: 782px) {
	.single-post-wrap {
		padding-top: 28px;
		padding-bottom: 28px;
	}

	.single-post-title {
		font-size: 1.4rem;
	}

	.single-post-nav {
		flex-direction: row;
		gap: 12px;
	}

	.single-post-comments-wrap {
		padding: 20px !important;
	}
}
/* ==============================
   END - Single Post Content Styles 
   =========================== */


/* ==============================
   BEGIN - Search Results Styles 
   =========================== */
.search-page-wrap {
	padding-top: 40px;
	padding-bottom: 40px;
}

.search-page-wrap .wp-block-query-title {
	margin-bottom: 18px;
	font-size: 2.5rem;
	line-height: 1.2;
	color: var(--dark);
}

.search-page-wrap .wp-block-separator {
	margin-top: 0;
	margin-bottom: 36px;
	border-color: var(--border);
}

/* Result card */
.search-result-card {
	background: var(--light);
	border: 1px solid var(--border) !important;
	box-shadow: none;
    padding: 10px;
}

.search-result-card .wp-block-columns {
	align-items: flex-start;
}

.search-result-title {
	margin: 0;
	font-size: 1.5rem;
	line-height: 1.3;
}

.search-result-title a {
	color: var(--dark);
	text-decoration: none;
}

.search-result-title a:hover {
	text-decoration: underline;
}

.search-result-meta {
	margin-top: 10px;
	margin-bottom: 18px;
	font-size: 13px;
	line-height: 1.4;
	color: var(--neutral-400);
	gap: 6px;
}

.search-result-meta p {
	margin: 0;
	font-size: 13px;
	line-height: 1.4;
	color: var(--neutral-400);
}

.search-result-meta .wp-block-post-terms,
.search-result-meta .wp-block-post-comments-form-link {
	margin: 0;
	font-size: 13px;
	line-height: 1.4;
}

.search-result-meta a {
	color: var(--neutral-300);
	text-decoration: none;
}

.search-result-meta a:hover {
	text-decoration: underline;
}

.search-result-excerpt {
	margin-top: 0;
}

.search-result-excerpt .wp-block-post-excerpt__excerpt {
	margin: 0;
	font-size: 1rem;
	line-height: 1.7;
	color: var(--neutral-400);
}

.search-result-excerpt .wp-block-post-excerpt__more-link {
	color: var(--neutral-400);
	text-decoration: none;
	font-weight: 400;
}

.search-result-excerpt .wp-block-post-excerpt__more-link:hover {
	text-decoration: underline;
}

.search-result-date-col {
	display: flex;
	justify-content: flex-end;
}

.search-date-box {
	min-width: 54px;
	text-align: center;
	background: var(--secondary-200);
	padding: 10px 6px 8px;
	border: 0;
}

.wp-block-group.search-date-box.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained {
    padding: 10px;
}

.search-date-day {
	margin: 0;
	font-size: 2rem;
	line-height: 1;
	color: var(--dark);
	font-weight: 400;
}

.search-date-month {
	margin: 4px 0 0;
	font-size: 11px;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: var(--dark);
}

.search-date-day.wp-block-post-date {
    margin-bottom: -10px;
}

/* No results */
.search-no-results {
	background: var(--light);
}

/* Sidebar */
.search-sidebar-box {
	box-sizing: border-box;
}

.search-sidebar-box .wp-block-heading {
	margin-top: 0;
	margin-bottom: 16px;
	font-size: 1.7rem;
	line-height: 1.3;
	color: var(--dark);
}

.search-sidebar-box p {
	line-height: 1.7;
	margin-bottom: 18px;
}

.search-sidebar-box ul {
	margin: 0;
	padding-left: 18px;
}

.search-sidebar-box li {
	margin-bottom: 10px;
	line-height: 1.6;
}

.search-sidebar-box a {
	text-decoration: none;
	color: var(--neutral-300);
}

.search-sidebar-box a:hover {
	text-decoration: underline;
}

/* Sidebar search */
.search-sidebar-box .wp-block-search__inside-wrapper {
	display: flex;
	border: 1px solid var(--border);
	background: var(--light);
}

.search-sidebar-box .wp-block-search__input {
	border: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	padding: 12px 14px;
}

.search-sidebar-box .wp-block-search__input:focus,
.search-sidebar-box .wp-block-search__input:focus-visible {
	border: 0 !important;
	box-shadow: none !important;
	outline: none !important;
}

.search-sidebar-box .wp-block-search__button {
	margin-left: 0;
	border-radius: 0;
	height: 44px;
}

/* CTA */
.search-cta-box .wp-block-button__link {
	padding: 12px 22px;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none!important;
}

/* Pagination */
.search-pagination-wrap .wp-block-query-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.search-pagination-wrap .wp-block-query-pagination a,
.search-pagination-wrap .wp-block-query-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	height: 32px;
	padding: 0 10px;
	border: 1px solid var(--border);
	background: var(--light);
	color: var(--neutral-300);
	text-decoration: none;
	font-weight: 600;
	font-size: 14px;
	box-sizing: border-box;
}

.search-pagination-wrap .wp-block-query-pagination .current {
	background: var(--neutral-50);
	color: var(--neutral-300);
}

.search-pagination-wrap .wp-block-query-pagination a:hover {
	background: var(--neutral-50);
	text-decoration: none;
}

/* Disclaimer */
.search-disclaimer-box {
	margin-top: 0;
}

.search-disclaimer-box p {
	margin: 0;
	color: var(--neutral-400);
	font-size: 14px;
	line-height: 1.7;
	font-style: italic;
}

.search-disclaimer-box a {
	color: inherit;
	text-decoration: none!important;
}

/* === Media Queries === */
@media (max-width: 782px) {
	.search-page-wrap {
		padding-top: 28px;
		padding-bottom: 28px;
	}

	.search-page-wrap .wp-block-query-title {
		font-size: 2rem;
	}

	.search-result-card {
		padding: 20px !important;
		margin-bottom: 20px !important;
	}

	.search-result-card .wp-block-columns {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
		gap: 16px !important;
	}

	.search-result-card .wp-block-column:first-child {
		flex: 1 1 auto !important;
		min-width: 0 !important;
	}

	.search-result-title {
		font-size: 1.3rem;
	}

	.search-result-date-col {
		flex: 0 0 64px !important;
		max-width: 64px !important;
		display: flex !important;
		justify-content: flex-end !important;
		align-items: flex-start !important;
		margin-top: 0 !important;
	}

	.search-date-box {
		min-width: 64px;
		width: 64px;
	}

	.search-disclaimer-box p {
		font-size: 14px;
	}
}
/* ==============================
   END - Search Results Styles 
   =========================== */


/* ==============================
   BEGIN - Single Event styles 
   =========================== */
	 /* Single Event Template */
.tribe-events-single-event-title {
    background-color: var(--wp--preset--color--custom-secondary-300) !important;
    padding-top: 25px;
    padding-bottom: 25px;
    padding-left: 10px;
    color: var(--wp--preset--color--custom-dark);
    font-family: var(--wp--preset--font-family--roboto-condensed);
    font-size: var(--display-large-size-rem-smartphone);
    font-style: normal;
    font-weight: 500;
    line-height: var(--display-large-line-height-smartphone);
}

.single-tribe_events .tribe-events-single .tribe-events-event-meta {
    width: 100%;
}

.tribe-events-venue-map {
        width: 100%;
    }


/* Events Calendar */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
    padding: 25px 0 !important;
}

.tribe-common button.tribe-common-c-btn--small, .tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button {
    background-color: #322D2D;
    color: var(--light);
    border-radius: 0;
}

.tribe-common button.tribe-common-c-btn--small:hover, .tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button:hover {
    background-color: #000000;
    color: var(--light);
}

.tribe-events-pro .tribe-events-pro-week-grid__header-column--current .tribe-events-pro-week-grid__header-column-daynum, .tribe-events-pro .tribe-events-pro-week-grid__header-column--current .tribe-events-pro-week-grid__header-column-daynum-link {
    color: #f1dbc4 !important;
}

.tribe-events-pro .tribe-events-pro-map__event-card-wrapper--active .tribe-events-pro-map__event-card-button {
    border: 1px solid #f1dbc4 !important;
}

.tribe-common .tribe-common-cta--thin-alt {
    border-bottom: 1px solid #f1dbc4 !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-details {
    width: 100% !important;
}
/* ==============================
   END - Search Results Styles 
   =========================== */


/* ==============================
   BEGIN - Table styles 
   =========================== */
	 /* Extended table styles */
.custom-column-widths {
    table-layout: fixed;
    width: 100%;
}
.custom-column-widths th:nth-child(1),
.custom-column-widths td:nth-child(1) {
    width: 30%;
}
.custom-column-widths th:nth-child(2),
.custom-column-widths td:nth-child(2) {
    width: 20%;
}
.custom-column-widths th:nth-child(3),
.custom-column-widths td:nth-child(3) {
    width: 20%;
}
.custom-column-widths th:nth-child(4),
.custom-column-widths td:nth-child(4) {
    width: 30%;
}

a.footer-ex-link {
    color: var(--light) !important;
}

a.footer-ex-link:hover {
    color: var(--primary-100) !important;
}
/* ==============================
   END - Table styles 
   =========================== */


/* ==============================
   BEGIN - WooCommerce styles 
   =========================== */
a.wp-block-woocommerce-mini-cart-shopping-button-block {
  background-color: var(--primary-200);
  color: var(--light);
}

a.wp-block-woocommerce-mini-cart-shopping-button-block:hover {
  background-color: var(--primary-300);
  color: var(--light);
}

/* WooCommerce Product Summary
----------------------------------------------------- */
.nhcibor-product-summary .wp-block-post-title {
	margin: 0 0 24px !important;
}
.nhcibor-product-summary .wp-block-woocommerce-product-price {
	margin: 0 0 24px !important;
}
.nhcibor-product-summary .wc-block-components-product-price {
	margin: 0 !important;
}
.nhcibor-product-summary .wp-block-post-excerpt {
	margin: 0 0 32px !important;
}
.nhcibor-product-summary .wp-block-post-excerpt__excerpt {
	margin: 0 !important;
	line-height: 1.6;
}

/* Quantity and Add to Cart
----------------------------------------------------- */
.nhcibor-product-summary .wp-block-add-to-cart-form {
	margin: 0 0 32px !important;
}
.nhcibor-product-summary form.cart {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0;
}
.nhcibor-product-summary form.cart .quantity {
	margin: 0 !important;
}
.nhcibor-product-summary form.cart .qty {
	box-sizing: border-box;
	width: 80px;
	height: 48px;
	padding: 10px 12px;
	border: 1px solid #322d2d !important;
	border-radius: 4px;
	background-color: #fff;
	color: #322d2d;
	text-align: center;
}
.nhcibor-product-summary form.cart .qty:focus {
	border-color: #000 !important;
	outline: 2px solid #000;
	outline-offset: 2px;
}

/* Add to Cart Button
----------------------------------------------------- */
.nhcibor-product-summary .single_add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin: 0 !important;
	padding: 12px 24px !important;
	border: 1px solid #322d2d !important;
	border-radius: 4px;
	background-color: #322d2d !important;
	color: #fff !important;
	font-weight: 600;
	line-height: 24px;
	text-decoration: none !important;
	cursor: pointer;
	transition: background-color 0.3s ease, border-color 0.3s ease;
}
.nhcibor-product-summary .single_add_to_cart_button:hover,
.nhcibor-product-summary .single_add_to_cart_button:focus {
	border-color: #000 !important;
	background-color: #000 !important;
	color: #fff !important;
}

/* Product Meta
----------------------------------------------------- */
.nhcibor-product-summary .wp-block-woocommerce-product-meta {
	margin-top: 24px !important;
}

/* WooCommerce Single Product Page Spacing
----------------------------------------------------- */
main.nhcibor-single-product {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	padding-left: 40px !important;
	padding-right: 40px !important;
}
@media (max-width: 767px) {
	main.nhcibor-single-product {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
}

/* WooCommerce Product Image / Summary Spacing
----------------------------------------------------- */
@media (max-width: 1200px) {
	.woocommerce div.product .wp-block-columns {
		column-gap: 32px !important;
	}
	.woocommerce div.product .nhcibor-product-summary {
		min-width: 0;
	}
}
@media (max-width: 781px) {
	.woocommerce div.product .wp-block-columns {
		row-gap: 32px !important;
	}
}

/* Mobile
----------------------------------------------------- */
@media (max-width: 600px) {
	.nhcibor-product-summary .wp-block-post-title {
		margin-bottom: 20px !important;
	}
	.nhcibor-product-summary .wp-block-woocommerce-product-price {
		margin-bottom: 20px !important;
	}
	.nhcibor-product-summary .wp-block-post-excerpt {
		margin-bottom: 24px !important;
	}
	.nhcibor-product-summary form.cart {
		gap: 12px;
	}
}
   
   
/* WooCommerce Login Form
----------------------------------------------------- */
.woocommerce form.woocommerce-form-login {
	box-sizing: border-box;
	width: 100%;
	max-width: 600px;
	margin: 0 auto 32px;
	padding: 32px;
}
.woocommerce .woocommerce-form-login .form-row {
	width: 100%;
}
.woocommerce .woocommerce-form-login input.input-text {
	box-sizing: border-box;
	width: 100%;
}

/* WooCommerce Login Submit Button
----------------------------------------------------- */
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit {
	display: block;
	width: 100%;
	margin: 16px 0 0;
	padding: 12px 24px;
	background-color: #322d2d !important;
	color: #fff !important;
	border: 1px solid #322d2d !important;
	border-radius: 4px;
	cursor: pointer;
	transition: background-color 0.3s ease, border-color 0.3s ease;
}
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit:hover,
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit:focus {
	background-color: #000 !important;
	color: #fff !important;
	border-color: #000 !important;
}

/* WooCommerce Login Form - Mobile
----------------------------------------------------- */
@media (max-width: 600px) {
	.woocommerce form.woocommerce-form-login {
		padding: 24px 16px;
	}
}   
/* ==============================
   END - WooCommerce styles 
   =========================== */


/* ==============================
   BEGIN - Landing Page Styles 
   =========================== */
.btn-custom a {
  background-color: #322d2d;
  color: var(--light) !important;
	border-radius: 0;
}

.btn-custom a:hover {
  background-color: #000000;
  color: var(--light) !important;
}

.btn-hero a {
  background-color: #322d2d;
  color: var(--light) !important;	
	border-radius: 0;
	
}

.btn-hero a:hover {
  background-color: #000000;
  color: var(--light);
}

/* Membership CTA */
.member-cta {
	display: block;
}

.member-cta .wp-block-group.alignwide.is-layout-flex {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 50px;
}

/* === Media Queries === */
@media (max-width: 1024px) {
	.member-cta .wp-block-heading {
		text-align: center;
		margin-left: auto;
		margin-right: auto;
	}
	
	.member-cta .wp-block-group.alignwide.is-layout-flex {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center;
		gap: 24px !important;
	}

	.member-cta .wp-block-group.alignwide.is-layout-flex > * {
		width: 100%;
	}

	.member-cta .wp-block-buttons {
		display: flex !important;
		justify-content: center !important;
	}

	.member-cta .wp-block-button {
		margin: 0 auto;
	}
}

@media (max-width: 768px) {
	.member-cta .wp-block-group.alignwide.is-layout-flex {
		gap: 16px !important;
	}
}
/* ==============================
   END - Landing Page Styles 
   =========================== */


/* ==============================
   BEGIN - Header Extended Styles 
   =========================== */
.site-header {
	width: 100%;
}

.site-header-inner {
	width: 100%;
	max-width: 100% !important;
	padding: 20px 40px;
}

.site-left {
	gap: 6px;
}

.site-right {
	align-items: flex-end;
	gap: 12px;
}

.site-top {
	gap: 20px;
}

.header-menu a, .header-top-menu a {
    text-decoration: none;
}

.header-menu a:hover, .header-top-menu a:hover {
    color: var(--primary-300) !important;
}

.header-top-menu {
  font-size: 14px;
  color: var(--light);
}

.header-menu {
    color: var(--dark) !important;
}

.wp-block-group.header-icon-row.is-horizontal.is-content-justification-center.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-366ce479.wp-block-group-is-layout-flex {
    gap: 0px;
}

button.wp-block-search__button.has-icon.wp-element-button {
    padding: 10px;
}

.wp-block-woocommerce-customer-account, .wc-block-mini-cart.wp-block-woocommerce-mini-cart {
    color: var(--dark) !important;
    padding: 4px;
}

.wp-block-woocommerce-customer-account:hover, .wc-block-mini-cart.wp-block-woocommerce-mini-cart:hover {
    color: var(--primary-200) !important;
}

.menu-row {
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
}

.header-search .wp-block-search__inside-wrapper {
    height: 45px;
}

.header-search svg {
    margin-top: -5px;
}

.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content {
    border-bottom: 1px solid var(--border);
}

.wp-block-search.wp-block-search__button-only .wp-block-search__input {
    padding: 0 10px;
}

.wp-block-navigation .wp-block-navigation-item {
    margin-right: 15px;
}

/* === Media Queries === */
@media (min-width: 769px) {
	.menu-row {
		display: flex !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
		position: relative;
	}

	.menu-row > .wp-block-navigation {
		flex: 1 1 auto;
		min-width: 0;
		position: relative;
		z-index: 1;
	}

	.menu-row > .wp-block-group:last-child {
		display: flex !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
		white-space: nowrap;
		position: relative;
		z-index: 5;
	}

	.menu-row > .wp-block-group:last-child .wp-block-search {
		flex: 0 0 auto;
		position: relative;
	}

	.menu-row > .wp-block-group:last-child .wp-block-search__inside-wrapper {
		display: flex;
		align-items: center;
		flex-wrap: nowrap !important;
		position: relative;
		overflow: visible !important;
	}

	.menu-row > .wp-block-group:last-child .wp-block-search__input {
		position: absolute;
		right: 100%;
		top: 50%;
		transform: translateY(-50%);
		width: 320px;
		height: 50px;
		border-radius: 0;
		padding: 0 10px;
		opacity: 0;
		pointer-events: none;
		z-index: 20;
		background: var(--light);
		border: 1px solid #ccc;
		box-sizing: border-box;
		transition: opacity 0.2s ease, transform 0.2s ease;
		margin-right: 10px;
	}

	.menu-row > .wp-block-group:last-child .wp-block-search__button {
		position: relative;
		z-index: 21;
	}

	.menu-row > .wp-block-group:last-child .wp-block-search__inside-wrapper:has(.wp-block-search__button[aria-expanded="true"]) .wp-block-search__input {
		opacity: 1;
		pointer-events: auto;
		transform: translateY(-50%);
	}
}

@media (max-width: 768px) {
	.wp-block-search__inside-wrapper {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		overflow: visible !important;
	}

	.wp-block-search__button {
		position: relative;
		z-index: 3;
	}

	.wp-block-search__input {
		position: absolute;
		top: calc(100% + 10px);
		right: -8rem;
		width: 300px;
		min-height: 50px;
		opacity: 0;
		pointer-events: none;
		transform: translateY(-8px);
		transition: opacity 0.2s ease, transform 0.2s ease;
		z-index: 9999;
		padding: 10px 14px;
		background: var(--light);
		border: 1px solid #ccc;
		box-sizing: border-box;
	}

	.wp-block-search__inside-wrapper:has(.wp-block-search__button[aria-expanded="true"]) .wp-block-search__input {
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
	}

	.menu-row {
		display: flex;
		flex-direction: column;
		align-items: center !important;
		text-align: center !important;
	}

	.menu-row > .wp-block-group:first-child {
		justify-content: center !important;
		width: 100%;
	}

	.menu-row > .wp-block-group:last-child {
		display: flex;
		align-items: center;
		justify-content: center !important;
		width: 100%;
		padding-bottom: 0;
		gap: 12px;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,
	.wp-block-navigation__responsive-container.has-modal-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
		display: flex;
		flex-direction: column;
		align-items: stretch !important;
		width: 100%;
		text-align: left !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item,
	.wp-block-navigation__responsive-container.has-modal-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
		width: 100%;
		text-align: left !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.has-modal-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
		display: block;
		width: 100%;
		text-align: left !important;
		padding: 12px 16px;
		margin: 0 !important;
	}
}
/* ==============================
   END - Header Extended Styles 
   =========================== */


/* ==============================
   BEGIN - Footer Extended Styles 
   =========================== */
/* Layout */
.foot-cols.wp-block-columns {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 24px;
}

.foot-cols.wp-block-columns > .wp-block-column {
    margin: 0 !important;
    max-width: 100% !important;
    flex-basis: auto !important;
    flex-grow: 0 !important;
}

.foot-head-sep {    
  max-width: 90%;
  margin-left: 0;
  margin-right: auto;
}

/* Links */
.foot-col a, .foot-row a {
    text-decoration: none;
}

.foot-col a:hover, .foot-row a:hover {
    color: var(--primary-100);
}

/* Social icons */
.footer-social .wp-social-link, .footer-social-dark .wp-social-link {
    background: transparent !important;
}

.footer-social .wp-social-link a, .footer-social-dark .wp-social-link a {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Override WP color presets */
.footer-social .wp-social-link-facebook,
.footer-social .wp-social-link-linkedin,
.footer-social-dark .wp-social-link-facebook,
.footer-social-dark .wp-social-link-linkedin {
    background-color: transparent !important;
}

/* Circle styling */
.footer-social .wp-social-link a {
    border: 2px solid var(--light);
    border-radius: 50%;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-social-dark .wp-social-link a {
    border: 2px solid var(--dark);
    border-radius: 50%;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Icon color */
.footer-social svg {
    fill: var(--light) !important;
}

.footer-social-dark svg {
    fill: var(--dark) !important;
}

/* === Media Queries === */
@media (max-width: 1024px) {
	.foot-cols.wp-block-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}  
	
	.foot-col {
		padding-left: 0px;
	}

	h2.foot-col-head {
		font-size: 25px !important;
	}
}

@media (max-width: 768px) {
	 .foot-cols.wp-block-columns {
		 grid-template-columns: 1fr !important;
	 }

	.foot-col-head {
		padding-top: 20px;
	}

	.foot-head-sep {    
		max-width: 100%;
	}
}
/* ==============================
   END - Footer Exstended Styles 
   =========================== */


/* ==============================
   BEGIN - 404 Extended Styles 
   =========================== */
.col2-404-search {
    width: 75%;
}

button.wp-block-search__button.wp-element-button:hover {
    background-color: #000000;
    color: var(--light);
}

/* === Media Queries === */
@media (max-width: 1024px) {
	.col1-404-img {
		padding-bottom: 40px;
	} 

	.col2-404-search {
		width: 100%;
	}
}
/* ==============================
   END - 404 Extended Styles 
   =========================== */