/**
 * B2C customer-facing page styles.
 *
 * Static CSS extracted from inline style="..." attributes in B2C templates,
 * cells, and elements. Registered globally in templates/layout/default.php so
 * that View Cells (which render in their own View instance) are covered too.
 */

/* Reviews/write.php, others: hidden block toggled by JS */
.b2c-hidden {
    display: none;
}

/* Reviews/write.php: submit row hidden until a rating is chosen */
.b2c-hidden-important {
    display: none !important;
}

/* Transfers/search.php: vehicle thumbnail */
.b2c-vehicle-thumb {
    max-height: 110px;
    object-fit: contain;
}

/* Destinations/view.php: hero band background */
.b2c-destination-hero-bg {
    background: linear-gradient(135deg, var(--color-primary-lightest) 0%, var(--color-primary-light) 100%);
}

/* Destinations/view.php: hero band with the destination's featured image as a
   blurred cover backdrop. The image lives on a ::before layer so the blur never
   touches the foreground text; a dark overlay keeps the copy readable. */
.b2c-destination-hero-bg.has-hero-image {
    position: relative;
    overflow: hidden;
}

.b2c-destination-hero-bg.has-hero-image::before {
    content: "";
    position: absolute;
    inset: -24px; /* bleed past edges so blur doesn't reveal a soft border */
    background-image: var(--hero-bg);
    background-size: cover;
    background-position: center;
    filter: blur(6px) brightness(0.6);
    z-index: 0;
}

.b2c-destination-hero-bg.has-hero-image > .container {
    position: relative;
    z-index: 1;
}

.b2c-destination-hero-bg.has-hero-image h1 {
    color: #fff;
}

.b2c-destination-hero-bg.has-hero-image .destination-description,
.b2c-destination-hero-bg.has-hero-image .breadcrumb-item.active {
    color: rgba(255, 255, 255, 0.9) !important;
}

.b2c-destination-hero-bg.has-hero-image .breadcrumb-item a,
.b2c-destination-hero-bg.has-hero-image .breadcrumb-item + .breadcrumb-item::before {
    color: rgba(255, 255, 255, 0.75);
}

/* Destinations/view.php: constrained lead description width */
.b2c-max-w-760 {
    max-width: 760px;
}

/* Marketing/unsubscribe.php: large status icon */
.b2c-status-icon {
    font-size: 48px;
}

/* element/booking_order_summary.php: points-discount row colour */
.b2c-points-discount-row {
    color: #4caf50;
}

/* element/transfers/confirmation_block.php: vehicle thumbnail */
.b2c-confirm-vehicle-thumb {
    width: 90px;
    height: 60px;
    object-fit: cover;
}

/* cell/DestinationsBlock/landing.php: round carousel nav button */
.b2c-carousel-nav-btn {
    width: 36px;
    height: 36px;
}

/* cell/DestinationsBlock/landing.php: carousel viewport */
.b2c-carousel-wrapper {
    overflow: hidden;
}

/* cell/DestinationsBlock/landing.php: carousel track */
.b2c-carousel-track {
    gap: 16px;
    transition: transform 0.4s ease;
}
