@import url('icons.css?v=1.0.0');
@import url('../../css/sharebuttons.css?v=1.0.0');

* {
	zoom: 1;
}

/* PARENT */
div.PopularSearchSection,
section#JobsByAreaSection,
div.JobsByIndustriesSection {
	display: none;
}

div.container.main-content-search-result {
	width: 98%;
	margin: 40px auto;
	padding: 20px;
	box-sizing: border-box;
}

div.search-content {
	display: grid;
	grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
	grid-template-areas: "filters results";
	gap: 32px;
	align-items: flex-start;
}

	div.search-content > .filter-container {
		grid-area: filters;
		width: 100%;
		max-width: 340px;
	}

	div.search-content > div:not(.filter-container) {
		grid-area: results;
		width: 100%;
	}

div#jobalertfeedback > a#create-job-alert-btn {
	float: initial;
	display: flex;
	padding: 12px 20px;
	justify-content: center;
	align-items: center;
	gap: 10px;
	border-radius: 10px;
	border: 2px solid var(--color-secondary-800);
	color: var(--color-secondary-800);
	font-family: Poppins;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

/* FILTERS */
a.borrar-filtros {
	cursor: pointer;
	float: right;
	color: var(--color-tertiary-700);
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

a.borrar-filtros-inactive {
	color: var(--color-secondary-300);
	font-family: Poppins;
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

h1.trabajos-en {
	align-self: stretch;
	color: var(--color-secondary-800);
	font-family: Poppins;
	font-size: 24px;
	font-style: normal;
	font-weight: 600;
	line-height: 32px;
	max-width: 358px;
	margin: 0;
	text-transform: uppercase;
}

div#JobSearchRefinements {
	width: 100%;
	max-width: 340px;
	padding: var(--Scale-400);
	border-radius: var(--Scale-300);
	background: var(--color-secondary-50);
	box-sizing: border-box;
	margin-block: 5px;
}

div.refine-option {
	border-bottom: 1px solid var(--color-secondary-500);
}

	div.refine-option h4 {
		color: var(--color-secondary-800);
		font-family: Poppins;
		font-size: 16px !important;
		font-style: normal;
		font-weight: 500 !important;
		line-height: normal;
	}

	div.refine-option ul {
		padding: initial;
	}

.refine-option ul li {
	padding: var(--Scale-200) var(--Scale-250);
}

div.refine-option ul li a {
	color: var(--color-secondary-500);
	font-family: Poppins;
	font-size: var(--Scale-400);
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

div.refine-option ul li:has(a + span) a,
div.refine-option ul li:has(a + span) a + span {
	color: var(--color-primary-600);
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

a#create-job-alert-btn {
	background: initial;
}

div.job-options.sort-job {
	display: flex;
	padding: 12px 22px;
	justify-content: space-between;
	align-items: center;
	align-self: stretch;
	border-radius: 100px;
	background: var(--color-secondary-50);
	width: 100%;
	box-sizing: border-box;
	gap: 12px;
	flex-wrap: wrap;
}

/* Ensure desktop version shows correctly */
.job-options.sort-job.hide-mobile {
	display: flex !important;
}

/* Override mobile interfering styles for desktop */
@media (min-width: 767px) {
	.job-options.sort-job.hide-mobile {
		display: flex !important;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}

	.job-options-mobile.hide-desktop {
		display: none !important;
	}
}

/* Mobile specific overrides */
@media (max-width: 766px) {
	.job-options.sort-job.hide-mobile {
		display: none !important;
	}

	.job-options-mobile.hide-desktop {
		display: flex !important;
	}
}

div.job-options.sort-job label.jobsFound,
div.sort-by-wrap label.sort-by,
div.job-options.sort-job ul.show-count {
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-transform: uppercase;
}

select#SortedBy {
	display: flex;
	width: 148px;
	padding: var(--Scale-50) var(--Scale-100) var(--Scale-50) var(--Scale-200);
	justify-content: space-between;
	align-items: flex-end;
	border-radius: var(--Scale-200);
	border: 1px solid var(--color-secondary-400);
	background: var(--color-neutral-0) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='20' viewBox='0 0 16 20' fill='none'%3E%3Cpath d='M12.5892 7.5L8.07073 12.5L3.55225 7.5' stroke='%23343B4B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat scroll center right;
	background-size: 20px;
}

div.job-options.sort-job ul.show-count {
	display: flex;
	align-items: center;
}

	div.job-options.sort-job ul.show-count li a.active {
		color: var(--color-primary-500, #48CA1E);
		font-family: Poppins;
		font-size: 12px;
		font-style: normal;
		font-weight: 600;
		line-height: normal;
		text-decoration-line: underline;
		text-decoration-style: solid;
		text-decoration-skip-ink: none;
		text-decoration-thickness: auto;
		text-underline-offset: auto;
		text-underline-position: from-font;
		text-transform: uppercase;
	}

	div.job-options.sort-job ul.show-count li a,
	div.job-options.sort-job ul.show-count li a:visited {
		color: var(--color-secondary-800, #1F242E);
		font-family: Poppins;
		font-size: 12px;
		font-style: normal;
		font-weight: 600;
		line-height: normal;
		text-transform: uppercase;
	}

div.sort-by-wrap {
	display: flex;
	align-items: center;
	gap: 6px;
}

.icon-menu-job-search {
	width: 18px;
}

/* Mobile botones wrap - ensure it only shows on mobile within desktop component */
.mobile-botones-wrap {
	display: none; /* Hidden by default */
}

@media (max-width: 766px) {
	.job-options.sort-job .mobile-botones-wrap {
		display: flex;
		align-items: center;
		gap: 10px;
		flex-wrap: wrap;
	}

	.mobile-botones-wrap .boton-toggle {
		padding: 8px 12px;
		background: var(--color-secondary-100);
		border-radius: 6px;
		cursor: pointer;
		font-size: 12px;
		font-weight: 500;
		color: var(--color-secondary-700);
		display: flex;
		align-items: center;
		gap: 6px;
	}
}

label.sort-by {
	margin: initial;
}

/* GENERAL */
div.JobsByIndustriesSection {
	height: 750px;
}

i.map-point,
i.clock {
	width: 16px;
	height: 16px;
	aspect-ratio: 1/1;
}

div.search-result-container {
	display: flex;
	flex-direction: column;
	gap: 28px;
	align-self: stretch;
	justify-content: center;
}

@media (max-width: 1240px) {
	div.search-result-container {
		gap: 20px;
	}

		div.search-result-container div.job-card {
			max-width: 100%;
			padding: 16px;
		}

	.job-card__content {
		grid-template-columns: 80px minmax(0, 1fr) auto;
		gap: 12px;
		padding: 8px 12px;
	}

	.job-card__content-info {
		min-height: auto;
	}
}

@media (max-width: 1200px) {
	div.search-content {
		grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
		gap: 24px;
	}
}

@media (min-width: 770px) and (max-width: 1100px) {
	.job-card__content {
		grid-template-columns: 1fr auto;
		grid-template-areas:
			"logo actions"
			"info info";
		row-gap: 16px;
		column-gap: 12px;
		padding: 12px 18px;
	}

	div.job-card__content div.logo-container {
		align-items: center;
		justify-self: center;
	}

	div.job-card__content div.actions-container {
		align-self: flex-start;
		justify-self: end;
	}
}

@media (max-width: 992px) {
	div.search-content {
		grid-template-columns: 1fr;
		grid-template-areas:
			"results"
			"filters";
	}

		div.search-content > .filter-container {
			width: 100%;
			max-width: none;
		}

		div.search-content > div:not(.filter-container) {
			width: 100%;
			max-width: none;
		}
}

@media (max-width: 360px) {
	div.search-result-container {
		padding: 0 12px;
		box-sizing: border-box;
	}
}


div.search-result-container div.job-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 0 14px 14px 14px;
	width: 100%;
	max-width: 100%;
	border-radius: 10px;
	border: 1px solid rgba(29, 29, 29, 0.15);
	background: #FFF;
	box-shadow: 0 244px 68px 0 rgba(140, 140, 140, 0.00), 0 156px 62px 0 rgba(140, 140, 140, 0.01), 0 88px 53px 0 rgba(140, 140, 140, 0.05), 0 39px 39px 0 rgba(140, 140, 140, 0.09), 0 10px 21px 0 rgba(140, 140, 140, 0.10);
	box-sizing: border-box;
	position: relative;
}

.job-card__content {
	display: flex;
	flex-direction: row;
	gap: 16px;
	align-items: center;
	width: 100%;
	box-sizing: border-box;
	position: relative;
	padding: 8px 0;
}

div.job-card__content div.logo-container {
	width: 100px;
	max-width: 100px;
	min-width: 100px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	justify-self: flex-start;
	align-items: center;
	flex-shrink: 0;
}

.job-card__actions-row {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	gap: 14px;
	width: 100%;
	box-sizing: border-box;
	position: relative;
}

	.job-card__actions-row .actions-container {
		display: flex;
		flex-direction: row;
		gap: 8px;
		align-items: center;
		margin: 0;
		flex-shrink: 0;
	}

.job-card__action-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 34px;
	background-color: var(--color-secondary-800);
	color: white;
	border-radius: 0 0 12px 12px;
	border: none;
	cursor: pointer;
	font-size: 16px;
	transition: background-color 0.2s ease;
	flex-shrink: 0;
	padding: 0;
}

	.job-card__action-btn:hover {
		background-color: var(--color-secondary-700);
	}

/* Favorite button - outline state (unfilled star) */
.job-card__action-favorite {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 22 22" fill="none"><path d="M7.90414 4.15838C9.17079 1.88613 9.80411 0.75 10.751 0.75C11.6978 0.75 12.3312 1.88612 13.5978 4.15837L13.9255 4.74623C14.2855 5.39193 14.4654 5.71479 14.746 5.92781C15.0266 6.14083 15.3761 6.2199 16.0751 6.37805L16.7114 6.52203C19.1711 7.07856 20.401 7.35682 20.6936 8.29773C20.9862 9.23864 20.1477 10.2191 18.4709 12.1799L18.0371 12.6872C17.5605 13.2444 17.3223 13.523 17.2151 13.8677C17.1079 14.2124 17.144 14.5841 17.216 15.3276L17.2816 16.0044C17.5351 18.6206 17.6619 19.9287 16.8958 20.5102C16.1298 21.0917 14.9783 20.5615 12.6753 19.5012L12.0795 19.2268C11.4251 18.9255 11.0978 18.7748 10.751 18.7748C10.4041 18.7748 10.0769 18.9255 9.42246 19.2268L8.82665 19.5012C6.52365 20.5615 5.37215 21.0917 4.60612 20.5102C3.8401 19.9287 3.96686 18.6206 4.22037 16.0044L4.28596 15.3276C4.358 14.5841 4.39402 14.2124 4.28684 13.8677C4.17966 13.523 3.9414 13.2444 3.4649 12.6872L3.03107 12.1799C1.35423 10.2191 0.515801 9.23864 0.808398 8.29773C1.10099 7.35682 2.33083 7.07856 4.79051 6.52203L5.42686 6.37805C6.12583 6.2199 6.47531 6.14083 6.75592 5.92781C7.03653 5.71479 7.2165 5.39194 7.57644 4.74623L7.90414 4.15838Z" stroke="%23FFFFFF" stroke-width="1.5"/></svg>') !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 20px 20px !important;
}

	/* Favorite button - saved state (filled star) */
	.job-card__action-favorite.is-saved {
		background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 22 22" fill="none"><path d="M7.90414 4.15838C9.17079 1.88613 9.80411 0.75 10.751 0.75C11.6978 0.75 12.3312 1.88612 13.5978 4.15837L13.9255 4.74623C14.2855 5.39193 14.4654 5.71479 14.746 5.92781C15.0266 6.14083 15.3761 6.2199 16.0751 6.37805L16.7114 6.52203C19.1711 7.07856 20.401 7.35682 20.6936 8.29773C20.9862 9.23864 20.1477 10.2191 18.4709 12.1799L18.0371 12.6872C17.5605 13.2444 17.3223 13.523 17.2151 13.8677C17.1079 14.2124 17.144 14.5841 17.216 15.3276L17.2816 16.0044C17.5351 18.6206 17.6619 19.9287 16.8958 20.5102C16.1298 21.0917 14.9783 20.5615 12.6753 19.5012L12.0795 19.2268C11.4251 18.9255 11.0978 18.7748 10.751 18.7748C10.4041 18.7748 10.0769 18.9255 9.42246 19.2268L8.82665 19.5012C6.52365 20.5615 5.37215 21.0917 4.60612 20.5102C3.8401 19.9287 3.96686 18.6206 4.22037 16.0044L4.28596 15.3276C4.358 14.5841 4.39402 14.2124 4.28684 13.8677C4.17966 13.523 3.9414 13.2444 3.4649 12.6872L3.03107 12.1799C1.35423 10.2191 0.515801 9.23864 0.808398 8.29773C1.10099 7.35682 2.33083 7.07856 4.79051 6.52203L5.42686 6.37805C6.12583 6.2199 6.47531 6.14083 6.75592 5.92781C7.03653 5.71479 7.2165 5.39194 7.57644 4.74623L7.90414 4.15838Z" fill="%2361e437" stroke="%2361e437" stroke-width="1.5"/></svg>') !important;
		background-position: center !important;
		background-repeat: no-repeat !important;
		background-size: 20px 20px !important;
	}

/* Share button */
.job-card__action-share {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.5 2.25C14.7051 2.25 13.25 3.70507 13.25 5.5C13.25 5.69591 13.2673 5.88776 13.3006 6.07412L8.56991 9.38558C8.54587 9.4024 8.52312 9.42038 8.50168 9.43939C7.94993 9.00747 7.25503 8.75 6.5 8.75C4.70507 8.75 3.25 10.2051 3.25 12C3.25 13.7949 4.70507 15.25 6.5 15.25C7.25503 15.25 7.94993 14.9925 8.50168 14.5606C8.52312 14.5796 8.54587 14.5976 8.56991 14.6144L13.3006 17.9259C13.2673 18.1122 13.25 18.3041 13.25 18.5C13.25 20.2949 14.7051 21.75 16.5 21.75C18.2949 21.75 19.75 20.2949 19.75 18.5C19.75 16.7051 18.2949 15.25 16.5 15.25C15.4472 15.25 14.5113 15.7506 13.9174 16.5267L9.43806 13.3911C9.63809 12.9694 9.75 12.4978 9.75 12C9.75 11.5022 9.63809 11.0306 9.43806 10.6089L13.9174 7.4733C14.5113 8.24942 15.4472 8.75 16.5 8.75C18.2949 8.75 19.75 7.29493 19.75 5.5C19.75 3.70507 18.2949 2.25 16.5 2.25ZM14.75 5.5C14.75 4.5335 15.5335 3.75 16.5 3.75C17.4665 3.75 18.25 4.5335 18.25 5.5C18.25 6.4665 17.4665 7.25 16.5 7.25C15.5335 7.25 14.75 6.4665 14.75 5.5ZM6.5 10.25C5.5335 10.25 4.75 11.0335 4.75 12C4.75 12.9665 5.5335 13.75 6.5 13.75C7.4665 13.75 8.25 12.9665 8.25 12C8.25 11.0335 7.4665 10.25 6.5 10.25ZM16.5 16.75C15.5335 16.75 14.75 17.5335 14.75 18.5C14.75 19.4665 15.5335 20.25 16.5 20.25C17.4665 20.25 18.25 19.4665 18.25 18.5C18.25 17.5335 17.4665 16.75 16.5 16.75Z" fill="%23E8FEE2"/></svg>');
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px 20px;
}

.job-card__actions-row span.new-label {
	border-radius: 0 0 12px 12px;
	background: var(--color-info-400);
	display: flex;
	padding: 6px 17px;
	justify-content: center;
	align-items: center;
	gap: 10px;
	color: var(--color-primary-50);
	font-family: Poppins;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	white-space: nowrap;
	z-index: 5;
	flex-shrink: 0;
}

.job-card__content img {
	width: 100px;
	max-width: 100px;
	height: 100px;
	max-height: 100px;
	background-color: var(--color-secondary-100);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50%;
	border-radius: 8px;
}

.job-card a.btn-see-offer,
.btn-create-offert {
	padding: 12px var(--Scale-400);
	text-align: center;
	border-radius: var(--Scale-300);
	background-color: var(--color-primary-400);
	color: var(--color-secondary-800);
	font-family: Poppins;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	min-width: 140px;
	white-space: nowrap;
}

input[type="button"].btn-create-offert {
	border-radius: 10px;
	border: none;
	width: fit-content;
	height: 48px;
	padding: 12px 16px;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

	input[type="button"].btn-create-offert:hover {
		background-color: var(--color-primary-600);
	}

a.not-you {
	color: var(--color-primary-50);
	font-family: Poppins;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	max-width: 137px;
}

.job-card__content-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 100%;
	flex: 1;
	box-sizing: border-box;
}

	.job-card__content-info h2.title {
		height: auto;
		min-height: auto;
		max-height: none;
		color: var(--color-secondary-800);
		font-family: Poppins;
		font-size: 16px;
		font-style: normal;
		font-weight: 600;
		line-height: 24px;
		margin: 0;
		display: line-clamp(2);
	}

		.job-card__content-info h2.title a,
		.job-card__content-info h2.title a:visited {
			color: var(--color-secondary-800);
		}

	.job-card__content-info span.subtitle {
		color: var(--color-secondary-700);
		font-family: Poppins;
		font-size: 14px;
		font-style: normal;
		font-weight: 400;
		line-height: 16px;
		height: auto;
		max-height: none;
		min-height: auto;
	}

	.job-card__content-info span.sub-subtitle {
		height: auto;
		max-height: none;
		flex: 1 0 auto;
		color: var(--color-secondary-700);
		font-family: Poppins;
		font-size: 12px;
		font-style: normal;
		font-weight: 400;
		line-height: 16px;
	}

div.job-card__content div.actions-container {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	gap: 8px;
	width: auto;
	max-width: none;
	min-width: auto;
	height: auto;
	margin: 0;
	flex-shrink: 0;
}

.job-card__footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	box-sizing: border-box;
	gap: 16px;
	margin-top: 8px;
	padding-top: 8px;
}

.job-card__info-location {
	display: flex;
	gap: 16px;
	align-items: center;
	flex: 1;
}

	.job-card__info-location .sub-subtitle {
		display: flex;
		align-items: center;
		gap: 4px;
	}

	.job-card__info-location .divider {
		width: 1px;
		height: 25px;
		background-color: rgba(29, 29, 29, 0.15);
	}

.job-card__content-info .company-label {
	color: var(--color-secondary-700);
	font-family: Poppins;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 16px;
	display: block;
	margin-bottom: 4px;
}

/* Icon Styles for Actions */
.job-card__content div.actions-container i {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	background-color: var(--color-secondary-800);
	color: white;
	border-radius: 0 0 12px 12px;
	cursor: pointer;
	font-size: 16px;
	transition: background-color 0.2s ease;
	flex-shrink: 0;
}

	.job-card__content div.actions-container i:hover {
		background-color: var(--color-secondary-700);
	}

@media (min-width: 541px) and (max-width: 670px) {
	div.search-result-container div.job-card {
		padding: 14px;
		flex-direction: column;
		position: relative;
	}

	.job-card__actions-row {
		position: absolute;
		top: 12px;
		left: 12px;
		right: 12px;
		width: calc(100% - 24px);
		display: flex;
		padding: 0;
		margin: 0;
		border-bottom: none;
		justify-content: space-between;
		align-items: flex-start;
		z-index: 10;
	}

		.job-card__actions-row .actions-container {
			gap: 8px;
		}

		.job-card__actions-row span.new-label {
			display: flex;
		}

	.job-card__content {
		flex-direction: row;
		gap: 12px;
		padding: 0;
		padding-top: 0;
		width: 100%;
		margin-top: 0;
		border-bottom: none;
		align-items: flex-start;
	}

	div.job-card__content div.logo-container {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 0;
		width: auto;
		min-width: 80px;
	}

		div.job-card__content div.logo-container img {
			width: 80px;
			height: 80px;
			min-width: 80px;
			border-radius: 8px;
		}

	.job-card__content-info {
		gap: 4px;
		width: 100%;
		flex: 1;
	}

		.job-card__content-info h2.title {
			font-size: 16px;
			line-height: 24px;
			order: 3;
			width: 100%;
		}

		.job-card__content-info span.subtitle {
			font-size: 14px;
		}

		.job-card__content-info span.sub-subtitle {
			font-size: 12px;
		}

	.job-card__footer {
		flex-direction: column;
		gap: 12px;
		margin-top: 12px;
		padding-top: 0;
		border-top: none;
		width: 100%;
	}

	.job-card__info-location {
		flex-direction: column;
		gap: 8px;
		width: 100%;
	}

		.job-card__info-location .divider {
			display: none;
		}

	.job-card__footer .btn-see-offer {
		width: 100%;
		padding: 12px 16px;
	}
}

/* MOBILE JOB-OPTIONS COMPONENT (Following Figma design) */
.job-options-mobile {
	display: flex !important;
	padding: 12px;
	justify-content: space-between;
	align-items: center;
	border-radius: 100px;
	background: #EEF1FA;
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 16px;
}

.mobile-job-summary {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: 'Poppins', sans-serif;
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
	text-transform: uppercase;
	flex: 1;
	min-width: 0; /* Allows text to wrap if needed */
}

.mobile-total-text {
	color: #1F242E;
}

.mobile-total-count {
	color: #48CA1E;
	white-space: nowrap; /* Keep the number together */
}

.mobile-action-icons {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0; /* Prevents icons from shrinking */
}

.mobile-sort-btn,
.mobile-filter-btn {
	width: 24px;
	height: 24px;
	border: none;
	background: transparent;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	transition: opacity 0.2s ease;
}

	.mobile-sort-btn:hover,
	.mobile-filter-btn:hover {
		opacity: 0.7;
	}

	.mobile-sort-btn i,
	.mobile-filter-btn i {
		font-size: 14px;
		color: #1F242E;
	}

/* Desktop job-options alignment fixes */
.job-options.sort-job.hide-mobile {
	display: flex !important;
}

/* Responsive adjustments for very small screens */
@media (max-width: 360px) {
	.mobile-job-summary {
		font-size: 11px;
		gap: 6px;
	}

	.job-options-mobile {
		padding: 10px;
	}
}

/* Fix desktop and mobile visibility conflicts */
@media (min-width: 767px) {
	.job-options.sort-job.hide-mobile {
		display: flex !important;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}

	.job-options-mobile.hide-desktop {
		display: none !important;
	}

	.job-card-mobile {
		display: none !important;
	}

	.job-card {
		display: flex !important;
		flex-direction: column;
	}
}

/* Mobile specific overrides */
@media (max-width: 766px) {
	.job-options.sort-job.hide-mobile {
		display: none !important;
	}

	.job-options-mobile.hide-desktop {
		display: flex !important;
		margin-bottom: 16px;
		margin-top: 16px;
		width: 100%;
		border-radius: 100px;
		background: #EEF1FA;
		padding: 12px;
		justify-content: space-between;
		align-items: center;
		box-sizing: border-box;
	}

	.job-card {
		display: none !important;
	}

	.job-card-mobile {
		display: block !important;
	}
}

@media (max-width: 540px) {
	/* Hide desktop job cards and show mobile versions */
	.job-card {
		display: none !important;
	}

	.job-card-mobile {
		display: block !important;
	}

	/* Ensure mobile job-options is visible */
	.job-options-mobile.hide-desktop {
		display: flex !important;
	}

	.job-options.sort-job.hide-mobile {
		display: none !important;
	}

	/* Legacy styles for job-card in case they're still visible */
	div.search-result-container div.job-card {
		position: relative;
		padding: 14px;
	}

	.job-card__actions-row {
		position: absolute;
		top: 12px;
		left: 12px;
		right: 12px;
		width: calc(100% - 24px);
		display: flex;
		padding: 0;
		margin: 0;
		border-bottom: none;
		justify-content: space-between;
		align-items: flex-start;
		z-index: 10;
	}

		.job-card__actions-row .actions-container {
			gap: 8px;
		}

		.job-card__actions-row span.new-label {
			display: flex;
		}

	.job-card__content {
		flex-direction: row;
		gap: 12px;
		padding: 0;
		padding-top: 0;
		width: 100%;
		margin-top: 0;
		border-bottom: none;
		align-items: flex-start;
	}

	div.job-card__content div.logo-container {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 0;
		width: auto;
		min-width: 80px;
	}

		div.job-card__content div.logo-container img {
			width: 80px;
			height: 80px;
			min-width: 80px;
			border-radius: 8px;
		}

	.job-card__content-info {
		flex-direction: column;
		gap: 4px;
		width: 100%;
		flex: 1;
	}

		.job-card__content-info h2.title {
			font-size: 16px;
			line-height: 24px;
		}

		.job-card__content-info span.subtitle {
			font-size: 14px;
		}

		.job-card__content-info span.sub-subtitle {
			font-size: 12px;
		}

	.job-card__footer {
		flex-direction: column;
		gap: 12px;
		margin-top: 12px;
		width: 100%;
		padding-top: 0;
		border-top: none;
	}

	.job-card__info-location {
		flex-direction: column;
		gap: 8px;
		flex: 1;
	}

		.job-card__info-location .divider {
			display: none;
		}

	div.search-result-container div.job-card .job-card__footer .btn-see-offer {
		width: 100%;
		padding: 12px 16px;
	}
}

div#addJobAlertContainer {
	grid-column-start: span 2;
	width: 100%;
	max-width: 800px;
	padding: var(--Scale-700);
	border-radius: var(--Scale-300);
	border: 1px solid var(--color-secondary-600);
	background: var(--color-secondary-800);
	gap: var(--Scale-950);
	box-sizing: border-box;
	margin: 20px auto;
}

	div#addJobAlertContainer > div.module-content {
		padding: initial;
	}

div#addjobalertinlinediv {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: var(--color-secondary-800);
	gap: var(--Scale-500);
}

div.job-alert-created-result p {
	color: var(--color-neutral-0);
	margin: 0;
	text-align: center;
	font-family: Poppins;
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: 24px;
}

div.job-alert-created-single--container {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

div.job-alert-created-single--subcontainer {
	display: flex;
	width: 400px;
	padding: var(--Scale-300);
	justify-content: center;
	align-items: center;
	border-radius: var(--Scale-200);
	border: 1px solid var(--color-primary-600);
	background: var(--color-primary-50);
}

	div.job-alert-created-single--subcontainer span.title {
		color: var(--color-primary-800);
		font-family: Poppins;
		font-size: 18px;
		font-style: normal;
		font-weight: 600;
		line-height: 24px;
	}

span.email-job-alert-notification {
	text-decoration: underline;
}

span.link-expiration-label {
	font-weight: 700;
}

div#addjobalertinlinediv h4 {
	font-size: 18px;
	font-weight: 600;
	line-height: 24px;
	color: var(--color-neutral-0);
}

	div#addjobalertinlinediv h4 span {
		color: var(--color-neutral-0);
		font-size: 16px;
		font-weight: 400;
		line-height: 24px;
	}

div#jobalertfeedback-inline {
	margin: initial;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: var(--Scale-600);
	align-items: end;
	width: 100%;
}

div.create-job-actions {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: flex-end;
	gap: var(--Scale-600);
}

/* SHARE OPTIONS */
.share-popup {
	position: absolute;
	top: -9999px;
	left: -9999px;
	z-index: 11020;
	background: transparent;
	border-radius: 16px;
	filter: drop-shadow(0 16px 40px rgba(5, 8, 23, 0.35));
	min-width: 240px;
	max-width: calc(100vw - 32px);
	padding: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(4px);
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.actions-container,
.job-card-mobile__actions {
	position: relative;
}

.share-popup.share-popup--above {
	transform: translateY(-4px);
}

	.share-popup.share-popup--above.is-visible {
		transform: translateY(0);
	}

.share-popup .share-buttons {
	border-radius: 16px;
	background: var(--color-secondary-800);
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.share-popup.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}

.share-popup-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.25);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease;
	z-index: 11010;
}

	.share-popup-backdrop.is-visible {
		opacity: 1;
		pointer-events: auto;
	}

.actions-container {
	position: relative;
}

div#addjobalertdiv div.contenedor {
	display: flex;
	flex-direction: column;
	gap: 20px;
	/*padding: var(--Scale-700);*/
	padding: 20px;
	position: relative;
}

div.description-container {
	display: flex;
	align-items: flex-start;
	gap: var(--Scale-300);
	align-self: stretch;
	padding-right: 35px;
	margin-bottom: 10px;
}

div#addjobalertdiv div.contenedor div p.description {
	color: var(--color-neutral-0);
	font-family: Poppins;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: 24px;
	margin: initial;
	max-width: 268px;
}

	div#addjobalertdiv div.contenedor div p.description span {
		font-size: 16px;
		font-weight: 400;
	}

div#addjobalertdiv div.contenedor div.actions {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	align-self: stretch;
	gap: 12px;
}

div#addjobalertdiv .teco-register-popup-input-group {
	display: flex;
	align-items: center;
	gap: 12px;
	background-color: var(--color-neutral-0);
	padding: 12px 16px;
	border-radius: 8px;
	width: 100%;
	box-sizing: border-box;
}

	div#addjobalertdiv .teco-register-popup-input-group i.email-icon {
		width: 24px;
		height: 24px;
		flex-shrink: 0;
	}

	div#addjobalertdiv .teco-register-popup-input-group input[type="email"],
	div#addjobalertdiv .teco-register-popup-input-group span {
		flex: 1;
		border: none;
		outline: none;
		font-family: Poppins, sans-serif;
		font-size: 16px;
		color: var(--color-secondary-500);
	}

	div#addjobalertdiv .teco-register-popup-input-group input[type="email"] {
		background: transparent;
	}

		div#addjobalertdiv .teco-register-popup-input-group input[type="email"]::placeholder {
			color: var(--color-secondary-400);
		}

div#addjobalertdiv .job-alert-email-input-group {
	flex: 1;
	padding: 0px 0px 0px 0px !important;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.5rem;
	color: #1f2937;
	background: #fff;
	text-transform: none;
	width: 100%;
	box-sizing: border-box !important;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 16px !important;
}

	div#addjobalertdiv .job-alert-email-input-group i.email-icon {
		width: 24px;
		height: 24px;
		flex-shrink: 0;
	}

	div#addjobalertdiv .job-alert-email-input-group input[type="email"],
	div#addjobalertdiv .job-alert-email-input-group span {
		flex: 1;
		border: none;
		outline: none;
		font-family: Poppins, sans-serif;
		font-size: 0.95rem;
		color: #1f2937;
		background: transparent;
	}

		div#addjobalertdiv .job-alert-email-input-group input[type="email"]::placeholder {
			color: #9ca3af;
		}

.mobile-filters-heading {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 95%;
	margin-bottom: 21px;
}

	.mobile-filters-heading span.exit {
		color: var(--color-error-400);
		font-family: Poppins;
		font-size: 16px;
		font-style: normal;
		font-weight: 500;
		line-height: normal;
	}

	.mobile-filters-heading span.title {
		color: #000;
		text-align: center;
		font-family: Poppins;
		font-size: 16px;
		font-style: normal;
		font-weight: 500;
		line-height: normal;
	}

div#JobSearchRefinementsMobile div.module.refine-search.microsites,
div.refine-option-toggle.mobile-refinements-wrap {
	display: none;
}

div.mobile-filters-heading {
	display: none;
}

/* ============================================
   INLINE SORT PANEL (mobile)
   ============================================ */
.mobile-sort-inline {
	background: #fff;
	border: 1px solid #E5E7EB;
	border-radius: 12px;
	margin-bottom: 12px;
	overflow: hidden;
}

.mobile-sort-inline__header {
	padding: 10px 14px;
	font-family: 'Poppins', sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: #6B7280;
	display: flex;
	align-items: center;
	gap: 6px;
	border-bottom: 1px solid #F3F4F6;
}

	.mobile-sort-inline__header i {
		font-size: 13px;
		color: #6B7280;
	}

.mobile-sort-inline__options {
	display: flex;
	flex-direction: column;
}

.mobile-sort-inline__option {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 16px;
	background: transparent;
	border: none;
	border-bottom: 1px solid #F3F4F6;
	cursor: pointer;
	transition: background 0.15s;
	width: 100%;
	text-align: left;
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: #374151;
}

	.mobile-sort-inline__option:last-child {
		border-bottom: none;
	}

	.mobile-sort-inline__option:hover {
		background: #F9FAFB;
	}

	.mobile-sort-inline__option.is-active {
		background: #EEF1FA;
		color: var(--color-primary-400, #48CA1E);
		font-weight: 600;
	}

.mobile-sort-inline__check {
	display: none;
	font-size: 13px;
	color: var(--color-primary-400, #48CA1E);
}

.mobile-sort-inline__option.is-active .mobile-sort-inline__check {
	display: inline-block;
}

/* Active state for sort/filter buttons */
.mobile-sort-btn.active,
.mobile-filter-btn.active {
	background: #EEF1FA;
	border-radius: 50%;
}

/* ============================================
   INLINE FILTER PANEL (mobile)
   ============================================ */
@media (max-width: 766px) {
	#JobSearchRefinementsMobile {
		background: #fff;
		border: 1px solid #E5E7EB;
		border-radius: 12px;
		padding: 4px 0;
		margin-bottom: 16px;
		box-sizing: border-box;
	}

		#JobSearchRefinementsMobile .module.refine-search.microsites {
			display: block !important;
			background: transparent;
			border: none;
			box-shadow: none;
			padding: 0;
		}

		#JobSearchRefinementsMobile .microsite-mobile {
			display: block;
		}

		#JobSearchRefinementsMobile .mobile-refinements-wrap {
			display: block !important;
			padding: 8px 4px;
		}

		#JobSearchRefinementsMobile .borrar-filtros {
			display: inline-flex;
			align-items: center;
			gap: 4px;
			padding: 6px 12px;
			font-family: 'Poppins', sans-serif;
			font-size: 12px;
			font-weight: 500;
			color: #EF4444;
			text-decoration: none;
			border: 1px solid #FECACA;
			border-radius: 20px;
			background: #FEF2F2;
			transition: background 0.15s, border-color 0.15s;
			margin: 8px 10px 4px;
			float: none;
		}

			#JobSearchRefinementsMobile .borrar-filtros:hover {
				background: #FEE2E2;
				border-color: #FCA5A5;
			}

		#JobSearchRefinementsMobile h4,
		#JobSearchRefinementsMobile .mobile-ref-heading {
			font-family: 'Poppins', sans-serif;
			font-size: 13px;
			font-weight: 600;
			color: #374151;
			padding: 12px 14px 8px;
			margin: 0;
			border-bottom: 1px solid #E5E7EB;
			text-transform: uppercase;
			letter-spacing: 0.4px;
			background: #F9FAFB;
		}

		#JobSearchRefinementsMobile ul {
			list-style: none;
			padding: 0;
			margin: 0;
		}

			#JobSearchRefinementsMobile ul li {
				padding: 0;
				margin: 0;
			}

				#JobSearchRefinementsMobile ul li a.job-title {
					display: flex;
					align-items: center;
					padding: 11px 14px;
					font-family: 'Poppins', sans-serif;
					font-size: 14px;
					color: #374151;
					text-decoration: none;
					border-bottom: 1px solid #F3F4F6;
					transition: background 0.15s;
				}

				#JobSearchRefinementsMobile ul li:last-child a.job-title {
					border-bottom: none;
				}

				#JobSearchRefinementsMobile ul li a.job-title:hover {
					background: #EEF1FA;
				}

				#JobSearchRefinementsMobile ul li.active a.job-title {
					color: #1F242E;
					font-weight: 500;
				}

				#JobSearchRefinementsMobile ul li span {
					margin-left: auto;
				}

					#JobSearchRefinementsMobile ul li span a {
						color: #EF4444;
						padding: 4px 6px;
						font-size: 13px;
						border-radius: 4px;
						transition: background 0.15s;
					}

						#JobSearchRefinementsMobile ul li span a:hover {
							background: #FEE2E2;
						}

		/* Original "Show more" from refinements partial - hide completely */
		#JobSearchRefinementsMobile .btn-ref-show {
			display: none !important;
		}

	/* New JS "show more" button */
	.mobile-filter-show-more {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 8px 14px;
		font-family: 'Poppins', sans-serif;
		font-size: 13px;
		font-weight: 500;
		color: var(--color-primary-400, #48CA1E);
		cursor: pointer;
		background: none;
		border: none;
		transition: background 0.15s;
		border-radius: 8px;
		margin: 2px 6px 8px;
	}

		.mobile-filter-show-more:hover {
			background: #F0FFF4;
		}

		.mobile-filter-show-more i {
			font-size: 11px;
		}

	/* Hide legacy toggles on mobile when using new buttons */
	.mobile-botones-wrap {
		display: none !important;
	}
}

/* Hide inline sort & filter on desktop */
@media (min-width: 767px) {
	.mobile-sort-inline {
		display: none !important;
	}

	#JobSearchRefinementsMobile {
		display: none !important;
	}
}

div.email-container-job-alert {
	display: flex;
	height: var(--Scale-500);
	padding: 20px 16px;
	align-items: center;
	gap: 12px;
	align-self: stretch;
	border-radius: 10px;
	background: var(--color-neutral-0);
}

.email-icon {
	position: initial;
	transform: none;
}

input#Email-inline {
	color: var(--color-secondary-500);
	font-size: var(--Scale-400);
	font-weight: 400;
	border: none;
	width: 100%;
	background-color: var(--color-neutral-0);
	padding: 12px 16px;
	border-radius: 8px;
}

	input#Email-inline:-webkit-autofill,
	input#Email-inline:-webkit-autofill:hover,
	input#Email-inline:-webkit-autofill:focus {
		-webkit-box-shadow: 0 0 0px 1000px var(--color-neutral-0) inset;
		box-shadow: 0 0 0px 1000px var(--color-neutral-0) inset;
		border: none;
		outline: none;
		font-size: var(--Scale-400);
		line-height: 1.4;
	}

	input#Email-inline::placeholder {
		color: var(--color-secondary-400);
	}

span.filter-icon {
	display: none;
}

span.no-filters-selected-message {
	color: var(--color-neutral-0);
	display: inline-block;
	width: 100%;
	text-align: center;
}

/* SHARE JOB */
div.share-button--content {
	flex-direction: column;
}

i.share-button--icon {
	font-size: var(--Scale-400);
}

i.share-button--icon {
	width: 28px;
	height: 28px;
}

a.share-button span {
	display: flex;
}

div.share-buttons {
	width: auto;
	min-width: 280px;
}

@media (max-width: 480px) {
	.share-popup.is-visible {
		position: fixed !important;
		left: 50% !important;
		top: 50% !important;
		transform: translate(-50%, -50%) !important;
		width: calc(100vw - 48px);
		max-width: 320px;
		min-width: 0;
	}

	div.share-buttons {
		min-width: 0;
	}
}

/* MOBILE AND SMALL DEVICES - HIDE FILTERS AND ALERTS */
@media (max-width: 770px) {
	.job-card__footer {
		padding-bottom: 20px;
	}
}

@media (max-width: 670px) {
	.job-card__footer {
		display: flex;
		justify-content: flex-end;
	}

		.job-card__footer .btn-see-offer {
			width: auto;
		}

	div.search-result-container div.job-card {
		height: auto;
	}

	.job-card__content-info span.sub-subtitle {
		padding: 5px 0px;
	}

	.filter-container {
		display: none;
	}

	div#JobSearchRefinements {
		display: none;
	}

	div#addJobAlertContainer {
		display: none;
	}

	div.search-content {
		grid-template-columns: 1fr;
		grid-template-areas: "results";
	}

	div.search-result-container {
		width: 100%;
		justify-content: center;
	}
}

@media (min-width: 1000px) {
	div.container.main-content-search-result {
		margin-top: 40px;
	}
}

/* ============================================
   MOBILE JOB CARD COMPONENT (Exclusive for mobile)
   ============================================ */

.job-card-mobile {
	display: none;
	flex-direction: column;
	gap: 0;
	padding: 0px 12px 12px 12px;
	border-radius: 10px;
	background: white;
	border: 1px solid #E5E7EB;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	box-sizing: border-box;
}

/* Fila 1: Badge y botones */
.job-card-mobile__row-1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
	padding-bottom: 12px;
}

.job-card-mobile__new-label {
	background: var(--color-info-400);
	color: var(--color-primary-50);
	padding: 6px 16px;
	border-radius: 0 0 12px 12px;
	font-family: Poppins;
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
	display: flex;
	align-items: center;
	justify-content: center;
}

.job-card-mobile__actions {
	display: flex;
	gap: 8px;
	align-items: center;
	position: relative;
}

.job-card-mobile__action-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	background-color: var(--color-secondary-800);
	border: none;
	border-radius: 0 0 12px 12px;
	cursor: pointer;
	transition: background-color 0.2s ease;
	flex-shrink: 0;
	padding: 0;
}

	.job-card-mobile__action-btn:hover {
		background-color: var(--color-secondary-700);
	}

.job-card-mobile__action-favorite {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 22 22" fill="none"><path d="M7.90414 4.15838C9.17079 1.88613 9.80411 0.75 10.751 0.75C11.6978 0.75 12.3312 1.88612 13.5978 4.15837L13.9255 4.74623C14.2855 5.39193 14.4654 5.71479 14.746 5.92781C15.0266 6.14083 15.3761 6.2199 16.0751 6.37805L16.7114 6.52203C19.1711 7.07856 20.401 7.35682 20.6936 8.29773C20.9862 9.23864 20.1477 10.2191 18.4709 12.1799L18.0371 12.6872C17.5605 13.2444 17.3223 13.523 17.2151 13.8677C17.1079 14.2124 17.144 14.5841 17.216 15.3276L17.2816 16.0044C17.5351 18.6206 17.6619 19.9287 16.8958 20.5102C16.1298 21.0917 14.9783 20.5615 12.6753 19.5012L12.0795 19.2268C11.4251 18.9255 11.0978 18.7748 10.751 18.7748C10.4041 18.7748 10.0769 18.9255 9.42246 19.2268L8.82665 19.5012C6.52365 20.5615 5.37215 21.0917 4.60612 20.5102C3.8401 19.9287 3.96686 18.6206 4.22037 16.0044L4.28596 15.3276C4.358 14.5841 4.39402 14.2124 4.28684 13.8677C4.17966 13.523 3.9414 13.2444 3.4649 12.6872L3.03107 12.1799C1.35423 10.2191 0.515801 9.23864 0.808398 8.29773C1.10099 7.35682 2.33083 7.07856 4.79051 6.52203L5.42686 6.37805C6.12583 6.2199 6.47531 6.14083 6.75592 5.92781C7.03653 5.71479 7.2165 5.39194 7.57644 4.74623L7.90414 4.15838Z" stroke="%23FFFFFF" stroke-width="1.5"/></svg>') !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 20px 20px !important;
}

	.job-card-mobile__action-favorite.is-saved {
		background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 22 22" fill="none"><path d="M7.90414 4.15838C9.17079 1.88613 9.80411 0.75 10.751 0.75C11.6978 0.75 12.3312 1.88612 13.5978 4.15837L13.9255 4.74623C14.2855 5.39193 14.4654 5.71479 14.746 5.92781C15.0266 6.14083 15.3761 6.2199 16.0751 6.37805L16.7114 6.52203C19.1711 7.07856 20.401 7.35682 20.6936 8.29773C20.9862 9.23864 20.1477 10.2191 18.4709 12.1799L18.0371 12.6872C17.5605 13.2444 17.3223 13.523 17.2151 13.8677C17.1079 14.2124 17.144 14.5841 17.216 15.3276L17.2816 16.0044C17.5351 18.6206 17.6619 19.9287 16.8958 20.5102C16.1298 21.0917 14.9783 20.5615 12.6753 19.5012L12.0795 19.2268C11.4251 18.9255 11.0978 18.7748 10.751 18.7748C10.4041 18.7748 10.0769 18.9255 9.42246 19.2268L8.82665 19.5012C6.52365 20.5615 5.37215 21.0917 4.60612 20.5102C3.8401 19.9287 3.96686 18.6206 4.22037 16.0044L4.28596 15.3276C4.358 14.5841 4.39402 14.2124 4.28684 13.8677C4.17966 13.523 3.9414 13.2444 3.4649 12.6872L3.03107 12.1799C1.35423 10.2191 0.515801 9.23864 0.808398 8.29773C1.10099 7.35682 2.33083 7.07856 4.79051 6.52203L5.42686 6.37805C6.12583 6.2199 6.47531 6.14083 6.75592 5.92781C7.03653 5.71479 7.2165 5.39194 7.57644 4.74623L7.90414 4.15838Z" fill="%2361e437" stroke="%2361e437" stroke-width="1.5"/></svg>') !important;
		background-position: center !important;
		background-repeat: no-repeat !important;
		background-size: 20px 20px !important;
	}

.job-card-mobile__action-share {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.5 2.25C14.7051 2.25 13.25 3.70507 13.25 5.5C13.25 5.69591 13.2673 5.88776 13.3006 6.07412L8.56991 9.38558C8.54587 9.4024 8.52312 9.42038 8.50168 9.43939C7.94993 9.00747 7.25503 8.75 6.5 8.75C4.70507 8.75 3.25 10.2051 3.25 12C3.25 13.7949 4.70507 15.25 6.5 15.25C7.25503 15.25 7.94993 14.9925 8.50168 14.5606C8.52312 14.5796 8.54587 14.5976 8.56991 14.6144L13.3006 17.9259C13.2673 18.1122 13.25 18.3041 13.25 18.5C13.25 20.2949 14.7051 21.75 16.5 21.75C18.2949 21.75 19.75 20.2949 19.75 18.5C19.75 16.7051 18.2949 15.25 16.5 15.25C15.4472 15.25 14.5113 15.7506 13.9174 16.5267L9.43806 13.3911C9.63809 12.9694 9.75 12.4978 9.75 12C9.75 11.5022 9.63809 11.0306 9.43806 10.6089L13.9174 7.4733C14.5113 8.24942 15.4472 8.75 16.5 8.75C18.2949 8.75 19.75 7.29493 19.75 5.5C19.75 3.70507 18.2949 2.25 16.5 2.25ZM14.75 5.5C14.75 4.5335 15.5335 3.75 16.5 3.75C17.4665 3.75 18.25 4.5335 18.25 5.5C18.25 6.4665 17.4665 7.25 16.5 7.25C15.5335 7.25 14.75 6.4665 14.75 5.5ZM6.5 10.25C5.5335 10.25 4.75 11.0335 4.75 12C4.75 12.9665 5.5335 13.75 6.5 13.75C7.4665 13.75 8.25 12.9665 8.25 12C8.25 11.0335 7.4665 10.25 6.5 10.25ZM16.5 16.75C15.5335 16.75 14.75 17.5335 14.75 18.5C14.75 19.4665 15.5335 20.25 16.5 20.25C17.4665 20.25 18.25 19.4665 18.25 18.5C18.25 17.5335 17.4665 16.75 16.5 16.75Z" fill="%23E8FEE2"/></svg>') !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 20px 20px !important;
}

.job-card-mobile__row-2 {
	display: grid;
	grid-template-columns: 80px 1fr;
	gap: 12px;
	margin-bottom: 12px;
	align-items: flex-start;
	width: 100%;
	box-sizing: border-box;
}

.job-card-mobile__logo-col {
	flex-shrink: 0;
	width: 80px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
}

	.job-card-mobile__logo-col img {
		width: 80px;
		height: 80px;
		border-radius: 8px;
		background-color: var(--color-secondary-100);
		object-fit: cover;
		display: block;
	}

.job-card-mobile__info-col {
	display: flex;
	flex-direction: column;
	gap: 8px;
	justify-content: flex-start;
}

.job-card-mobile__company-name {
	color: var(--color-secondary-700);
	font-family: Poppins;
	font-size: 14px;
	font-weight: 500;
	line-height: 16px;
	display: block;
	word-break: break-word;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.job-card-mobile__location-date {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.job-card-mobile__location,
.job-card-mobile__expiry {
	display: flex;
	align-items: center;
	gap: 4px;
	color: var(--color-secondary-600);
	font-family: Poppins;
	font-size: 12px;
	font-weight: 400;
	line-height: 16px;
	word-break: break-word;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

	.job-card-mobile__location i,
	.job-card-mobile__expiry i {
		font-size: 12px;
		color: var(--color-secondary-600);
	}

/* Fila 3: Título del trabajo */
.job-card-mobile__row-3 {
	margin-bottom: 12px;
}

.job-card-mobile__title {
	margin: 0;
	padding: 0;
	color: var(--color-secondary-800);
	font-family: Poppins;
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}

	.job-card-mobile__title a,
	.job-card-mobile__title a:visited {
		color: var(--color-secondary-800);
		text-decoration: none;
	}

		.job-card-mobile__title a:hover {
			color: var(--color-primary-400);
		}

/* Fila 4: Botón Ver Oferta */
.job-card-mobile__row-4 {
	width: 100%;
	box-sizing: border-box;
}

.job-card-mobile__btn-see-offer {
	display: block;
	width: 100%;
	padding: 12px 16px;
	background-color: var(--color-primary-400);
	color: var(--color-secondary-800);
	text-align: center;
	text-decoration: none;
	border-radius: 10px;
	font-family: Poppins;
	font-size: 16px;
	font-weight: 600;
	line-height: 16px;
	transition: background-color 0.2s ease;
	cursor: pointer;
	border: none;
	box-sizing: border-box;
}

	.job-card-mobile__btn-see-offer:hover {
		background-color: var(--color-primary-600);
	}

@media (max-width: 670px) {
	div.search-result-container div.job-card {
		display: none !important;
	}

	.job-card-mobile {
		display: flex !important;
	}
}

@media (max-width: 767px) {
	#global-header,
	#global-nav {
		z-index: 100201 !important;
		position: relative;
	}

	.teco-login-popup-overlay,
	.teco-register-popup-overlay {
		z-index: 100302 !important;
	}

	ul#pagination {
		margin: 20px auto !important;
		padding: 0 !important;
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		gap: 10px !important;
		flex-wrap: wrap;
		width: 100%;
		box-sizing: border-box;
	}

		ul#pagination li {
			display: flex !important;
			padding: 8px 14px !important;
			flex-direction: column !important;
			justify-content: center !important;
			align-items: center !important;
			border-radius: 8px !important;
			list-style: none !important;
		}

			ul#pagination li:has(a.active) {
				background: var(--color-secondary-100) !important;
				color: var(--color-secondary-800) !important;
				font-family: Poppins !important;
				font-size: 13px !important;
				font-weight: 700 !important;
				line-height: normal !important;
				text-transform: uppercase !important;
			}

			ul#pagination li a,
			ul#pagination li a:visited {
				color: var(--color-secondary-700) !important;
				font-family: Poppins !important;
				font-size: 13px !important;
				font-weight: 700 !important;
				line-height: normal !important;
				text-transform: uppercase !important;
				text-decoration: none !important;
				padding: 6px 10px !important;
			}

				ul#pagination li a.next-page,
				ul#pagination li a.previous-page {
					width: 36px !important;
					height: 36px !important;
					background-color: var(--color-secondary-700) !important;
					border-radius: 100% !important;
					display: flex !important;
					align-items: center !important;
					justify-content: center !important;
					color: var(--color-primary-400) !important;
					padding: 0 !important;
					font-size: 16px !important;
				}

				ul#pagination li a.alt {
					color: var(--color-secondary-500) !important;
					background: none !important;
					cursor: default !important;
					font-size: 11px !important;
					padding: 4px 6px !important;
				}

					ul#pagination li a.alt.no-spacing {
						margin: 0 !important;
						padding: 0 !important;
					}

	/* Mobile Pagination Optimization */
	@media (max-width: 768px) {
		ul#pagination {
			margin: 16px auto !important;
			gap: 0px !important;
		}

			ul#pagination li {
				padding: 6px 10px !important;
			}

				ul#pagination li a,
				ul#pagination li a:visited {
					font-size: 11px !important;
					padding: 4px 8px !important;
				}

					ul#pagination li a.next-page,
					ul#pagination li a.previous-page {
						width: 32px !important;
						height: 32px !important;
						font-size: 14px !important;
					}

					ul#pagination li a.alt {
						font-size: 10px !important;
						padding: 2px 4px !important;
					}
	}
}
