/* ================================================
Single Member (member CPT)
Path: assets/css/single-member.css
================================================ */
:is(body, .is-preview) {
	.single-member {
		padding-top: 36px;
		padding-bottom: var(--section-padding-bottom, 100px);
	}
	.single-member__container {
		display: flex;
		flex-direction: column;
		gap: 36px;
	}
	.single-member__header {
		display: flex;
		flex-direction: column;
		gap: var(--gap-md);
	}
	.single-member__breadcrumb {
		display: flex;
		align-items: center;
		padding-bottom: var(--gap-md);
	}
	.single-member__back-link {
		display: inline-flex;
		align-items: center;
		gap: 7px;
		color: var(--color-earth, #584547);
		font-family: var(--font-primary, 'Brandon Grotesque', sans-serif);
		font-weight: var(--font-weight-medium);
		font-size: var(--font-size-sm);
		text-decoration: none;
	}
	.single-member__back-link:hover {
		text-decoration: underline;
	}
	.single-member__tags {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
		list-style: none;
		padding: 0;
		margin: 0;
	}
	.single-member__tag {
		background: var(--color-white);
		color: var(--color-earth, #584547);
		font-family: var(--font-primary);
		font-weight: var(--font-weight-medium, 450);
		font-size: var(--font-size-sm);
		padding: 4px 12px;
		border-radius: 14px;
		line-height: normal;
	}
	.single-member__title {
		font-family: var(--font-display, 'Copernicus', serif);
		font-weight: 500;
		font-size: 64px;
		line-height: 70px;
		letter-spacing: 0.03em;
		text-transform: none;
		color: var(--color-earth, #584547);
		margin: 0;
	}
	.single-member__meta {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 15px;
		color: var(--color-earth, #584547);
		font-family: var(--font-primary);
		font-size: 20px;
	}
	.single-member__meta-item {
		display: inline-flex;
		align-items: center;
		gap: 15px;
		font-size: var(--font-size-lg);
		font-weight: var(--font-weight-semibold, 500);
		line-height: normal;
		text-decoration: none;
	}
	.single-member__meta-miles {
		display: none;
	}
	.single-member__meta-miles.location-ready {
		display: inline-flex;
	}
	.single-member__meta-divider--miles {
		display: none !important;
	}
	.single-member__meta-divider--miles:has(+ .single-member__meta-miles.location-ready) {
		display: inline-block !important;
	}
	.single-member__meta-miles a {
		text-decoration-line: underline;
		text-decoration-style: solid;
		text-decoration-skip-ink: auto;
		text-decoration-thickness: 10%; /* 2px */
		text-underline-offset: 15%; /* 3px */
		text-underline-position: from-font;
	}
	.single-member__meta-miles a:hover {
		opacity: 0.7;
	}
	.single-member__meta-divider {
		width: 2px;
		height: 29px;
		background: #70BF4A;
		display: inline-block;
	}
	.single-member__meta-sep {
		color: #BBBCBC;
	}
	.single-member__socials {
		display: inline-flex;
		align-items: center;
		gap: 15px;
	}
	.single-member__social {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		color: var(--color-earth, #584547);
	}
	.single-member__social-icon {
		display: inline-flex;
		line-height: 0;
	}
	.single-member__social-label {
		font-family: var(--font-primary, 'Brandon Grotesque', sans-serif);
		font-size: 14px;
		font-weight: var(--font-weight-medium, 450);
		line-height: normal;
		letter-spacing: 1.4px;
		text-transform: uppercase;
		text-decoration-line: underline;
		text-decoration-style: solid;
		text-decoration-skip-ink: auto;
		text-decoration-thickness: 10%;
		text-underline-offset: 15%;
		text-underline-position: from-font;
	}
	.single-member__social:hover {
		opacity: 0.7;
	}
	.single-member__actions {
		display: flex;
		flex-wrap: wrap;
		gap: 22px;
		padding-bottom: var(--gap-lg);
	}
	.single-member__gallery {
		position: relative;
	}
	.single-member__gallery-track {
		display: flex;
		gap: var(--gap-2xl);
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		scrollbar-width: none;
		-ms-overflow-style: none;
	}
	.single-member__gallery-track::-webkit-scrollbar {
		display: none;
	}
	.single-member__gallery-slide {
		flex: 0 0 calc((100% - (-30px)) / 2);
		scroll-snap-align: start;
	}
	.single-member__gallery-img {
		width: 100%;
		height: 300px;
		object-fit: cover;
	}
	.single-member__gallery-video {
		position: relative;
		display: block;
		height: 300px;
		overflow: hidden;
	}
	.single-member__gallery-video .single-member__gallery-img {
		width: 100%;
		height: 100%;
		aspect-ratio: auto;
		object-position: top;
	}
	.single-member__gallery-video iframe {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		border: 0;
	}
	.single-member__gallery-play {
		position: absolute;
		inset: 0;
		margin: auto;
		width: 64px;
		height: 64px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: rgba(255, 255, 255, 0.92);
		color: var(--color-denim, #3c4559);
		border-radius: 50%;
		padding-left: 4px;
		box-shadow: 0 4px 14px rgba(0, 0, 0, 0.2);
	}
	.single-member__gallery-arrow {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		filter: drop-shadow(-4.141px 4.141px 4.141px rgba(0, 0, 0, 0.25));
		width: 48px;
		height: 48px;
		padding: 0;
		border: 0;
		border-radius: 50%;
		background: var(--color-white);
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		z-index: 2;
		transition: background-color 0.2s, color 0.2s, opacity 0.2s;
	}
	.single-member__gallery-arrow:hover {
		background: var(--color-denim, #3c4559);
		color: #fff;
	}
	.single-member__gallery-arrow[hidden] {
		display: none;
	}
	.single-member__gallery-arrow:disabled {
		opacity: 0;
		pointer-events: none;
	}
	.single-member__gallery-arrow--prev {
		left: 30px;
	}
	.single-member__gallery-arrow--next {
		right: 30px;
	}
	.single-member__gallery-arrow--prev svg {
		transform: scaleX(-1);
	}
	.single-member__body {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 480px;
		gap: var(--gap-2xl);
		align-items: start;
	}
	.single-member__body-main {
		display: flex;
		flex-direction: column;
		gap: var(--gap-2xl);
	}
	.single-member__body-side {
		display: flex;
		flex-direction: column;
		gap: var(--gap-3xl);
	}
	.single-member__farmer {
		border-radius: 12px;
		overflow: hidden;
	}
	.single-member__farmer .farmer-card {
		height:350px;
		max-width: 298px;
	}
	.single-member__farmer .farmer-card:hover .farmer-card__overlay {
		background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 35%, #DBEFD2 60%);
	}
	.single-member__farmer .farmer-card:hover {
		box-shadow: 0 4px 12px 0 rgba(81, 83, 74, 0.25);
	}
	.single-member__section-title {
		font-family: var(--font-display, 'Copernicus', serif);
		font-size: var(--font-size-xl);
		font-weight: var(--font-weight-extrabold, 700);
		line-height: 36px;
		letter-spacing: 0.18px;
		color: var(--color-recipe-body);
		margin: 0 0 var(--gap-md);
	}
	.single-member__wysiwyg {
		font-size: 18px;
		line-height: normal;
		letter-spacing: 0.135px;
		color: #474747;
	}
	.single-member__wysiwyg p {
		margin: 0 0 var(--gap-md);
	}
	.single-member__wysiwyg p:last-child {
		margin-bottom: 0;
	}
	.single-member__badges {
		list-style: none;
		padding: 0;
		margin: var(--gap-xs) 0 0;
		display: flex;
		flex-wrap: wrap;
		gap: 10px 30px;
	}
	.single-member__badge {
		display: flex;
		gap: var(--gap-xs);
	}
	.single-member__badge-icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 15px;
	}
	.single-member__product-groups {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		grid-auto-flow: row dense;
		gap: 24px 40px;
	}
	.single-member__product-group {
		min-width: 0;
		margin: 0;
	}
	.single-member__product-group--wide {
		grid-column: span 2;
	}
	.single-member__product-group--xwide {
		grid-column: 1 / -1;
	}
	.single-member__product-group-title {
		display: inline-block;
		font-family: var(--font-secondary, 'Brandon Text', sans-serif);
		font-size: 14px;
		font-weight: var(--font-weight-medium, 450);
		color: var(--color-earth, #584547);
		padding: 4px 12px;
		border-radius: 28px;
		line-height: normal;
		letter-spacing: 0.105px;
		text-align: center;
		margin: 0 0 var(--gap-md);
	}
	.single-member__product-list {
		list-style: none;
		padding: 0 0 0 28px;
		margin: 0;
		column-gap: 40px;
	}
	.single-member__product-group--wide .single-member__product-list {
		columns: 2;
	}
	.single-member__product-group--xwide .single-member__product-list {
		columns: 4;
	}
	.single-member__product-item {
		position: relative;
		break-inside: avoid;
	}
	.single-member__bottom {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: var(--gap-2xl);
	}
	.single-member__methods-list {
		list-style: none;
		padding: 0 0 0 28px;
		margin: 0;
	}
	.single-member__method-item {
		position: relative;
		break-inside: avoid;
	}
	.single-member__product-item,
	.single-member__method-item,
	.single-member__wysiwyg p,
	.single-member__badge {
		color: #474747;
		font-family: var(--font-secondary, 'Brandon Text', sans-serif);
		font-size: var(--font-size-md, 18px);
		font-weight: var(--font-weight-light, 390);
		line-height: normal;
		letter-spacing: 0.135px;
	}
	.single-member__badge {letter-spacing:normal;} 
	.single-member__product-item::before,
	.single-member__method-item::before {
		content: '';
		width: 4px;
		height: 4px;
		position: absolute;
		left: -16px;
		top: 11px;
		border-radius: 100%;
		background-color: #524E4B;
	}
	.single-member__product-toggle {
		display: none;
	}
	.single-member__nearby {
		position: relative;
		border-radius: 12px;
		padding: 30px 30px 40px;
	}
	.single-member__nearby::before {
		content: "";
		position: absolute;
		inset: 0;
		z-index: 0;
		border-radius: inherit;
		mix-blend-mode: multiply;
		background: #C8D0C5;
	}
	.single-member__nearby > * {
		position: relative;
		z-index: 1;
	}
	.single-member__nearby-title {
		font-family: var(--font-primary, 'Brandon Grotesque', sans-serif);
		font-weight: var(--font-weight-semibold, 500);
		font-size: var(--font-size-xl);
		line-height: normal;
		text-transform: uppercase;
		color: var(--color-denim, #3c4559);
		margin: 0 0 var(--gap-lg);
	}
	.single-member__nearby-list {
		list-style: none;
		padding: 0;
		margin: 0;
		display: flex;
		flex-direction: column;
		gap: 24px;
	}
	.single-member__nearby-card {
		background: #fff;
		border-radius: 8px;
		box-shadow: 0 0 12px 0 rgba(66, 66, 66, 0.15);
		overflow: hidden;
		padding: 20px;
	}
	.single-member__nearby-head {
		display: flex;
		gap: 14px;
	}
	.single-member__nearby-thumb {
		flex: 0 0 100px;
		width: 100px;
		height: 100px;
		border-radius: 8px;
		overflow: hidden;
		display: block;
	}
	.single-member__nearby-img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}
	.single-member__nearby-body {
		display: flex;
		flex-direction: column;
		gap: 4px;
		min-width: 0;
		flex: 1;
	}
	.single-member__nearby-name {
		font-family: var(--font-primary, 'Brandon Grotesque', sans-serif);
		font-weight: var(--font-weight-semibold, 500);
		font-size: var(--font-size-lg);
		line-height: 28px;
		letter-spacing: 0.15px;
		color: var(--color-earth, #584547);
		text-decoration: none;
	}
	.single-member__nearby-name:hover {
		text-decoration: underline;
	}
	.single-member__nearby-meta {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 8px;
		margin: 0;
		font-size: 14px;
	}
	.single-member__nearby-city {
		color: #7D7D7D;
		font-family: var(--font-secondary, 'Brandon Text', sans-serif);
		font-size: var(--font-size-sm);
		font-weight: 420;
		line-height: normal;
		letter-spacing: 0.12px;
	}
	.single-member__nearby-sep {
		color: #BBBCBC;
        line-height: 18px;
	}
	.single-member__nearby-miles {
		color: var(--color-kale, #244517);
		font-family: var(--font-secondary, 'Brandon Text', sans-serif);
		font-size: var(--font-size-sm);
		font-weight: 420;
		line-height: normal;
		letter-spacing: 0.12px;
	}
	.single-member__nearby-toggle {
		flex: 0 0 auto;
		align-self: flex-end;
		width: 30px;
		height: 30px;
		padding: 0;
		border: 0;
		border-radius: 8px;
		background: #FAF0E7;
		color: var(--color-earth, #584547);
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		transition: background-color 0.2s, color 0.2s;
	}
	.single-member__nearby-toggle:hover {
		background: #F4B335;
	}
	.single-member__nearby-toggle:hover svg path {
		stroke: currentColor;
	}
	.single-member__nearby-toggle-icon {
		display: flex;
		align-items: center;
		justify-content: center;
		line-height: 0;
	}
	.single-member__nearby-toggle-icon--minus {
		display: none;
	}
	.single-member__nearby-card.is-open .single-member__nearby-toggle-icon--plus {
		display: none;
	}
	.single-member__nearby-card.is-open .single-member__nearby-toggle-icon--minus {
		display: flex;
	}
	.single-member__nearby-panel {
		display: grid;
		grid-template-rows: 0fr;
		transition: grid-template-rows 350ms ease;
	}
	.single-member__nearby-card.is-open .single-member__nearby-panel {
		grid-template-rows: 1fr;
	}
	.single-member__nearby-panel-inner {
		min-height: 0;
		overflow: hidden;
		display: flex;
		flex-direction: column;
		gap: var(--gap-md);
	}
	.single-member__nearby-panel-inner > :first-child {
		margin-top: var(--gap-md);
	}
	.single-member__nearby-pills {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}
	.single-member__nearby-preview {
		display: grid;
		grid-template-rows: 1fr;
		opacity: 1;
		transition: grid-template-rows 250ms ease, opacity 200ms ease;
	}
	.single-member__nearby-card.is-open .single-member__nearby-preview {
		grid-template-rows: 0fr;
		opacity: 0;
	}
	.single-member__nearby-preview-inner {
		min-height: 0;
		overflow: hidden;
	}
	.single-member__nearby-preview-pills {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		padding-top: 10px;
	}
	.single-member__nearby-pill {
		font-family: var(--font-secondary, 'Brandon Text', sans-serif);
		font-size: 14px;
		font-weight: var(--font-weight-medium, 450);
		color: var(--color-earth, #584547);
		padding: 4px 12px;
		border-radius: 28px;
		line-height: normal;
		letter-spacing: 0.105px;
		text-align: center;
	}
	.single-member__nearby-detail {
		display: flex;
		flex-direction: column;
		gap: 4px;
	}
	.single-member__nearby-detail-title {
		display: flex;
		align-items: center;
		gap: 8px;
		margin: 0;
		font-family: var(--font-primary);
		font-weight: var(--font-weight-semibold);
		color: var(--color-earth, #584547);
		font-size: var(--font-size-sm);
		line-height: normal;
	}
	.single-member__nearby-detail-title svg {
		flex-shrink: 0;
	}
	.single-member__nearby-detail-text {
		font-family: var(--font-primary);
		color: var(--color-earth, #584547);
		font-weight: 420;
		line-height: normal;
		font-size: var(--font-size-sm);
	}
	.single-member__nearby-detail-text p {
		margin: 0;
	}
	.single-member__nearby-address-link {
		text-decoration: underline;
		text-underline-position: from-font;
	}
	.single-member__nearby-address-link:hover {
		color: var(--color-grass);
	}
	.single-member__nearby-actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
	.single-member__address-block .single-member__section-title {
		color: var(--color-earth);
		margin: 0;
	}
	.single-member__address-text a {
		font-style: normal;
		color: #474747;
		font-family: var(--font-secondary, 'Brandon Text', sans-serif);
		font-size: var(--font-size-md);
		font-weight: var(--font-weight-light, 390);
		line-height: normal;
		letter-spacing: 0.135px;
		text-decoration-line: underline;
		text-decoration-style: solid;
		text-decoration-skip-ink: none;
		text-underline-position: from-font;
		margin-bottom: var(--gap-md);
	}
	.single-member__address-text a:hover {
		color: var(--color-grass);
	}
	address.single-member__address-text {
		margin: 0 0 var(--gap-lg);
	}
	.single-member__map {
		width: 100%;
		max-width: 376px;
		height: 289px;
		overflow: hidden;
	}
	.single-member__map iframe {
		display: block;
		width: 100%;
		height: 100%;
	}
	@media (max-width: 1200px) {
		.single-member__product-groups {grid-template-columns: repeat(2, minmax(0, 1fr));}
		.single-member__bottom {grid-template-columns: 1fr;}
	}
	@media (max-width: 1024px) {
		.single-member__title {font-size: 48px;line-height: 1.1;}
		.single-member__body {grid-template-columns: minmax(0, 1fr);}
		.single-member__product-group--xwide .single-member__product-list {columns: 2;}
		.single-member__body-main {display: contents;}
		.single-member__body-side {display: contents;}
		.single-member__gallery {order: 1;}
		.single-member__about {order: 2;}
		.single-member__farmer {order: 3;padding: 0 10px 10px;margin-bottom: -10px;}
		.single-member__about, .single-member__section.single-member__products, .single-member__bottom {padding:0 10px;}
		.single-member__products {order: 4;}
		.single-member__bottom {order: 5;}
		.single-member__farmer .farmer-card {height: 284px;max-width: 220px;margin: 0 auto;}
		.single-member__farmer .farmer-card__content {padding: 0 var(--gap-md) 34px;}
		.single-member__nearby {order: 6;max-width: 767px;margin: 0 auto;width: 100%;}
		.single-member__nearby-card {padding: var(--gap-md);}
		.single-member__nearby-thumb {flex: 0 0 79px;width: 79px;height: 80px;}
		.single-member__nearby-head {display: flex;align-items: center;gap: var(--gap-xs);}
		.single-member__nearby-body {display: flex;flex-direction: column;gap: 4px;flex: 1;min-width: 0;}
		.single-member__nearby-preview {margin-top: 0;}
		.single-member__nearby-toggle {flex-shrink: 0;align-self: flex-start;}
		.single-member__nearby-name {font-size: var(--font-size-md);color: #51534A;line-height: normal;letter-spacing: 0.135px;}
		.single-member__gallery {right: -14px;}
		.single-member__gallery-track {gap: var(--gap-md);margin-left: -14px;}
		.single-member__bottom {grid-template-columns: 1fr 1fr;}
		.single-member__nearby-city {font-size: 14px;font-weight: 450;letter-spacing: 0.105px;color: #7C7E77;}
		.single-member__nearby-miles {color: #5B7755;font-size: 14px;font-weight: 450;letter-spacing: 0.105px;}
		.single-member__nearby-toggle {width: 24px;height: 24px;}
		.single-member__nearby-toggle-icon{width: 14px;}
	}
	@media (max-width: 767px) {
		.single-member {padding-bottom:0;}
		.single-member__gallery-slide {flex:0 0 calc((100% - (-159px)) / 2);}
		.single-member__product-item--extra {display: grid;grid-template-rows: 0fr;transition: grid-template-rows 300ms ease;opacity: 0;}
		.single-member__product-item--extra .single-member__product-item-inner {min-height: 0;overflow: hidden;}
		.single-member__product-group--has-more.is-expanded .single-member__product-item--extra {grid-template-rows: 1fr;opacity: 1;}
		.single-member__product-toggle {position:relative;display: inline-block;padding: 0;border: 0;background: none;cursor: pointer;color: #474747;font-family: var(--font-secondary, 'Brandon Text', sans-serif);font-size: 18px;font-weight: 450;line-height: normal;letter-spacing: 0.135px;text-decoration-line: underline;text-decoration-style: solid;text-decoration-skip-ink: none;text-underline-position: from-font;padding-left: 28px;}
		.single-member__product-toggle:before {content: '';width: 4px;height: 4px;position: absolute;left: 12px;top: 11px;border-radius: 100%;background-color: #524E4B;}
		.single-member__nearby {margin: 10px -14px 0;border-radius: 0;padding: 40px 14px 60px;max-width: unset;width: auto;}
	}
	@media (max-width: 640px) {
		.single-member {padding-top:30px;}
		.single-member__breadcrumb {padding-bottom: 20px;order:1;}
		.single-member__tags {padding-bottom: 8px;}
		.single-member__container {gap: 40px;}
		.single-member__title {font-size: 36px;order: 2;line-height: normal;letter-spacing: 1.8px;}
		.single-member__tags {order:3;}
		.single-member__meta {order: 4;}
		.single-member__meta-miles + .single-member__meta-sep {display:none;}
		.single-member__meta-divider {height: var(--gap-md);}
		.single-member__actions {gap: var(--gap-md);padding-bottom: 0;}
		.single-member__action-btn {width: auto;text-align: center;}
		.single-member__product-groups {grid-template-columns: minmax(0, 1fr);}
		.single-member__product-group--wide, .single-member__product-group--xwide {grid-column: auto;}
		.single-member__product-group--wide .single-member__product-list, .single-member__product-group--xwide .single-member__product-list {columns: 1;}
		.single-member__bottom {grid-template-columns: 1fr;}
		.single-member__nearby-actions {grid-template-columns: 1fr;}
		.single-member__body-main, .single-member__body-side {gap: 40px;}
		.single-member__badges {gap: 10px 20px;}
		.single-member__map {height: 251px;}
	}
}
