@media (min-width: 320px) {

	#sf-consultant-filters {
		margin-bottom: 0.5em;
		background-color: #eee;
		padding: 20px;
		border-radius: 3px;
	}

	#sf-consultant-filters button {
		margin-right: 0.5em;
		margin-bottom: 0.5em;
		padding: 10px 20px;
		font-size: 16px;
	}

	#sf-consultant-filters button.active {
		background: #66AF32;
		border-color: #66AF32;
		color: #fff;
	}

	#sf-consultant-filters {
		margin-bottom: 1em;
	}

	#sf-country-select {
		padding: 6px;
		font-size: 16px;
	}

	#sf-consultant-grid {
		display: flex;
		flex-wrap: wrap;
		gap: 20px;
		overflow: visible;
		margin-right: -20px;
		clear: both;
	}

	.sf-card {
		/*flex: 1 1 calc(25% - 20px);*/
		flex: 1 0 100%;
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: space-between;
		box-sizing: border-box;
		background: #fff;
		border: 1px solid #ddd;
		border-radius: 3px;
		box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
		padding: 20px;
		position: relative;
		text-align: center;
		transition: box-shadow 0.2s ease-in-out;
		margin: 75px 20px 20px 0;
	}

	.sf-card:hover {
		box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
	}

	.sf-profile-image {
		width: 150px;
		height: 150px;
		border-radius: 50%;
		object-fit: cover;
		margin-top: -95px;
		border: 4px solid #fff;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	}

	.sf-consultant-name {
		font-weight: bold;
		font-size: 18px;
		color: #e60023;
		margin-top: 10px;
		width: 100%;
	}

	.sf-consultant-info {
		display: flex;
		flex-direction: row;
		width: 100%
	}

	.sf-meta {
		font-size: 14px;
		color: #444;
		margin-top: 4px;
		width: 65%;
		text-align: left;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		min-height: 111px;
	}

	.sf-meta .sf-phone {
		font-weight: bold;
		display: block;
		margin-top: 6px;
	}

	.sf-meta .sf-phone span {
		color: #e60023;
	}

	.sf-badge {
		width: 35%;
	}

	.sf-links {
		width: 100%;
		display: flex;
		flex-direction: row;
		flex: 1 0 auto;
		margin-top: 15px;
		min-height: 40px;
	}

	.sf-icons {
		display: flex;
		justify-content: flex-start;
		gap: 10px;
		margin-right: 5px;
		width: calc(100% - 122px);
	}

	.sf-icons a {
		display: flex;
		align-items: center;
		justify-content: center;
		background: #e60023;
		color: #fff;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		font-size: 16px;
		text-decoration: none;
	}

	.sf-icons a:hover {
		background: #c4001d;
		color: #fff;
		text-decoration: none;
	}

	.sf-bio-btn {
		display: flex;
		flex: 1 0;
		justify-content: flex-end;
		align-items: center;
		width: 122px;
	}

	.sf-view-bio-btn {
		display: block;
		background: #e60023;
		color: #fff;
		height: 36px;
		line-height: 34px;
		font-size: 15px;
		padding: 0 15px;
		font-weight: bold;
		margin-top: 0;
		border-radius: 3px;
		text-decoration: none;
		transition: background 0.2s ease-in-out;
	}

	.sf-view-bio-btn:hover {
		background: #c4001d;
		color: #fff;
		text-decoration: none;
	}

	.level-tag {
		display: inline-block;
		margin-bottom: 0.5em;
		padding: 0.3em 0.6em;
		font-size: 0.75em;
		font-weight: 600;
		background: #0073aa;
		color: #fff;
		border-radius: 4px;
	}

	/*! Consultant Profile Form Styles */
	label {
		font-weight: 600;
		font-size: 16px;
		display: block;
		margin-bottom: 0.3rem;
	}

	.form-group {
		margin-bottom: 1.5rem;
	}

	input.form-control,
	select.form-control,
	textarea.form-control {
		width: 100%;
		max-width: 600px;
		padding: 0.5rem;
		font-size: 1rem;
	}

	.alert-success {
		background-color: #d4edda;
		color: #155724;
		border: 1px solid #c3e6cb;
		padding: 1rem;
		margin-bottom: 1.5rem;
		border-radius: 4px;
	}

	.alert-danger {
		background-color: #f8d7da;
		color: #721c24;
		border: 1px solid #f5c6cb;
		padding: 1rem;
		margin-bottom: 1.5rem;
		border-radius: 4px;
	}

	.is-invalid {
		border-color: #dc3545 !important;
		background-color: #fff5f5;
	}

	.text-danger {
		color: #dc3545 !important;
	}

	.client-error {
		margin-top: 0.25rem;
	}


	/*! Consultant Bio Page */
	.sf-consultant-bio-page .sf-bio-header {
		display: flex;
		flex-direction: row;
		width: 100%;
		gap: 30px;
		flex-wrap: wrap;
		align-items: flex-start;
	}

	.sf-consultant-bio-page .sf-bio-image {
		width: 100%;
		border-radius: 10px;
	}

	.sf-consultant-bio-page .sf-bio-header-text {
		width: 100%;
	}

	.sf-consultant-bio-page .sf-bio-header-text h2 {
		margin-top: 0;
		font-size: 2rem;
	}

	.sf-consultant-bio-page .sf-bio-contact ul {
		list-style: none;
		padding: 0;
	}

	.sf-consultant-bio-page .sf-bio-contact li {
		margin-bottom: 0.5rem;
	}

	.sf-consultant-bio-page .sf-bio-content {
		margin-top: 2rem;
		line-height: 1.6;
		display: flex;
		flex-direction: row;
		width: 100%;
		gap: 30px;
		flex-wrap: wrap;
		align-items: flex-start;
	}

	.sf-consultant-bio-page .sf-bio-logo {
		margin-top: 1.5rem;
		text-align: center;
		width: 100%;
	}

	.sf-consultant-bio-page .sf-bio {
		width: 100%;
	}

	.sf-consultant-bio-page .sf-badge {
		width: 200px;
	}




}

@media (min-width: 600px) {

	.sf-card {
		flex: 1 1 calc(50% - 20px);
		width: calc(50% - 20px);
	}

	.sf-consultant-bio-page .sf-bio-image,
	.sf-consultant-bio-page .sf-bio-logo {
		width: 30%;
	}

	.sf-consultant-bio-page .sf-bio-header-text,
	.sf-consultant-bio-page .sf-bio {
		width: calc(70% - 30px);
	}

}

@media (min-width: 992px) {

	.sf-card {
		flex: 1 1 calc(33.33333% - 20px);
		width: calc(33.33333% - 20px);
	}

}

@media (min-width: 1280px) {

	.sf-card {
		flex: 1 1 calc(25% - 20px);
		width: calc(25% - 20px);
	}

}