/* Base spacing */
.flip {
	transform: scaleX(-1);
}

.breeding-archive,
.breeding-single {
	padding: 40px 0;
}

.breeding-header {
	margin-bottom: 20px;
}

.breeding-title {
	margin: 0;
}

/* Filter buttons */
.breeding-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	margin-bottom: 1.5em;
}

.breeding-filter .button:not(.current) {
    background-color: transparent !important;
    color: #0094d2 !important;
}

/* Grids */
.breeding-grid {
	display: grid;
	gap: 20px;
}

.breeding-grid-pigeons {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.breeding-grid-couples {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Shared card base */
.pigeon-card,
.couple-card {
	position: relative;
    padding: 1.5em 1em;
	min-width: 0;
    border: 1px solid #dbdbdb;
    background-color: #fff;
    text-align: center;
}

.pigeon-card-link,
.couple-card-link {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
}

.pigeon-card-media,
.couple-card-media {
	position: relative;
	min-height: 180px;
}

.pigeon-card-image,
.couple-card-image {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.couple-card-media {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.couple-card-media::before {
    content: "✖";
    display: block;
    position: absolute;
    bottom: 25%;
    left: 0;
    right: 0;
    text-align: center;
    font-weight: 700;
    font-size: 150%;
    color: rgb(2, 30, 51);
    opacity: 0.25;
	z-index: 1;
}

.couple-card-headline {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	padding: 0 14px 12px;
}

.pigeon-card-content,
.couple-card-content {
	padding: 14px;
}

.couple-card-content {
	padding-bottom: 0;
}

.pigeon-card-name,
.couple-card-name {
    margin-bottom: 6px;
    font-size: 1.8em;
    line-height: 1.2em;
}

.pigeon-card-ringnumber,
.couple-card-ringnumber {
	margin: 0 0 10px;
}

.pigeon-card-excerpt {
	margin: 0 0 12px;
	font-size: 14px;
	line-height: 1.5;
}

.couple-card-note {
	margin: 12px 0 0;
	padding-top: 10px;
	border-top: 1px solid #efefef;
	font-size: 14px;
}

.couple-card-strains {
	margin: 0;
	padding: 8px 10px;
	border: 1px solid #efefef;
	background: #fafafa;
	font-size: 14px;
	line-height: 1.4;
}

/* Singles */
.pigeon-single,
.couple-single {
	display: grid;
	gap: 48px 64px;
	margin-bottom: 28px;
}

.pigeon-single {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: start;
}

.pigeon-single-image,
.couple-member-image {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.pigeon-single-content {
	min-width: 0;
}

.pigeon-block-title {
	margin-bottom: 8px;
}

.pigeon-block-heading {
	margin: 0 0 6px;
}

.pigeon-block-ringnumber {
	font-size: 15px;
	opacity: 0.9;
}

.pigeon-single-text > *:first-child,
.couple-single-content > *:first-child,
.couple-member-text > *:first-child {
	margin-top: 0;
}

.pigeon-single-text + .pigeon-single-pedigree {
	margin-top: 1em;
}

.pigeon-single-text > *:last-child,
.couple-single-content > *:last-child,
.couple-member-text > *:last-child {
	margin-bottom: 0;
}

.couple-single-members {
	position: relative;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

.couple-single-members::before {
    content: "✖";
    display: block;
    position: absolute;
    top: clamp(240px, 32vw, 400px);
    left: 0;
    right: 0;
    text-align: center;
    font-weight: 700;
    font-size: 250%;
    color: rgb(2, 30, 51);
    opacity: 0.25;
}

.couple-member {
	display: grid;
	gap: 14px;
	align-content: start;
}

.couple-member-content {
	min-width: 0;
}

.couple-member-name {
	margin: 0 0 6px;
}

.couple-member-ringnumber {
	margin: 0 0 10px;
	font-size: 15px;
	opacity: 0.9;
}

.couple-single-note,
.offspring-text,
.related-couples-text {
	margin-top: 10px;
}

.related-couples,
.offspring-section {
	margin-top: 30px;
}

.related-couples-title,
.offspring-title {
	margin: 0 0 12px;
}

.breeding-back-link-wrap {
	margin-top: 30px;
}

.breeding-empty {
	margin: 18px 0;
}

/* Small icon spacing in ringnumber lines */
.pigeon-card-ringnumber .fas,
.couple-card-ringnumber .fas,
.couple-member-ringnumber .fas,
.pigeon-block-ringnumber .fas {
	margin-right: 6px;
	opacity: 0.9;
}

/* Responsive */
@media (max-width: 1024px) {
	.breeding-grid-pigeons {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pigeon-single {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.breeding-grid-pigeons,
	.breeding-grid-couples,
	.couple-single-members,
	.couple-card-media,
	.couple-card-headline {
		grid-template-columns: 1fr;
	}

	.breeding-archive,
	.breeding-single {
		padding: 28px 0;
	}

	.couple-single-members::before {
		content: none;
	}
}
