/* Fallback styling for the plugin's own templates.
   Elementor-designed pages do not load this: it is scoped to the plugin's
   markup, so a Theme Builder template never inherits these rules. */

.bcs-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 1.5rem;
	margin: 2rem auto;
	max-width: 1200px;
	padding: 0 1rem;
}

.bcs-card-link { text-decoration: none; color: inherit; display: block; }
.bcs-card-image { width: 100%; height: auto; display: block; border-radius: 4px; }
.bcs-card-title { font-size: 1rem; margin: 0.75rem 0 0.25rem; }
.bcs-card-code { font-size: 0.8rem; opacity: 0.7; margin: 0; }

.bcs-single .bcs-dress {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	gap: 2.5rem;
	max-width: 1200px;
	margin: 2rem auto;
	padding: 0 1rem;
}

@media (max-width: 782px) {
	.bcs-single .bcs-dress { grid-template-columns: minmax(0, 1fr); }
}

.bcs-hero-image { width: 100%; height: auto; display: block; border-radius: 4px; }

.bcs-dress-thumbs {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
	gap: 0.75rem;
	margin-top: 0.75rem;
}

.bcs-thumb-image { width: 100%; height: auto; display: block; border-radius: 3px; }
.bcs-dress-title { margin-top: 0; }
.bcs-dress-category { text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.75rem; opacity: 0.7; }
.bcs-dress-facts dt { font-weight: 600; margin-top: 0.75rem; }
.bcs-dress-facts dd { margin: 0.15rem 0 0; }

.bcs-book-button {
	display: inline-block;
	padding: 0.85rem 1.6rem;
	border-radius: 999px;
	background: #1f1f1f;
	color: #fff;
	text-decoration: none;
	font-weight: 600;
}

.bcs-book-button:hover { opacity: 0.88; }
.bcs-dress-cta-note { font-size: 0.85rem; opacity: 0.75; }

.bcs-gallery {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 0.75rem;
}

.bcs-gallery-image { width: 100%; height: auto; display: block; }
