/**
 * Branwell Booking Announce — plugin styles
 * Handle: bw-styles-booking-announce
 *
 * Announcement block for the offline-reader booking service —
 * left accent bar, eyebrow, heading, lede and a Book Now button.
 *
 * Scope: all rules under #bw-booking-announce so nothing leaks. Plugin owns:
 *   - the accent bar and inner spacing
 *   - eyebrow treatment
 *   - vertical rhythm between eyebrow, heading, lede and button
 *   - the Book Now button
 *
 * Plugin does NOT own:
 *   - body font, body colour, container max-width  (theme owns)
 *   - heading defaults (size, weight, family)       (theme owns)
 *   - paragraph size defaults                       (theme owns)
 *
 * Palette: all colours via var(--color-*) tokens defined by the theme
 * customizer. Switch the palette → block re-themes automatically.
 */

#bw-booking-announce {
    box-sizing: border-box;
    width: 100%;
    /* No horizontal padding or margin — theme content wrapper controls width. */
    margin: 0;
    padding: 0;
}
#bw-booking-announce *,
#bw-booking-announce *::before,
#bw-booking-announce *::after {
    box-sizing: border-box;
}

/* ============================================================
   Inner — accent bar down the left
   ============================================================ */
#bw-booking-announce .bw-announce__inner {
    border-left: 4px solid var(--color-primary);
    border-radius: 2px;
    padding: 0 0 24px 24px;
}

/* ============================================================
   Text
   ============================================================ */
#bw-booking-announce .bw-announce__eyebrow {
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--color-primary);
    margin: 0 0 36px;
    line-height: 1.4;
}
#bw-booking-announce .bw-announce__heading {
    margin: 0 0 14px;
    color: inherit;
}
#bw-booking-announce .bw-announce__lede {
    margin: 0 0 24px;
    color: inherit;
    opacity: 0.7;
}

/* ============================================================
   Button
   ============================================================ */
#bw-booking-announce .bw-announce__button {
    display: inline-block;
    padding: 14px 32px;
    background: var(--color-primary);
    border-radius: 4px;
    color: var(--color-background-primary, #fff);
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    transition: opacity 0.15s ease;
}
#bw-booking-announce .bw-announce__button:hover {
    opacity: 0.88;
    color: var(--color-background-primary, #fff);
}
#bw-booking-announce .bw-announce__button:focus-visible {
    outline: 3px solid var(--color-primary);
    outline-offset: 3px;
}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width: 768px) {
    #bw-booking-announce .bw-announce__inner {
        padding-left: 18px;
    }
    #bw-booking-announce .bw-announce__eyebrow {
        margin-bottom: 24px;
    }
}
@media (prefers-reduced-motion: reduce) {
    #bw-booking-announce .bw-announce__button {
        transition: none;
    }
}
