/**
 * Bowlingcenter Verzeichnis - Frontend Styles
 * GeneratePress Pro kompatibel mit !important für kritische Regeln
 * Farbkonzept: Anthrazit (#1f1f1f), Weiß (#ffffff), Akzent Rot (#c62828), Premium Gold (#f9a825)
 */

/* ==========================================================================
   CSS Variables
   ========================================================================== */

:root {
    --bcv-color-primary: #1f1f1f !important;
    --bcv-color-secondary: #ffffff !important;
    --bcv-color-accent: #c62828 !important;
    --bcv-color-premium: #f9a825 !important;
    --bcv-color-text: #1f1f1f !important;
    --bcv-color-text-light: #666666 !important;
    --bcv-color-border: #e0e0e0 !important;
    --bcv-color-bg-light: #f5f5f5 !important;
    --bcv-border-radius: 8px !important;
    --bcv-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    --bcv-transition: all 0.3s ease !important;
}

/* ==========================================================================
   Base Styles
   ========================================================================== */

.bcv-premium-section,
.bcv-all-section,
.bcv-bezirk-section,
.bcv-intent-section {
    margin: 2rem 0 !important;
    padding: 0 !important;
}

/* ==========================================================================
   Premium Section
   ========================================================================== */

.bcv-premium-header {
    margin-bottom: 1.5rem !important;
    text-align: center !important;
}

.bcv-premium-label {
    display: inline-block !important;
    background: var(--bcv-color-bg-light) !important;
    color: var(--bcv-color-text-light) !important;
    padding: 0.5rem 1rem !important;
    border-radius: 20px !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    border: 1px solid var(--bcv-color-border) !important;
}

/* ==========================================================================
   Grid Layouts
   ========================================================================== */

.bcv-premium-grid,
.bcv-all-grid,
.bcv-bezirk-grid,
.bcv-intent-grid {
    display: grid !important;
    gap: 1.5rem !important;
}

.bcv-grid-2 {
    grid-template-columns: repeat(2, 1fr) !important;
}

.bcv-grid-3 {
    grid-template-columns: repeat(3, 1fr) !important;
}

.bcv-grid-4 {
    grid-template-columns: repeat(4, 1fr) !important;
}

@media (max-width: 992px) {
    .bcv-grid-3,
    .bcv-grid-4 {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 600px) {
    .bcv-grid-2,
    .bcv-grid-3,
    .bcv-grid-4 {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   Cards
   ========================================================================== */

.bcv-card {
    position: relative !important;
    background: var(--bcv-color-secondary) !important;
    border-radius: var(--bcv-border-radius) !important;
    box-shadow: var(--bcv-box-shadow) !important;
    overflow: hidden !important;
    transition: var(--bcv-transition) !important;
}

.bcv-card:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15) !important;
    transform: translateY(-2px) !important;
}

/* Premium Card */
.bcv-card-premium {
    border: 2px solid var(--bcv-color-premium) !important;
}

.bcv-card-badge {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    background: var(--bcv-color-premium) !important;
    color: var(--bcv-color-primary) !important;
    padding: 4px 12px !important;
    border-radius: 4px !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    z-index: 10 !important;
}

/* Card Image */
.bcv-card-image {
    position: relative !important;
    overflow: hidden !important;
    aspect-ratio: 16 / 10 !important;
}

.bcv-card-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: var(--bcv-transition) !important;
}

.bcv-card:hover .bcv-card-img {
    transform: scale(1.05) !important;
}

/* Card Content */
.bcv-card-content {
    padding: 1.25rem !important;
}

.bcv-card-title {
    margin: 0 0 0.5rem 0 !important;
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
}

.bcv-card-title a {
    color: var(--bcv-color-primary) !important;
    text-decoration: none !important;
}

.bcv-card-title a:hover {
    color: var(--bcv-color-accent) !important;
}

.bcv-card-bezirk {
    margin: 0 0 0.5rem 0 !important;
    color: var(--bcv-color-text-light) !important;
    font-size: 0.875rem !important;
}

.bcv-card-usp {
    margin: 0 0 1rem 0 !important;
    color: var(--bcv-color-text-light) !important;
    font-size: 0.875rem !important;
}

.bcv-card-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.75rem !important;
    margin-bottom: 1rem !important;
}

.bcv-meta-item {
    font-size: 0.8125rem !important;
    color: var(--bcv-color-text-light) !important;
}

.bcv-card-actions {
    margin-top: auto !important;
}

/* ==========================================================================
   Buttons
   ========================================================================== */

.bcv-btn {
    display: inline-block !important;
    padding: 0.75rem 1.5rem !important;
    border: none !important;
    border-radius: var(--bcv-border-radius) !important;
    font-size: 0.9375rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: var(--bcv-transition) !important;
}

.bcv-btn-primary {
    background: var(--bcv-color-accent) !important;
    color: var(--bcv-color-secondary) !important;
}

.bcv-btn-primary:hover {
    background: #a21f1f !important;
    color: var(--bcv-color-secondary) !important;
}

.bcv-btn-secondary {
    background: var(--bcv-color-primary) !important;
    color: var(--bcv-color-secondary) !important;
}

.bcv-btn-secondary:hover {
    background: #333333 !important;
    color: var(--bcv-color-secondary) !important;
}

.bcv-btn-small {
    padding: 0.5rem 1rem !important;
    font-size: 0.8125rem !important;
}

.bcv-btn-large {
    padding: 1rem 2rem !important;
    font-size: 1rem !important;
}

/* ==========================================================================
   Tables
   ========================================================================== */

.bcv-price-table-wrapper,
.bcv-hours-table-wrapper {
    overflow-x: auto !important;
    margin: 1.5rem 0 !important;
}

.bcv-price-table,
.bcv-hours-table {
    width: 100% !important;
    border-collapse: collapse !important;
    background: var(--bcv-color-secondary) !important;
    border-radius: var(--bcv-border-radius) !important;
    overflow: hidden !important;
    box-shadow: var(--bcv-box-shadow) !important;
}

.bcv-price-table th,
.bcv-price-table td,
.bcv-hours-table th,
.bcv-hours-table td {
    padding: 0.875rem 1rem !important;
    text-align: left !important;
    border-bottom: 1px solid var(--bcv-color-border) !important;
}

.bcv-price-table th,
.bcv-hours-table th {
    background: var(--bcv-color-primary) !important;
    color: var(--bcv-color-secondary) !important;
    font-weight: 600 !important;
    font-size: 0.875rem !important;
}

.bcv-price-table tbody tr:hover,
.bcv-hours-table tbody tr:hover {
    background: var(--bcv-color-bg-light) !important;
}

.bcv-price-table a,
.bcv-hours-table a {
    color: var(--bcv-color-accent) !important;
    text-decoration: none !important;
}

.bcv-price-table a:hover,
.bcv-hours-table a:hover {
    text-decoration: underline !important;
}

.bcv-hours-cell {
    font-size: 0.8125rem !important;
    white-space: nowrap !important;
}

/* ==========================================================================
   Filter Block
   ========================================================================== */

.bcv-filter-block {
    background: var(--bcv-color-bg-light) !important;
    padding: 1.5rem !important;
    border-radius: var(--bcv-border-radius) !important;
    margin-bottom: 2rem !important;
}

.bcv-filter-form {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
    align-items: flex-end !important;
}

.bcv-filter-group {
    flex: 1 !important;
    min-width: 150px !important;
}

.bcv-filter-group label {
    display: block !important;
    margin-bottom: 0.5rem !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: var(--bcv-color-text) !important;
}

.bcv-filter-group select {
    width: 100% !important;
    padding: 0.625rem !important;
    border: 1px solid var(--bcv-color-border) !important;
    border-radius: var(--bcv-border-radius) !important;
    font-size: 0.9375rem !important;
    background: var(--bcv-color-secondary) !important;
}

/* ==========================================================================
   Detail Page Styles
   ========================================================================== */

.bcv-detail-facts,
.bcv-detail-hours,
.bcv-detail-contact,
.bcv-detail-amenities,
.bcv-detail-services,
.bcv-detail-gallery {
    margin: 2.5rem 0 !important;
    padding: 1.5rem !important;
    background: var(--bcv-color-secondary) !important;
    border-radius: var(--bcv-border-radius) !important;
    box-shadow: var(--bcv-box-shadow) !important;
}

.bcv-detail-section-title {
    margin: 0 0 1.5rem 0 !important;
    padding-bottom: 0.75rem !important;
    border-bottom: 2px solid var(--bcv-color-accent) !important;
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    color: var(--bcv-color-primary) !important;
}

/* Facts Grid */
.bcv-facts-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 1.5rem !important;
}

.bcv-fact-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    padding: 1rem !important;
    background: var(--bcv-color-bg-light) !important;
    border-radius: var(--bcv-border-radius) !important;
}

.bcv-fact-icon {
    font-size: 2rem !important;
    margin-bottom: 0.5rem !important;
}

.bcv-fact-label {
    font-size: 0.8125rem !important;
    color: var(--bcv-color-text-light) !important;
    margin-bottom: 0.25rem !important;
}

.bcv-fact-value {
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    color: var(--bcv-color-primary) !important;
}

/* Hours Table */
.bcv-hours-detail-table {
    width: 100% !important;
    max-width: 500px !important;
    margin: 0 auto !important;
}

.bcv-hours-detail-table tr {
    border-bottom: 1px solid var(--bcv-color-border) !important;
}

.bcv-hours-detail-table tr:last-child {
    border-bottom: none !important;
}

.bcv-hours-detail-table td {
    padding: 0.75rem 1rem !important;
}

.bcv-hours-detail-table .bcv-day {
    font-weight: 500 !important;
    width: 50% !important;
    text-align: left !important;
}

.bcv-hours-detail-table .bcv-time {
    text-align: right !important;
    width: 50% !important;
}

.bcv-hours-detail-table tr.bcv-closed .bcv-time {
    color: var(--bcv-color-accent) !important;
}

/* Contact Grid */
.bcv-contact-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 1.5rem !important;
}

.bcv-contact-item {
    display: flex !important;
    gap: 1rem !important;
    align-items: flex-start !important;
}

.bcv-contact-icon {
    font-size: 1.5rem !important;
    flex-shrink: 0 !important;
}

.bcv-contact-text {
    font-size: 0.9375rem !important;
    line-height: 1.5 !important;
}

.bcv-contact-text strong {
    display: block !important;
    margin-bottom: 0.25rem !important;
    color: var(--bcv-color-text-light) !important;
    font-size: 0.8125rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.bcv-contact-text a {
    color: var(--bcv-color-accent) !important;
    text-decoration: none !important;
}

.bcv-contact-text a:hover {
    text-decoration: underline !important;
}

/* Amenities */
.bcv-amenities-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.bcv-amenity-item {
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    padding: 0.5rem 1rem !important;
    background: var(--bcv-color-bg-light) !important;
    border-radius: 20px !important;
    font-size: 0.9375rem !important;
}

.bcv-amenity-icon {
    font-size: 1.125rem !important;
}

/* Services */
.bcv-service-item {
    margin-bottom: 1.5rem !important;
    padding-bottom: 1.5rem !important;
    border-bottom: 1px solid var(--bcv-color-border) !important;
}

.bcv-service-item:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: none !important;
}

.bcv-service-title {
    margin: 0 0 0.75rem 0 !important;
    font-size: 1.0625rem !important;
    font-weight: 600 !important;
}

.bcv-service-desc {
    margin: 0 0 0.75rem 0 !important;
    color: var(--bcv-color-text-light) !important;
    line-height: 1.6 !important;
}

.bcv-service-link {
    margin: 0 !important;
}

.bcv-service-link a {
    color: var(--bcv-color-accent) !important;
    text-decoration: none !important;
    font-size: 0.9375rem !important;
    font-weight: 500 !important;
}

.bcv-service-link a:hover {
    text-decoration: underline !important;
}

/* Gallery */
.bcv-gallery-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
    gap: 1rem !important;
}

.bcv-gallery-item {
    display: block !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    border-radius: var(--bcv-border-radius) !important;
}

.bcv-gallery-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: var(--bcv-transition) !important;
}

.bcv-gallery-item:hover img {
    transform: scale(1.1) !important;
}

/* CTA Section */
.bcv-detail-cta {
    text-align: center !important;
    margin: 2.5rem 0 !important;
    padding: 2rem !important;
    background: var(--bcv-color-bg-light) !important;
    border-radius: var(--bcv-border-radius) !important;
}

.bcv-cta-premium {
    background: linear-gradient(135deg, #fff8e1 0%, #fff3cd 100%) !important;
    border: 2px solid var(--bcv-color-premium) !important;
}

/* Last Updated */
.bcv-detail-updated {
    margin-top: 2rem !important;
    padding-top: 1rem !important;
    border-top: 1px solid var(--bcv-color-border) !important;
}

.bcv-updated-text {
    margin: 0 !important;
    font-size: 0.8125rem !important;
    color: var(--bcv-color-text-light) !important;
    font-style: italic !important;
}

.bcv-disclaimer-text {
    margin: 0.5rem 0 0 0 !important;
    font-size: 0.75rem !important;
    color: var(--bcv-color-text-light) !important;
    line-height: 1.4 !important;
}

/* ==========================================================================
   Inquiry Form
   ========================================================================== */

.bcv-inquiry-form {
    max-width: 700px !important;
    margin: 2.5rem auto !important;
    padding: 2rem !important;
    background: var(--bcv-color-secondary) !important;
    border-radius: var(--bcv-border-radius) !important;
    box-shadow: var(--bcv-box-shadow) !important;
}

.bcv-form-premium {
    border: 2px solid var(--bcv-color-premium) !important;
}

.bcv-form-title {
    margin: 0 0 1.5rem 0 !important;
    padding-bottom: 1rem !important;
    border-bottom: 2px solid var(--bcv-color-accent) !important;
    font-size: 1.375rem !important;
    font-weight: 600 !important;
    text-align: center !important;
}

.bcv-form-row {
    display: flex !important;
    gap: 1rem !important;
    margin-bottom: 1rem !important;
}

.bcv-form-group {
    margin-bottom: 1rem !important;
}

.bcv-form-half {
    flex: 1 !important;
}

.bcv-form-group label {
    display: block !important;
    margin-bottom: 0.5rem !important;
    font-size: 0.9375rem !important;
    font-weight: 500 !important;
    color: var(--bcv-color-primary) !important;
}

.bcv-form-group label .required {
    color: var(--bcv-color-accent) !important;
}

.bcv-form-group input[type="text"],
.bcv-form-group input[type="email"],
.bcv-form-group input[type="tel"],
.bcv-form-group input[type="date"],
.bcv-form-group input[type="number"],
.bcv-form-group select,
.bcv-form-group textarea {
    width: 100% !important;
    padding: 0.75rem !important;
    border: 1px solid var(--bcv-color-border) !important;
    border-radius: var(--bcv-border-radius) !important;
    font-size: 1rem !important;
    font-family: inherit !important;
    transition: var(--bcv-transition) !important;
}

.bcv-form-group input:focus,
.bcv-form-group select:focus,
.bcv-form-group textarea:focus {
    outline: none !important;
    border-color: var(--bcv-color-accent) !important;
    box-shadow: 0 0 0 3px rgba(198, 40, 40, 0.1) !important;
}

.bcv-form-privacy {
    margin-top: 1.5rem !important;
}

.bcv-form-privacy label {
    display: inline !important;
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

.bcv-form-privacy input[type="checkbox"] {
    margin-right: 0.5rem !important;
    vertical-align: middle !important;
}

.bcv-form-privacy a {
    color: var(--bcv-color-accent) !important;
    margin: 0 !important;
    padding: 0 !important;
}

.bcv-form-submit {
    margin-top: 1.5rem !important;
    text-align: center !important;
}

.bcv-form-message {
    margin-top: 1rem !important;
    padding: 1rem !important;
    border-radius: var(--bcv-border-radius) !important;
    text-align: center !important;
}

.bcv-form-message.success {
    background: #e8f5e9 !important;
    color: #2e7d32 !important;
    border: 1px solid #a5d6a7 !important;
}

.bcv-form-message.error {
    background: #ffebee !important;
    color: #c62828 !important;
    border: 1px solid #ef9a9a !important;
}

@media (max-width: 600px) {
    .bcv-form-row {
        flex-direction: column !important;
    }
    
    .bcv-inquiry-form {
        padding: 1.5rem !important;
    }
}

/* ==========================================================================
   Bezirk Title
   ========================================================================== */

.bcv-bezirk-title {
    margin: 0 0 1.5rem 0 !important;
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    color: var(--bcv-color-primary) !important;
}

/* ==========================================================================
   Archive / Taxonomy Pages
   ========================================================================== */

.bcv-archive-header {
    margin-bottom: 2rem !important;
    padding-bottom: 1.5rem !important;
    border-bottom: 2px solid var(--bcv-color-border) !important;
}

.bcv-archive-title {
    margin: 0 0 0.5rem 0 !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: var(--bcv-color-primary) !important;
}

.bcv-archive-description {
    margin: 0 !important;
    color: var(--bcv-color-text-light) !important;
    font-size: 1.0625rem !important;
    line-height: 1.6 !important;
}

/* ==========================================================================
   Loading State
   ========================================================================== */

.bcv-loading {
    position: relative !important;
    pointer-events: none !important;
    opacity: 0.7 !important;
}

.bcv-loading::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 24px !important;
    height: 24px !important;
    margin: -12px 0 0 -12px !important;
    border: 3px solid var(--bcv-color-border) !important;
    border-top-color: var(--bcv-color-accent) !important;
    border-radius: 50% !important;
    animation: bcv-spin 0.8s linear infinite !important;
}

@keyframes bcv-spin {
    to {
        transform: rotate(360deg);
    }
}

/* ==========================================================================
   Intent Pages
   ========================================================================== */

.bcv-intent-page {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 2rem 1rem !important;
}

.bcv-intent-info {
    margin: 3rem 0 !important;
    padding: 2rem !important;
    background: var(--bcv-color-secondary) !important;
    border-radius: var(--bcv-border-radius) !important;
    box-shadow: var(--bcv-box-shadow) !important;
}

.bcv-intent-info h2 {
    margin-top: 2rem !important;
    padding-top: 1.5rem !important;
    border-top: 1px solid var(--bcv-color-border) !important;
}

.bcv-intent-info h2:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: none !important;
}

.bcv-info-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 1.5rem !important;
    margin-top: 1.5rem !important;
}

.bcv-info-item {
    padding: 1.5rem !important;
    background: var(--bcv-color-bg-light) !important;
    border-radius: var(--bcv-border-radius) !important;
    text-align: center !important;
}

.bcv-info-icon {
    display: block !important;
    font-size: 2.5rem !important;
    margin-bottom: 1rem !important;
}

.bcv-info-item h3 {
    margin: 0 0 0.75rem 0 !important;
    font-size: 1.0625rem !important;
    font-weight: 600 !important;
}

.bcv-info-item p {
    margin: 0 !important;
    font-size: 0.9375rem !important;
    color: var(--bcv-color-text-light) !important;
    line-height: 1.5 !important;
}

.bcv-intent-list {
    margin: 3rem 0 !important;
}

.bcv-intent-list h2 {
    margin-bottom: 1.5rem !important;
}

.bcv-intent-tips {
    margin: 3rem 0 !important;
    padding: 2rem !important;
    background: var(--bcv-color-bg-light) !important;
    border-radius: var(--bcv-border-radius) !important;
}

.bcv-intent-tips h2 {
    margin: 0 0 1rem 0 !important;
}

.bcv-intent-tips ul {
    margin: 0 !important;
    padding-left: 1.5rem !important;
}

.bcv-intent-tips li {
    margin-bottom: 0.75rem !important;
    line-height: 1.6 !important;
}

.bcv-intent-cta {
    margin: 3rem 0 !important;
    padding: 2rem !important;
    background: var(--bcv-color-primary) !important;
    color: var(--bcv-color-secondary) !important;
    border-radius: var(--bcv-border-radius) !important;
    text-align: center !important;
}

.bcv-intent-cta h2 {
    margin: 0 0 1rem 0 !important;
    color: var(--bcv-color-secondary) !important;
}

.bcv-intent-cta p {
    margin: 0 !important;
    opacity: 0.9 !important;
}

.bcv-cta-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
    justify-content: center !important;
    margin-top: 1.5rem !important;
}

/* Packages Grid (Firmenfeier) */
.bcv-packages-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 1.5rem !important;
    margin: 1.5rem 0 !important;
}

.bcv-package-item {
    padding: 1.5rem !important;
    background: var(--bcv-color-secondary) !important;
    border: 1px solid var(--bcv-color-border) !important;
    border-radius: var(--bcv-border-radius) !important;
}

.bcv-package-item h3 {
    margin: 0 0 1rem 0 !important;
    font-size: 1.125rem !important;
}

.bcv-package-item ul {
    margin: 0 !important;
    padding-left: 1.25rem !important;
}

.bcv-package-item li {
    margin-bottom: 0.5rem !important;
}

.bcv-package-featured {
    border-color: var(--bcv-color-accent) !important;
    border-width: 2px !important;
    position: relative !important;
}

.bcv-package-featured::before {
    content: 'Beliebt' !important;
    position: absolute !important;
    top: -10px !important;
    right: 15px !important;
    background: var(--bcv-color-accent) !important;
    color: var(--bcv-color-secondary) !important;
    padding: 2px 10px !important;
    border-radius: 3px !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
}

.bcv-packages-note {
    margin-top: 1rem !important;
    font-size: 0.875rem !important;
    color: var(--bcv-color-text-light) !important;
    font-style: italic !important;
}

/* Transparency Note */
.bcv-transparency-note {
    margin: 1.5rem 0 !important;
    padding: 1rem 1.5rem !important;
    background: #fff8e1 !important;
    border-left: 4px solid var(--bcv-color-premium) !important;
    border-radius: 0 var(--bcv-border-radius) var(--bcv-border-radius) 0 !important;
}

.bcv-transparency-note p {
    margin: 0 !important;
    font-size: 0.9375rem !important;
    line-height: 1.6 !important;
}

/* Criteria Grid (Beste Bowlingbahn) */
.bcv-criteria-section {
    margin: 3rem 0 !important;
}

.bcv-criteria-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 1.5rem !important;
    margin-top: 1.5rem !important;
}

.bcv-criteria-item {
    padding: 1.5rem !important;
    background: var(--bcv-color-secondary) !important;
    border-radius: var(--bcv-border-radius) !important;
    box-shadow: var(--bcv-box-shadow) !important;
}

.bcv-criteria-item h3 {
    margin: 0 0 1rem 0 !important;
    font-size: 1.0625rem !important;
    padding-bottom: 0.75rem !important;
    border-bottom: 2px solid var(--bcv-color-accent) !important;
}

.bcv-criteria-item ul,
.bcv-criteria-item ol {
    margin: 0 0 1rem 0 !important;
    padding-left: 1.25rem !important;
}

.bcv-criteria-item li {
    margin-bottom: 0.5rem !important;
}

.bcv-criteria-item a {
    color: var(--bcv-color-accent) !important;
    text-decoration: none !important;
}

.bcv-criteria-item a:hover {
    text-decoration: underline !important;
}

.bcv-link {
    display: inline-block !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
}

/* Methodology Section */
.bcv-methodology {
    margin: 3rem 0 !important;
    padding: 2rem !important;
    background: var(--bcv-color-bg-light) !important;
    border-radius: var(--bcv-border-radius) !important;
}

.bcv-methodology h2 {
    margin: 0 0 1rem 0 !important;
}

.bcv-methodology ul {
    margin: 1rem 0 !important;
    padding-left: 1.5rem !important;
}

/* Single Page Wrapper */
.bcv-single-wrapper {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.bcv-single-container {
    width: 100% !important;
    padding: 2rem !important;
}

.bcv-single-bowlingcenter {
    width: 100% !important;
}

/* Single Page Header */
.bcv-single-header {
    margin-bottom: 2rem !important;
    position: relative !important;
}

/* Breadcrumb */
.bcv-breadcrumb {
    margin-bottom: 1rem !important;
    font-size: 0.875rem !important;
    color: var(--bcv-color-text-light) !important;
}

.bcv-breadcrumb a {
    color: var(--bcv-color-accent) !important;
    text-decoration: none !important;
}

.bcv-breadcrumb a:hover {
    color: var(--bcv-color-primary) !important;
    text-decoration: underline !important;
}

.bcv-breadcrumb-sep {
    margin: 0 0.5rem !important;
    color: var(--bcv-color-border) !important;
}

.bcv-breadcrumb-current {
    color: var(--bcv-color-text) !important;
}

.bcv-single-badge {
    display: inline-block !important;
    background: var(--bcv-color-premium) !important;
    color: var(--bcv-color-primary) !important;
    padding: 4px 12px !important;
    border-radius: 4px !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    margin-bottom: 0.75rem !important;
}

.bcv-single-title {
    margin: 0 0 0.5rem 0 !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: var(--bcv-color-primary) !important;
}

.bcv-single-bezirk {
    margin: 0 !important;
    font-size: 1.0625rem !important;
    color: var(--bcv-color-text-light) !important;
}

.bcv-single-bezirk a {
    color: var(--bcv-color-accent) !important;
    text-decoration: none !important;
}

.bcv-single-bezirk a:hover {
    text-decoration: underline !important;
}

.bcv-single-featured-image {
    margin-bottom: 2rem !important;
    border-radius: var(--bcv-border-radius) !important;
    overflow: hidden !important;
}

.bcv-single-featured-image img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

.bcv-single-content {
    margin-bottom: 2rem !important;
    line-height: 1.7 !important;
}

/* Bezirk Page */
.bcv-bezirk-info {
    margin: 3rem 0 !important;
    padding: 2rem !important;
    background: var(--bcv-color-secondary) !important;
    border-radius: var(--bcv-border-radius) !important;
    box-shadow: var(--bcv-box-shadow) !important;
}

.bcv-bezirk-info h2 {
    margin: 0 0 1.5rem 0 !important;
}

.bcv-bezirk-transport h3 {
    margin: 1.5rem 0 0.75rem 0 !important;
    font-size: 1rem !important;
}

.bcv-bezirk-transport h3:first-child {
    margin-top: 0 !important;
}

.bcv-bezirk-cta {
    margin: 3rem 0 !important;
    padding: 2rem !important;
    background: var(--bcv-color-bg-light) !important;
    border-radius: var(--bcv-border-radius) !important;
}

.bcv-bezirk-cta h2 {
    margin: 0 0 1rem 0 !important;
}

.bcv-bezirk-cta ul {
    margin: 0 0 1.5rem 0 !important;
    padding-left: 1.5rem !important;
}

/* All List Section */
.bcv-all-list {
    margin: 3rem 0 !important;
}

.bcv-all-list h2 {
    margin-bottom: 1.5rem !important;
}

/* ==========================================================================
   Archive Page (bowlingbahnen) Spacing
   ========================================================================== */

.post-type-archive-bowlingcenter .site-main,
.post-type-archive-bowlingcenter .site-content,
.tax-bezirk .site-main,
.tax-bezirk .site-content {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
}

/* ==========================================================================
   Archive Page Responsive (Tablet & Mobile)
   ========================================================================== */

.bcv-archive-page {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 1rem !important;
    box-sizing: border-box !important;
}

.bcv-archive-header {
    padding: 0 !important;
    margin-bottom: 2rem !important;
}

.bcv-archive-title {
    font-size: 1.75rem !important;
    line-height: 1.3 !important;
    word-wrap: break-word !important;
}

.bcv-archive-all {
    width: 100% !important;
}

.bcv-archive-all h2 {
    font-size: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

/* Tablet */
@media (max-width: 992px) {
    .bcv-archive-page {
        padding: 0 1.5rem !important;
    }
    
    .bcv-archive-title {
        font-size: 1.5rem !important;
    }
    
    .bcv-archive-all h2 {
        font-size: 1.25rem !important;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .bcv-archive-page {
        padding: 0 1rem !important;
    }
    
    .bcv-archive-header {
        margin-bottom: 1.5rem !important;
    }
    
    .bcv-archive-title {
        font-size: 1.25rem !important;
        line-height: 1.4 !important;
    }
    
    .bcv-archive-description {
        font-size: 0.9375rem !important;
        line-height: 1.5 !important;
    }
    
    .bcv-archive-all h2 {
        font-size: 1.125rem !important;
    }
    
    .bcv-premium-section,
    .bcv-all-section,
    .bcv-archive-all {
        margin: 1.5rem 0 !important;
    }
    
    .bcv-card-content {
        padding: 1rem !important;
    }
    
    .bcv-card-title {
        font-size: 1rem !important;
    }
    
    .bcv-card-meta {
        gap: 0.5rem !important;
    }
    
    .bcv-meta-item {
        font-size: 0.75rem !important;
    }
    
    .bcv-filter-block {
        padding: 1rem !important;
    }
    
    .bcv-filter-form {
        flex-direction: column !important;
    }
    
    .bcv-filter-group {
        width: 100% !important;
        min-width: 100% !important;
    }
}
