/**
 * WordPress Core Button Block Hover Styles
 */

.wp-block-button__link:hover {
	background-color: #C40E34;
	color: #ffffff;
    transition: background-color 0.3s ease;
}


/**
 * Job board styles
 */

 .facetwp-facet-job_count{
	font-size: 14px;
	border-bottom: 1px solid #d6d6d6;
	padding-bottom: 15px;
	margin-bottom: 10px;
	text-align: right;
	color: #808080;
 }

 .job-archive-container .job-item{
	border-bottom: 1px solid #d6d6d6;
	padding: 25px 0 30px;
 }

 .job-archive-container .job-item:nth-child(1){
	padding-top: 0;
 }

 .facetwp-template{
	margin-top: 0;
 }

 .job-archive-container .job-item span.sticky{
	background-color: #4B0020;
	color: #fff;
	font-size: 11px;
	font-weight: 300;
	border-radius: 35px;
	padding: 6px 11px;
	margin-bottom: 10px;
	display: inline-block;
 }
 .job-archive-container .job-item h2{
	margin: 0 0 10px 0;
	font-size: clamp(1.25rem, calc(1.5rem + 0.6vw), 1.85rem);
	font-weight: 500;
 }
 
 .job-archive-container .job-item h2 a{
	text-decoration: none;
	color: #1D1C1C;
	font-weight: 400;
 }

 .job-archive-container .job-item ul.job-meta{
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}

.job-archive-container .job-item ul.job-meta li{
	display: inline-block;
	padding: 0;
	margin: 0;
}

.job-archive-container .job-item p.excerpt{
	color: #1D1C1C;
	line-height: 1.5;
	font-size: 15px;
}

.job-archive-container .job-item .btn-hold{
	display: block;
}

.job-archive-container .job-item a.job-link{
	text-decoration: none;
	background-color: #DE1640;
	color: #fff;
	transition: background-color 0.3s ease;
	padding: 10px 15px;
	border-radius: 5px;
	font-size: 15px;
	display: inline-block;
}

.job-archive-container .job-item a.job-link:hover{
	background-color: #C40E34;
}

.facetwp-facet.facetwp-facet-job_search{
	margin-bottom: 15px;
}

.facetwp-facet.facetwp-facet-job_search .facetwp-input-wrap{
	width: 100%;
	box-sizing: border-box;
}

.facetwp-facet-job_search input.facetwp-search{
	font-size: 16px;
	box-shadow: none;
	box-sizing: border-box;
	border: none;
	background-color: transparent;
	border-bottom: 1px solid #d6d6d6;
	padding: 5px 5px 5px 0;
	width: 100%;
	max-width: 100%;
	height: 40px;
	line-height: 1.5;
	text-align: left;
	outline: none;
	transition: border-bottom 0.2s ease;
}

.facetwp-facet-job_search input.facetwp-search:focus{
	border-bottom: 3px solid #DE1640;
	transition: border-bottom 0.2s ease;
}

.facetwp-facet-job_search i.facetwp-icon{
	display: none;
}

button.facetwp-search{
	width: 100%;
	margin-top: 0;
	text-decoration: none;
    background-color: #DE1640;
    color: #fff;
    transition: background-color 0.3s ease;
    padding: 10px 15px;
    border-radius: 5px;
    font-size: 15px;
    display: inline-block;
	box-shadow: none;
	border: none;
	outline: none;
	cursor: pointer;
}

.facetwp-type-checkboxes{
	margin-top: 10px;
}

.facetwp-type-checkboxes span.facetwp-display-value{
	color: #333;
	font-size: 14px;
	padding-right: 8px;
}

.facetwp-type-checkboxes .facetwp-checkbox{
	margin: 0;
	padding: 10px 0 10px 20px;
	border-bottom: 1px solid #d6d6d6;
}

.facetwp-type-checkboxes .facetwp-counter{
	font-size: 12px;
	color: #6A6A6A;
    background-color: #EDEDEA;
    border-radius: 20px;
    padding: 1px 5px;
}


/**
 * Single block styles
 */
span.single-meta-item{
	color: #333;
}

.consultant-grp .single-meta-item{
	display: block;
}

.consultant-grp span.single-meta-item:nth-child(2){
	color: #DE1640;
    display: block;
    font-size: 20px;
    font-weight: 500;
	margin-top: 10px;
}

.consultant-grp span.single-meta-item:nth-child(3){
	color: #333;
	margin-top: 5px;
	letter-spacing: 0.5px;
	font-weight: 400;
	font-size: 18px;
}

.consultant-grp a.single-meta-item{
	font-weight: 500;
	font-size: 15px;
}

.consultant-grp img{
	border-radius: 5px;
    max-width: 200px;
    height: auto;	
}

.single-job-description{
	font-size: 16px;
	line-height: 1.5;
	color: #333;
}

.single-job-metadata{
	border-top: 1px solid #d6d6d6;
	padding-top: 25px;
	margin-top: 25px;
}

.gform_required_legend{
	display: none;
}

/**
 * Gravity Forms input styling - matching FacetWP job search input
 */
.gform_wrapper label,
#gform_wrapper_1 label,
#gform_wrapper_2 label,
#gform_wrapper_3 label,
.gform_wrapper .gfield_label,
#gform_wrapper_1 .gfield_label,
#gform_wrapper_2 .gfield_label,
#gform_wrapper_3 .gfield_label{
	color: #333;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	font-size: 16px;
	margin-bottom: 3px;
}

.gform_wrapper input[type="text"],
#gform_wrapper_1 input[type="text"],
#gform_wrapper_2 input[type="text"],
#gform_wrapper_3 input[type="text"],
.gform_wrapper input[type="email"],
#gform_wrapper_1 input[type="email"],
#gform_wrapper_2 input[type="email"],
#gform_wrapper_3 input[type="email"],
.gform_wrapper input[type="tel"],
#gform_wrapper_1 input[type="tel"],
#gform_wrapper_2 input[type="tel"],
#gform_wrapper_3 input[type="tel"],
.gform_wrapper input[type="url"],
#gform_wrapper_1 input[type="url"],
#gform_wrapper_2 input[type="url"],
#gform_wrapper_3 input[type="url"],
.gform_wrapper input[type="number"],
#gform_wrapper_1 input[type="number"],
#gform_wrapper_2 input[type="number"],
#gform_wrapper_3 input[type="number"],
.gform_wrapper textarea,
#gform_wrapper_1 textarea,
#gform_wrapper_2 textarea,
#gform_wrapper_3 textarea{
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	box-shadow: none;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
	background-color: transparent;
	border-bottom: 1px solid #d6d6d6;
	padding: 5px 5px 5px 0;
	width: 100%;
	max-width: 100%;
	height: 40px;
	line-height: 1.5;
	text-align: left;
	outline: none;
	transition: border-bottom 0.2s ease;
}

.gform_wrapper textarea,
#gform_wrapper_1 textarea,
#gform_wrapper_2 textarea,
#gform_wrapper_3 textarea{
	height: auto;
	min-height: 40px;
}

#gform_fields_1,
#gform_fields_2,
#gform_fields_3{
	column-gap: 50px !important;
}

.gform-footer.gform_footer{
	height: 50px;
}

.gform_wrapper input[type="text"]:focus,
#gform_wrapper_1 input[type="text"]:focus,
#gform_wrapper_2 input[type="text"]:focus,
#gform_wrapper_3 input[type="text"]:focus,
.gform_wrapper input[type="email"]:focus,
#gform_wrapper_1 input[type="email"]:focus,
#gform_wrapper_2 input[type="email"]:focus,
#gform_wrapper_3 input[type="email"]:focus,
.gform_wrapper input[type="tel"]:focus,
#gform_wrapper_1 input[type="tel"]:focus,
#gform_wrapper_2 input[type="tel"]:focus,
#gform_wrapper_3 input[type="tel"]:focus,
.gform_wrapper input[type="url"]:focus,
#gform_wrapper_1 input[type="url"]:focus,
#gform_wrapper_2 input[type="url"]:focus,
#gform_wrapper_3 input[type="url"]:focus,
.gform_wrapper input[type="number"]:focus,
#gform_wrapper_1 input[type="number"]:focus,
#gform_wrapper_2 input[type="number"]:focus,
#gform_wrapper_3 input[type="number"]:focus,
.gform_wrapper textarea:focus,
#gform_wrapper_1 textarea:focus,
#gform_wrapper_2 textarea:focus,
#gform_wrapper_3 textarea:focus{
	border-bottom: 3px solid #DE1640;
	transition: border-bottom 0.2s ease;
}

/**
 * Gravity Wizz dropdown styling - matching Gravity Forms input styling
 */
.ts-control,
.gform_wrapper .ts-control,
#gform_wrapper_1 .ts-control,
#gform_wrapper_2 .ts-control,
#gform_wrapper_3 .ts-control{
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	box-shadow: none;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
	background-color: transparent;
	border-bottom: 1px solid #d6d6d6;
	padding: 5px 5px 5px 0;
	width: 100%;
	max-width: 100%;
	height: 40px;
	line-height: 1.5;
	text-align: left;
	outline: none;
	transition: border-bottom 0.2s ease;
}

.ts-control input,
.gform_wrapper .ts-control input,
#gform_wrapper_1 .ts-control input,
#gform_wrapper_2 .ts-control input,
#gform_wrapper_3 .ts-control input{
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	box-shadow: none;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
	background-color: transparent;
	padding: 0;
	width: 100%;
	height: auto;
	line-height: 1.5;
	text-align: left;
	outline: none;
}

.ts-control:focus,
.ts-control.focus,
.ts-control.focus-within,
.ts-control.active,
.ts-control.is-open,
.ts-control[aria-expanded="true"],
.gform_wrapper .ts-control:focus,
.gform_wrapper .ts-control.focus,
.gform_wrapper .ts-control.focus-within,
.gform_wrapper .ts-control.active,
.gform_wrapper .ts-control.is-open,
.gform_wrapper .ts-control[aria-expanded="true"],
#gform_wrapper_1 .ts-control:focus,
#gform_wrapper_1 .ts-control.focus,
#gform_wrapper_1 .ts-control.focus-within,
#gform_wrapper_1 .ts-control.active,
#gform_wrapper_1 .ts-control.is-open,
#gform_wrapper_1 .ts-control[aria-expanded="true"],
#gform_wrapper_2 .ts-control:focus,
#gform_wrapper_2 .ts-control.focus,
#gform_wrapper_2 .ts-control.focus-within,
#gform_wrapper_2 .ts-control.active,
#gform_wrapper_2 .ts-control.is-open,
#gform_wrapper_2 .ts-control[aria-expanded="true"],
#gform_wrapper_3 .ts-control:focus,
#gform_wrapper_3 .ts-control.focus,
#gform_wrapper_3 .ts-control.focus-within,
#gform_wrapper_3 .ts-control.active,
#gform_wrapper_3 .ts-control.is-open,
#gform_wrapper_3 .ts-control[aria-expanded="true"]{
	border-bottom: 3px solid #DE1640;
	transition: border-bottom 0.2s ease;
}

.gform-theme.gform-theme--framework.gform_wrapper .button,
.gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button,
.gform-theme.gform-theme--framework.gform_wrapper button:not([id*=mceu_]):not(.mce-open),
.gform-theme.gform-theme--framework.gform_wrapper button.button,
.gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button,
.gform-theme.gform-theme--framework.gform_wrapper input[type=submit],
.gform-theme.gform-theme--framework.gform_wrapper input[type=button],
.gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button.gform_button,
.gform_wrapper input[type="submit"],
.gform_wrapper button[type="submit"],
.gform_wrapper .gform_button{
	text-decoration: none !important;
	background-color: #DE1640 !important;
	color: #fff !important;
	transition: background-color 0.3s ease !important;
	padding: 10px 15px !important;
	border-radius: 5px !important;
	font-size: 15px !important;
	display: inline-block !important;
	border: none !important;
	cursor: pointer !important;
	box-shadow: none !important;
	outline: none !important;
	height: 45px;
	margin-top: 10px;
}

.gform-theme.gform-theme--framework.gform_wrapper .button:hover,
.gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:hover,
.gform-theme.gform-theme--framework.gform_wrapper button:not([id*=mceu_]):not(.mce-open):hover,
.gform-theme.gform-theme--framework.gform_wrapper button.button:hover,
.gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button:hover,
.gform-theme.gform-theme--framework.gform_wrapper input[type=submit]:hover,
.gform-theme.gform-theme--framework.gform_wrapper input[type=button]:hover,
.gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button.gform_button:hover,
.gform_wrapper input[type="submit"]:hover,
.gform_wrapper button[type="submit"]:hover,
.gform_wrapper .gform_button:hover{
	background-color: #C40E34 !important;
}

a.show-mob-filters{
	text-decoration: none;
	color: #333;
	font-size: 15px;
	font-weight: 500;
	display: none;
	padding: 10px 15px;
	border-radius: 5px;
	border: 1px solid #DE1640;
	color: #DE1640;
	text-align: center;
}

/**
 * Responsive Styles
 */

/* Tablet and below (768px) */
@media screen and (max-width: 768px) {
	.rwp-filter-items{
		display: none;
	}
	a.show-mob-filters{
		display: block
	}
	/* Header - stack elements */
	.wp-block-group.alignfull {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 20px;
	}

	.wp-block-navigation {
		width: 100%;
	}

	/* Job archive items */
	.job-archive-container .job-item {
		padding: 20px 0 25px;
	}

	.job-archive-container .job-item h2 {
		font-size: clamp(1.1rem, calc(1.2rem + 0.5vw), 1.5rem);
	}

	.job-archive-container .job-item p.excerpt {
		font-size: 14px;
	}

	.job-archive-container .job-item a.job-link {
		font-size: 14px;
		padding: 8px 12px;
	}

	/* Job meta - ensure proper wrapping */
	.job-archive-container .job-item ul.job-meta {
		gap: 10px;
	}

	/* Consultant group */
	.consultant-grp span.single-meta-item:nth-child(2) {
		font-size: 18px;
	}

	.consultant-grp span.single-meta-item:nth-child(3) {
		font-size: 16px;
	}

	.consultant-grp a.single-meta-item {
		font-size: 14px;
	}

	.consultant-grp img {
		max-width: 150px;
	}

	/* Single job description */
	.single-job-description {
		font-size: 15px;
	}

	/* Gravity Forms - stack fields */
	#gform_fields_1,
	#gform_fields_2,
	#gform_fields_3 {
		column-gap: 0 !important;
		column-count: 1 !important;
		display: flex;
		flex-direction: column;
		row-gap: 10px !important;
	}

	.gform_wrapper .gfield {
		width: 100% !important;
		margin-bottom: 15px;
	}

	.gform_wrapper label,
	#gform_wrapper_1 label,
	#gform_wrapper_2 label,
	#gform_wrapper_3 label,
	.gform_wrapper .gfield_label,
	#gform_wrapper_1 .gfield_label,
	#gform_wrapper_2 .gfield_label,
	#gform_wrapper_3 .gfield_label {
		font-size: 15px;
	}

	.gform_wrapper input[type="text"],
	#gform_wrapper_1 input[type="text"],
	#gform_wrapper_2 input[type="text"],
	#gform_wrapper_3 input[type="text"],
	.gform_wrapper input[type="email"],
	#gform_wrapper_1 input[type="email"],
	#gform_wrapper_2 input[type="email"],
	#gform_wrapper_3 input[type="email"],
	.gform_wrapper input[type="tel"],
	#gform_wrapper_1 input[type="tel"],
	#gform_wrapper_2 input[type="tel"],
	#gform_wrapper_3 input[type="tel"],
	.gform_wrapper input[type="url"],
	#gform_wrapper_1 input[type="url"],
	#gform_wrapper_2 input[type="url"],
	#gform_wrapper_3 input[type="url"],
	.gform_wrapper input[type="number"],
	#gform_wrapper_1 input[type="number"],
	#gform_wrapper_2 input[type="number"],
	#gform_wrapper_3 input[type="number"],
	.gform_wrapper textarea,
	#gform_wrapper_1 textarea,
	#gform_wrapper_2 textarea,
	#gform_wrapper_3 textarea,
	.ts-control,
	.gform_wrapper .ts-control,
	#gform_wrapper_1 .ts-control,
	#gform_wrapper_2 .ts-control,
	#gform_wrapper_3 .ts-control {
		font-size: 15px;
	}

	.ts-control input,
	.gform_wrapper .ts-control input,
	#gform_wrapper_1 .ts-control input,
	#gform_wrapper_2 .ts-control input,
	#gform_wrapper_3 .ts-control input {
		font-size: 15px;
	}

	/* Footer spacing */
	.wp-block-spacer {
		height: 30px !important;
	}
}

/* Mobile (480px and below) */
@media screen and (max-width: 780px) {

	.recruiterwp_job-template-default .wp-block-cover h1 {
		font-size: 38px !important;
	}
	
	/* Reverse column order in wp-block-cover on mobile */
	.wp-block-cover .wp-block-columns {
		display: flex;
		flex-direction: column-reverse;
	}

	.wp-block-cover .wp-block-columns .wp-block-column {
		width: 100% !important;
	}

	/* Header */
	.wp-block-group.alignfull {
		padding-top: 20px !important;
		padding-bottom: 20px !important;
	}

	/* Job archive items */
	.job-archive-container .job-item {
		padding: 15px 0 20px;
	}

	.job-archive-container .job-item h2 {
		font-size: clamp(1rem, calc(1.1rem + 0.4vw), 1.3rem);
		margin-bottom: 8px;
	}

	.job-archive-container .job-item span.sticky {
		font-size: 10px;
		padding: 4px 8px;
		margin-bottom: 8px;
	}

	.job-archive-container .job-item p.excerpt {
		font-size: 14px;
		line-height: 1.4;
	}

	.job-archive-container .job-item a.job-link {
		font-size: 14px;
		padding: 10px 12px;
		width: 100%;
		text-align: center;
		box-sizing: border-box;
	}

	.job-archive-container .job-item h2 a{
		font-size: 22px;
	}

	.job-archive-container .job-item ul.job-meta {
		flex-direction: column;
		gap: 8px;
	}

	.job-archive-container .job-item ul.job-meta li{
		font-size: 15px;
	}

	/* FacetWP search */
	.facetwp-facet-job_search input.facetwp-search {
		font-size: 14px;
		height: 38px;
	}

	button.facetwp-search {
		font-size: 14px;
		padding: 10px 12px;
	}

	.facetwp-type-checkboxes .facetwp-counter {
		font-size: 11px;
	}

	/* Consultant group */
	.consultant-grp span.single-meta-item:nth-child(2) {
		font-size: 16px;
		margin-top: 8px;
	}

	.consultant-grp span.single-meta-item:nth-child(3) {
		font-size: 14px;
		margin-top: 4px;
	}

	.consultant-grp a.single-meta-item {
		font-size: 13px;
	}

	.consultant-grp img {
		max-width: 120px;
	}

	/* Single job description */
	.single-job-description {
		font-size: 14px;
		line-height: 1.4;
	}

	.single-job-metadata {
		padding-top: 20px;
		margin-top: 20px;
	}

	/* Gravity Forms */
	.gform_wrapper label,
	#gform_wrapper_1 label,
	#gform_wrapper_2 label,
	#gform_wrapper_3 label,
	.gform_wrapper .gfield_label,
	#gform_wrapper_1 .gfield_label,
	#gform_wrapper_2 .gfield_label,
	#gform_wrapper_3 .gfield_label {
		font-size: 14px;
		margin-bottom: 2px;
	}

	.gform_wrapper input[type="text"],
	#gform_wrapper_1 input[type="text"],
	#gform_wrapper_2 input[type="text"],
	#gform_wrapper_3 input[type="text"],
	.gform_wrapper input[type="email"],
	#gform_wrapper_1 input[type="email"],
	#gform_wrapper_2 input[type="email"],
	#gform_wrapper_3 input[type="email"],
	.gform_wrapper input[type="tel"],
	#gform_wrapper_1 input[type="tel"],
	#gform_wrapper_2 input[type="tel"],
	#gform_wrapper_3 input[type="tel"],
	.gform_wrapper input[type="url"],
	#gform_wrapper_1 input[type="url"],
	#gform_wrapper_2 input[type="url"],
	#gform_wrapper_3 input[type="url"],
	.gform_wrapper input[type="number"],
	#gform_wrapper_1 input[type="number"],
	#gform_wrapper_2 input[type="number"],
	#gform_wrapper_3 input[type="number"],
	.gform_wrapper textarea,
	#gform_wrapper_1 textarea,
	#gform_wrapper_2 textarea,
	#gform_wrapper_3 textarea,
	.ts-control,
	.gform_wrapper .ts-control,
	#gform_wrapper_1 .ts-control,
	#gform_wrapper_2 .ts-control,
	#gform_wrapper_3 .ts-control {
		font-size: 14px;
		height: 38px;
		padding: 4px 4px 4px 0;
	}

	.ts-control input,
	.gform_wrapper .ts-control input,
	#gform_wrapper_1 .ts-control input,
	#gform_wrapper_2 .ts-control input,
	#gform_wrapper_3 .ts-control input {
		font-size: 14px;
	}

	.gform_wrapper textarea,
	#gform_wrapper_1 textarea,
	#gform_wrapper_2 textarea,
	#gform_wrapper_3 textarea {
		min-height: 38px;
	}

	.gform-theme.gform-theme--framework.gform_wrapper .button,
	.gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button,
	.gform-theme.gform-theme--framework.gform_wrapper button:not([id*=mceu_]):not(.mce-open),
	.gform-theme.gform-theme--framework.gform_wrapper button.button,
	.gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button,
	.gform-theme.gform-theme--framework.gform_wrapper input[type=submit],
	.gform-theme.gform-theme--framework.gform_wrapper input[type=button],
	.gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button.gform_button,
	.gform_wrapper input[type="submit"],
	.gform_wrapper button[type="submit"],
	.gform_wrapper .gform_button {
		font-size: 14px !important;
		padding: 8px 12px !important;
		height: 40px;
		width: 100%;
		margin-top: 8px;
	}

	/* Footer */
	.wp-block-group[style*="padding-top:80px"] {
		padding-top: 40px !important;
		padding-bottom: 20px !important;
	}

	.wp-block-spacer {
		height: 20px !important;
	}

	/* WordPress button block */
	.wp-block-button__link {
		font-size: 14px;
		padding: 8px 12px;
	}

	/* Ensure images are responsive */
	img {
		max-width: 100%;
		height: auto;
	}

	/* Gravity Forms fields - ensure full width stacking */
	#gform_fields_1,
	#gform_fields_2,
	#gform_fields_3 {
		column-count: 1 !important;
	}

	.gform_wrapper .gfield {
		width: 100% !important;
		margin-bottom: 12px;
		break-inside: avoid;
	}
}

