/* Hide WordPress post meta */
.entry-date { display: none; }
.entry-meta { display: none; }
.post-title { display: none; }

.boatmatrix-inventory-listing li {
	vertical-align: top;
	padding: 0;
	border-color: #333;
	list-style: none;
	margin: 0;
	overflow: hidden;
	display: inline-block;
	width: 99.5%; 
	float: left;
	border: 1px solid #AAA;
	border-radius: 5px;
	background-color: #eee;
}


body .boatmatrix-inventory-listing {
	padding: 0;
	margin: 0;
	overflow: hidden;
}

.boatmatrix-embed .sortby-container {
	padding: 1em 0;
}

.boatmatrix-inventory-listing strong {
	display: block;
}

.boatmatrix-inventory-listing li div.listing-image {
	float: left;
	width: 43%;
}
.boatmatrix-inventory-listing li div.listing-image img {
	padding: 0.5em; 
	display: block;	
	margin: 0 auto;	
}
.boatmatrix-inventory-listing li div.listing-details-grid {
	display: none;
}
.boatmatrix-inventory-listing li div.listing-details {
	padding-left: 1%; 
	float: left;
	width: 46%;
}
.boatmatrix-inventory-listing li div.listing-details div.listing-details-left {
	float: left;
	width: 73%;

}
.boatmatrix-inventory-listing li div.listing-details div.listing-details-left h3.listing-price {
	font-size: 1.5em;
	padding-top: 10px;
	text-decoration: none;
	color: black; 
}
.boatmatrix-inventory-listing li div.listing-details div.listing-details-left h3.listing-price:hover {
	text-decoration: none;
}

.boatmatrix-inventory-listing li div.listing-details div.listing-details-left table.listing-details-box tr td {
	color: black;
	font-size: 14pt;
	line-height: 1.2em;
}
.boatmatrix-inventory-listing li div.listing-details div.listing-details-left table.listing-details-box tr td.detail-label {
	padding-right: 5px; 
	font-weight: bold;
}
.boatmatrix-inventory-listing li div.listing-details div.listing-details-right {
	float: left;
	width: 22%;
	padding-left: 1.2em;

}


.boatmatrix-inventory-listing li div.listing-details div.listing-details-left table.listing-details-box  {
       width: 100%;
}

.boatmatrix-inventory-listing li div.listing-details div.listing-details-left table.listing-details-box tr:nth-child(even) { background-color: #EEE; }

.boatmatrix-inventory-listing li div.listing-details div.listing-details-left a {
       width: 20em;
}

.boatmatrix-inventory-listing li div.listing-details p.listing-description {
}
.boatmatrix-inventory-listing li div.listing-details h4.sale-price {
	text-align: right; 
	float: right;
	margin: 0.5em;
	color: black;
}

.boatmatrix-inventory-listing span {
	font-weight: bold;
	display: inline-block; 
	width: 50%;
	float: left;
	font-size: 12pt;
}

.boatmatrix-inventory-listing span span {
	font-weight: normal;
	display: inline;
	float: none;
}

.boatmatrix-inventory-listing a.details {
	text-align: center;
	float: right;
	text-decoration: none;
	border: none;
	background-color: #333;
	color: white;
	font-size: 1.25em;
	padding: 10px;
	border-radius: 5px;
}

.boatmatrix-inventory-listing li strong {
	font-size: 14pt;
	margin: 10px 0;
}

.boatmatrix-inventory-listing li img {
	//max-width: 100%;
	//min-height: 190px;
	margin: 10px auto;
	display: block;
	clear: both;
}

.boatmatrix-inventory-listing li p {
	/*height: 3em; 
	overflow: hidden; */
}

.listing-price-top {
	display: none;
}

.boatmatrix-inventory-listing.cols-1 li { width: 100%; }
.boatmatrix-inventory-listing.cols-2 li { width: 48%; }
.boatmatrix-inventory-listing.cols-3 li { width: 32%; }
.boatmatrix-inventory-listing.cols-4 li { width: 24%; }
.boatmatrix-inventory-listing.cols-5 li { width: 19%; }
.boatmatrix-inventory-listing.cols-6 li { width: 15%; }
.boatmatrix-inventory-listing.cols-7 li { width: 13%; }
.boatmatrix-inventory-listing.cols-8 li { width: 12%; }
.boatmatrix-inventory-listing.cols-9 li { width: 10%; }
.boatmatrix-inventory-listing.cols-10 li { width: 9%; }


.boatmatrix-inventory-listing .overlay  {
	position: relative;
}
.boatmatrix-inventory-listing .overlay div {
	background-repeat: no-repeat;
	bottom: 9px;
	left: 8px;
	position: absolute;
	clear: both;
}

.boatmatrix-embed form { display: inline-block; }
.boatmatrix-embed select { border: 1px solid rgba(0,0,0,0.5); border-radius: 4px; padding: 6px; }
.boatmatrix-embed div.omit { background-color: #1b325e; color: white; display: inline-block; padding: 3px 5px; border-radius: 10px; }
.boatmatrix-embed div.omit button { background-color: initial !important; }



/* grid styles  */
.boatmatrix-inventory-listing.grid li {
	width: 32%;
	height: 350px;
	overflow: none;
	margin-bottom: 10px;	
	padding-top: 10px;
}
.boatmatrix-inventory-listing.grid li h3 {
	padding: 0; margin: 0; 
	font-size: 1em;
	text-align: center;
}
.boatmatrix-inventory-listing.grid li h4 {
	padding: 0; margin: 0; 
	font-size: 1em;
	text-align: center;
}

.boatmatrix-inventory-listing.grid li table {
	width: 100%;
}

.boatmatrix-inventory-listing.grid li div.listing-image {
	width: 100%;
	max-height: 220px;
}
.boatmatrix-inventory-listing.grid li div.listing-image img {
	max-height: 202px;
}

.boatmatrix-inventory-listing.grid li div.listing-details, .boatmatrix-inventory-listing.grid li div.listing-details  .listing-details-left, .boatmatrix-inventory-listing.grid li div.listing-details .listing-details-right {
	display: none;
}

.boatmatrix-inventory-listing.grid li div.listing-details-grid, .boatmatrix-inventory-listing.grid li div.listing-details-grid  .listing-details-left, .boatmatrix-inventory-listing.grid li div.listing-details-grid .listing-details-right {
	width: 97%;
	float: none;
	text-align: left;
	padding: 0 6px;
}


.boatmatrix-inventory-listing.grid li div.listing-details-grid {
	display: block;
}


.boatmatrix-inventory-listing.grid a.details {
	float: none; text-align: left; width: 80%; display: block; margin: 0 auto; text-align: center; margin-top: 10px;
}



@media screen and ( max-width: 900px ) {
	.boatmatrix-inventory-listing h3  {
		padding: 0; margin: 0; 
	}
	.listing-price-top {
		display: block;
	}
	.boatmatrix-inventory-listing a.details {
		float: none;
		width: 100%;
		display: block;
	}
	.boatmatrix-inventory-listing li div.listing-details h4.sale-price {
		float: none;
	}
	.boatmatrix-inventory-listing li div.listing-details div.listing-details-right {
		width: 100%;
		padding: 30px 0 10px ;
	}
	
	.boatmatrix-inventory-listing li div.listing-details h4.sale-price {
		float: none;
		display: none;
	}
	.boatmatrix-inventory-listing li div.listing-details {
		width: 100%;
	}
	.boatmatrix-inventory-listing li div.listing-details div.listing-details-left {
		width: 100%;
	}
	.boatmatrix-inventory-listing li div.listing-image {
		max-width: 100%;
		width: 100%;
	}
}

/* ---- Boat Detail Page ---- */
.bm-detail-page {
	--bm-primary: #0a2540;
	--bm-accent: #007bb6;
	--bm-bg-light: #f8f9fa;
	--bm-text-dark: #2d3748;
	--bm-text-muted: #718096;
	--bm-border: #e2e8f0;
	--bm-radius: 8px;
	background-color: var(--bm-bg-light);
	color: var(--bm-text-dark);
	line-height: 1.6;
	padding: 1.5em 1em;
}

.bm-detail-container {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 2rem;
}

@media (max-width: 868px) {
	.bm-detail-container { grid-template-columns: 1fr; }
}

.bm-listing-header { margin-bottom: 1.5rem; }
.bm-badge {
	display: inline-block;
	background: #ebf8ff;
	color: var(--bm-accent);
	padding: 0.25rem 0.75rem;
	border-radius: 20px;
	font-size: 0.8rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
}
.bm-listing-title { font-size: 2.25rem; color: var(--bm-primary); font-weight: 800; line-height: 1.2; }

.bm-gallery-placeholder {
	width: 100%;
	min-height: 200px;
	background-color: #cbd5e0;
	border-radius: var(--bm-radius);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--bm-text-muted);
	font-weight: 600;
	margin-bottom: 2rem;
	padding: 2rem;
}

/* Gallery: large hero image + clickable thumbnail strip */
.bm-gallery { margin-bottom: 2rem; }
.bm-gallery-main {
	width: 100%;
	border-radius: var(--bm-radius);
	overflow: hidden;
	background: #cbd5e0;
	margin-bottom: 0.75rem;
}
.bm-gallery-main a { display: block; }
.bm-gallery-main img {
	width: 100%;
	max-height: 480px;
	object-fit: cover;
	display: block;
}
.bm-gallery-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
.bm-gallery-thumb {
	padding: 0;
	border: 2px solid transparent;
	border-radius: 6px;
	overflow: hidden;
	background: none;
	cursor: pointer;
	width: 84px;
	height: 64px;
	flex-shrink: 0;
}
.bm-gallery-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.bm-gallery-thumb:hover { border-color: var(--bm-border); }
.bm-gallery-thumb-active { border-color: var(--bm-accent); }
.bm-gallery-main a { cursor: zoom-in; }

/* Lightbox */
.bm-lightbox {
	position: fixed;
	inset: 0;
	background: rgba(10, 37, 64, 0.92);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9999;
}
.bm-lightbox[hidden] { display: none; }
.bm-lightbox-img {
	max-width: 90vw;
	max-height: 90vh;
	object-fit: contain;
	display: block;
}
.bm-lightbox-close,
.bm-lightbox-prev,
.bm-lightbox-next {
	position: absolute;
	background: none;
	border: none;
	color: #fff;
	cursor: pointer;
	line-height: 1;
}
.bm-lightbox-close {
	top: 1rem;
	right: 1.5rem;
	font-size: 2.5rem;
}
.bm-lightbox-prev,
.bm-lightbox-next {
	top: 50%;
	transform: translateY(-50%);
	font-size: 3rem;
	padding: 0.5rem 1rem;
}
.bm-lightbox-prev { left: 0.5rem; }
.bm-lightbox-next { right: 0.5rem; }
.bm-lightbox-close:hover,
.bm-lightbox-prev:hover,
.bm-lightbox-next:hover { color: var(--bm-accent); }

.bm-section-title {
	font-size: 1.25rem;
	color: var(--bm-primary);
	border-bottom: 2px solid var(--bm-border);
	padding-bottom: 0.5rem;
	margin: 2rem 0 1rem;
}

.bm-specs-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 1rem;
	margin-bottom: 2rem;
}
.bm-spec-card {
	background: white;
	padding: 1rem;
	border-radius: var(--bm-radius);
	border: 1px solid var(--bm-border);
}
.bm-spec-label { font-size: 0.75rem; text-transform: uppercase; color: var(--bm-text-muted); font-weight: 600; }
.bm-spec-value { font-size: 1rem; font-weight: 700; color: var(--bm-primary); margin-top: 0.25rem; }

.bm-detail-description { margin-bottom: 2rem; }
.bm-detail-description p { white-space: pre-line; }

.bm-feature-list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 0.75rem;
	list-style: none;
	margin-bottom: 2rem;
}
.bm-feature-item {
	background: white;
	padding: 0.75rem 1rem;
	border-radius: var(--bm-radius);
	border: 1px solid var(--bm-border);
	font-size: 0.9rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
}
.bm-feature-item .bm-feature-name { font-weight: 600; color: var(--bm-primary); }
.bm-feature-item .bm-feature-value { color: var(--bm-text-dark); text-align: right; }

/* Sidebar */
.bm-sidebar-card {
	background: white;
	padding: 1.5rem;
	border-radius: var(--bm-radius);
	border: 1px solid var(--bm-border);
	position: sticky;
	top: 2rem;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}
.bm-price-tag { font-size: 1.75rem; font-weight: 800; color: var(--bm-primary); margin-bottom: 1rem; }

.bm-form-group { margin-bottom: 1rem; }
.bm-form-group label { display: block; font-size: 0.8rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--bm-text-dark); }
.bm-form-group input,
.bm-form-group textarea {
	width: 100% !important;
	box-sizing: border-box;
	padding: 0.6rem;
	border: 1px solid var(--bm-border);
	border-radius: 4px;
	font-size: 0.9rem;
}

.bm-submit-btn {
	width: 100%;
	background: var(--bm-accent);
	color: white;
	border: none;
	padding: 0.8rem;
	font-weight: 700;
	border-radius: 4px;
	cursor: pointer;
	transition: background 0.2s;
}
.bm-submit-btn:hover { background: #005f8d; }

.bm-form-success { background-color: #d4edda; color: #155724; border: 1px solid #c3e6cb; padding: 12px; border-radius: 4px; margin-bottom: 1em; }

/* ---- [boatmatrix_all_grid] shortcode ---- */
.bm-all-grid { max-width: 1200px; margin: 0 auto; }

.bm-all-grid .bm-tab-input { position: absolute; opacity: 0; pointer-events: none; }

.bm-all-grid .bm-tab-nav {
	display: flex;
	flex-wrap: wrap;
	border-bottom: 2px solid #ccc;
	margin-bottom: 1.5em;
}
.bm-all-grid .bm-tab-label {
	cursor: pointer;
	padding: 0.85em 1.5em;
	font-weight: bold;
	font-size: 1.15em;
	color: #112037;
	background-color: #fff;
	border: 1px solid #ccc;
	border-bottom: none;
	margin-right: 4px;
	border-radius: 6px 6px 0 0;
	box-shadow: 0 -2px 8px rgba(0,0,0,0.12);
	user-select: none;
}
.bm-all-grid .bm-tab-label:hover {
	background-color: #f0f0f0;
}

.bm-all-grid .bm-tab-panel { display: none; }

.bm-all-grid #bm-tab-new:checked ~ .bm-tab-nav .bm-tab-label-new,
.bm-all-grid #bm-tab-used:checked ~ .bm-tab-nav .bm-tab-label-used,
.bm-all-grid #bm-tab-pwc:checked ~ .bm-tab-nav .bm-tab-label-pwc,
.bm-all-grid #bm-tab-tractors:checked ~ .bm-tab-nav .bm-tab-label-tractors,
.bm-all-grid #bm-tab-other:checked ~ .bm-tab-nav .bm-tab-label-other {
	background-color: #112037;
	color: white;
	border-color: #112037;
}

.bm-all-grid #bm-tab-new:checked ~ .bm-tab-panel-new,
.bm-all-grid #bm-tab-used:checked ~ .bm-tab-panel-used,
.bm-all-grid #bm-tab-pwc:checked ~ .bm-tab-panel-pwc,
.bm-all-grid #bm-tab-tractors:checked ~ .bm-tab-panel-tractors,
.bm-all-grid #bm-tab-other:checked ~ .bm-tab-panel-other {
	display: block;
}

.bm-all-grid-listing {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 1.5em;
	list-style: none;
	margin: 0;
	padding: 0;
}

.bm-all-grid-listing li {
	list-style: none;
	border: 1px solid #ccc;
	border-radius: 6px;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 0 2px 8px rgba(0,0,0,0.15);
	transition: box-shadow 0.2s ease;
}

.bm-all-grid-listing li:hover {
	box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}

.bm-all-grid-listing li a {
	display: block;
	text-decoration: none;
	color: inherit;
}

.bm-all-grid-listing .bm-item-image {
	position: relative;
	width: 100%;
	height: 180px;
	padding: 0.75em;
	box-sizing: border-box;
	background-color: #f5f5f5;
	overflow: hidden;
}
.bm-all-grid-listing .bm-item-image img {
	width: 100%;
	height: 100%;
	border-radius: 4px;
	object-fit: cover;
	display: block;
}

/* hover fade slideshow (only active on items with more than one image) */
.bm-all-grid-listing .bm-item-image.bm-slideshow img.bm-slide {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 0.75em;
	box-sizing: border-box;
	opacity: 0;
	transition: opacity 0.8s ease;
}
.bm-all-grid-listing .bm-item-image.bm-slideshow img.bm-slide-active {
	opacity: 1;
}

.bm-all-grid-listing .bm-item-title {
	font-weight: bold;
	font-size: 1.25em;
	text-align: center;
	padding: 0.6em 0.75em 0.2em;
	color: #112037;
}

.bm-all-grid-listing .bm-item-meta {
	font-size: 0.85em;
	color: #555;
	padding: 0 0.75em 0.75em;
}

.bm-all-grid-listing .bm-item-button {
	display: block;
	text-align: center;
	margin: 0.75em;
	padding: 0.85em 1em;
	background-color: #128a9a;
	color: white;
	font-size: 1.1em;
	font-weight: bold;
	letter-spacing: 0.03em;
	border-radius: 5px;
	transition: background-color 0.2s ease;
}

.bm-all-grid-listing li:hover .bm-item-button {
	background-color: #0f707d;
}

li.bm-no-results {
	grid-column: 1 / -1;
	text-align: center;
	padding: 3em 1em;
	color: #666;
	font-size: 1.75em;
	font-weight: bold;
	border: none;
	background: none;
	box-shadow: none;
}

.bm-all-grid-listing li.bm-page-hidden {
	display: none;
}

/* Before JS runs, only show the first page's worth of listings so nothing flashes unpaginated. */
.bm-all-grid-listing:not(.bm-js-ready) li:nth-child(n+6) {
	display: none;
}

.bm-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.5em;
	margin-top: 1.5em;
}
.bm-pagination.bm-pagination-hidden {
	display: none;
}

.bm-pagination button {
	cursor: pointer;
	padding: 0.6em 1.2em;
	font-size: 1em;
	font-weight: bold;
	color: #112037;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 5px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.12);
	transition: background-color 0.2s ease;
}
.bm-pagination button:hover:not(:disabled) {
	background-color: #f0f0f0;
}
.bm-pagination button:disabled {
	cursor: default;
	opacity: 0.4;
	box-shadow: none;
}

.bm-pagination .bm-page-status {
	font-weight: bold;
	color: #112037;
}

@media screen and ( max-width: 700px ) {
	.bm-all-grid .bm-tab-nav { flex-direction: column; }
	.bm-all-grid .bm-tab-label { border-radius: 0; margin-right: 0; }
}
