/* BR Booking: blue ink, predominantly white with ivory section accents. */
body.br-light-public {
  --br-ink: #163b66;
  --br-muted: #506984;
  --br-paper: #fff;
  --br-ivory: #fcfaf7;
  --br-line: #d5dee7;
  --bg: #fff;
  --bg-card: #fff;
  --bg-elevated: #fcfaf7;
  --bg-translucent: #fff;
  --bg-deep: #fcfaf7;
  --bg-body: #fff;
  --fg: #163b66;
  --fg-muted: #506984;
  --gold: #163b66;
  --gold-bright: #163b66;
  --gold-dim: #506984;
  --gold-glow: rgba(22,59,102,.05);
  --gold-border: #d5dee7;
  --gold-border-hover: #163b66;
  --chat-gold: #163b66;
  --chat-gold-dim: #506984;
  --chat-gold-glow: rgba(22,59,102,.07);
  --chat-bg: #fff;
  --chat-bg-surface: #fcfaf7;
  --chat-bg-elevated: #f4f6f9;
  --chat-fg: #163b66;
  --chat-fg-muted: #506984;
  --chat-shadow: 0 8px 32px rgba(22,59,102,.12);
  background: #fff !important;
  color: #163b66;
  color-scheme: light;
}
body.br-light-public .site-shell { background: #fff; color: var(--br-ink); }
body.br-light-public :is(h1,h2,h3,h4,h5,h6,p,label,legend) { color: var(--br-ink); text-shadow: none !important; }
body.br-light-public :is(.mobile-wallpaper,.hero-bg,.hero-photo-bg,.hero-photo-overlay,.page-hero-bg,.page-hero-overlay,.soirees-hero-bg,.soirees-hero-overlay,.contact-cta-bg,.hero-tab-bg,.hero-tab-overlay) { display: none !important; background: none !important; }
body.br-light-public :is(.hero,.hero-photo,.page-hero,.soirees-hero,.accueil-hero,.hero-tabs,.hero-new) { background: var(--br-ivory) !important; color: var(--br-ink); }
body.br-light-public :is(.site-nav,.nav-mobile,.nav-connexion-dropdown,.nav-ceremonies-menu,.top-login-bar) {
  background: #fff !important;
  color: var(--br-ink) !important;
  border-color: var(--br-line) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.br-light-public .nav-tabs-bar { background: var(--br-ivory) !important; border-color: var(--br-line) !important; backdrop-filter: none !important; }
body.br-light-public :is(.nav-tab-link,.nav-ceremonies-menu a,.nav-mobile a,.nav-connexion-dropdown a,.nav-tab-lock,.nav-tab-soon,.hero-tab,.tab-soon,.mobile-connexion-label,.mobile-connexion-link) { color: var(--br-ink) !important; }
body.br-light-public :is(.nav-tab-link.active,.nav-tab-link:hover,.nav-tab-link:focus-visible) { background: #fff !important; color: var(--br-ink) !important; border-color: var(--br-ink) !important; }
body.br-light-public :is(.nav-espace-btn,.nav-connexion-btn,.nav-connexion-always,.nav-hamburger,.nav-cta-btn,.nav-mobile .mobile-cta,.top-login-bar__link) {
  background: #fff !important; color: var(--br-ink) !important; border: 1px solid var(--br-ink) !important; box-shadow: none !important;
}
body.br-light-public .nav-hamburger span { background: var(--br-ink); }
body.br-light-public .nav-mobile { max-height: calc(100dvh - 64px); overflow-y: auto; }
body.br-light-public :is(.btn-primary,.btn-secondary,.form-submit,.cta-booking-submit,.booking-submit,.filter-btn,.genre-filter,.filter-tag,.contact-btn) {
  background: #fff !important; color: var(--br-ink) !important; border: 1px solid var(--br-ink) !important; box-shadow: none !important;
}
body.br-light-public :is(.btn-primary,.btn-secondary,.form-submit,.nav-espace-btn,.nav-cta-btn,.filter-btn):hover { background: var(--br-ivory) !important; color: var(--br-ink) !important; }
body.br-light-public :is(.btn-primary,.btn-secondary,.form-submit) * { color: inherit !important; }
body.br-light-public :is(.section-label,.hero-eyebrow,.hero-stat,.hero-stat-badge,.coming-soon-badge,.dj-genre-tag,.spot-card-badge,.soirees-stat,.soiree-time) { background: var(--br-ivory) !important; color: var(--br-ink) !important; border-color: var(--br-line) !important; box-shadow: none !important; }
body.br-light-public :is(.section-title,.section-title em,.hero-headline,.hero-headline .gold,.hero-new-headline,.hero-photo-headline,.page-title,.accueil-hero-title,.text-gold,.gold,.hero-photo-label,.hero-photo-sub,.page-hero p) { color: var(--br-ink) !important; text-shadow: none !important; -webkit-text-fill-color: var(--br-ink); }
body.br-light-public :is(.hero-sub,.section-desc,.hero-new-sub,.hero-photo-sub,.accueil-hero-sub,.text-muted) { color: var(--br-muted) !important; }
body.br-light-public :is(.about-section,.why-section,.services-overview,.prestations-stats,.djs-section,.restaurants-section,.materiel-section,.performers-section,.soirees-section,.contact-section,.dj-profile-section,.dj-bio-section,.dj-genre-section,.insta-gallery-section,.restaurant-profile-section,.restaurant-upcoming-section,.coming-soon-page,.mariage-intro,.mariage-packs,.qsnm-stats,.partenaire-cards,.partenaires-section) { background: #fff !important; }
body.br-light-public :is(.contact-cta,.cta-booking,.qsnm-cta,.partenaire-stats,.partenaire-cta,.why-section) { background: var(--br-ivory) !important; }
body.br-light-public :is(.service-card,.dj-card,.pack-card,.materiel-card,.restaurant-card,.performer-card,.soiree-card,.qsnm-stat,.spot-card,.partenaire-card,.contact-form,.contact-info,.prestations-badge,.cta-booking-form) { background: #fff !important; color: var(--br-ink) !important; border-color: var(--br-line) !important; box-shadow: 0 4px 18px rgba(22,59,102,.04) !important; }
body.br-light-public :is(.spot-card-name,.spot-card-cta,.spot-card-badge,.dj-name,.performer-card-name,.soiree-name,.pack-price,.pack-price em,.materiel-card-price em,.partenaire-name,.prestations-badge-num,.prestations-badge-text) { color: var(--br-ink) !important; text-shadow: none !important; }
body.br-light-public :is(.spot-card-photo-empty,.dj-card-photo-empty,.restaurant-card-photo-empty,.performer-photo-empty,.hero-stat-icon,.service-icon,.contact-icon) { background: var(--br-ivory) !important; color: var(--br-ink) !important; }
body.br-light-public :is(input:not([type=checkbox]):not([type=radio]),textarea,select) { background: #fff !important; color: var(--br-ink) !important; border-color: #aebed0 !important; color-scheme: light; }
body.br-light-public :is(input,textarea)::placeholder { color: #60788f !important; opacity: 1; }
body.br-light-public :is(input,textarea,select):focus { border-color: var(--br-ink) !important; box-shadow: 0 0 0 3px rgba(22,59,102,.1) !important; }
body.br-light-public :is(input[type=checkbox],input[type=radio]) { accent-color: var(--br-ink); }
body.br-light-public :focus-visible { outline-color: var(--br-ink); }
body.br-light-public :is(.explorer-nav::before,.prestations-stats::before,.site-footer::before,.hero-logo-glow::after) { display: none !important; }
/* Photographs remain intact. All captions sit on white panels with blue ink. */
body.br-light-public .explorer-nav { background: #fff !important; }
body.br-light-public .explorer-carousel-card { background: #fff; opacity: 1; border-color: var(--br-line) !important; box-shadow: 0 4px 16px rgba(22,59,102,.07) !important; }
body.br-light-public .explorer-carousel-card.is-active { border-color: var(--br-ink) !important; }
body.br-light-public .explorer-carousel-shade { background: none !important; }
body.br-light-public .explorer-carousel-image { height: 64%; }
body.br-light-public .explorer-carousel-content { left: 0; right: 0; bottom: 0; min-height: 36%; padding: 14px 18px; gap: 5px; background: #fff; color: var(--br-ink); text-shadow: none !important; }
body.br-light-public :is(.explorer-carousel-title,.explorer-carousel-kicker,.explorer-carousel-link) { color: var(--br-ink) !important; text-shadow: none !important; }
body.br-light-public .explorer-carousel-title { font-size: clamp(1.15rem,1.8vw,1.8rem); }
body.br-light-public .explorer-carousel-kicker { font-size: .58rem; }
body.br-light-public .explorer-carousel-link { font-size: .6rem; }
body.br-light-public .explorer-carousel-arrow { background: #fff !important; color: var(--br-ink) !important; border-color: var(--br-line) !important; box-shadow: 0 3px 12px rgba(22,59,102,.08) !important; }
body.br-light-public .explorer-carousel-dot { background: #c5d1de !important; box-shadow: none !important; }
body.br-light-public .explorer-carousel-dot.is-active { background: var(--br-ink) !important; }
body.br-light-public .site-footer { background: var(--br-ivory) !important; color: var(--br-ink) !important; }
body.br-light-public :is(.site-footer a,.site-footer h4,.footer-tagline,.footer-desc,.footer-copyright,.footer-bottom,.footer-bottom p,.footer-made,.footer-links a,.footer-cta,.footer-brand-name,.footer-brand-gold) { color: var(--br-ink) !important; }
body.br-light-public .footer-rule { background: var(--br-line) !important; box-shadow: none !important; }
body.br-light-public :is(.footer-bottom,.footer-cta,.footer-social-link) { border-color: var(--br-line) !important; background: transparent !important; }
body.br-light-public .footer-logo-img { filter: none !important; }
body.br-light-public .whatsapp-float { background: #fff !important; color: var(--br-ink) !important; border: 1px solid var(--br-line); box-shadow: 0 3px 16px rgba(22,59,102,.12) !important; }
body.br-light-public :is(#chatbot-toggle,.chatbot-header,#chatbot-window,.chatbot-input-area,.chatbot-contact-form,.chatbot-quick-btn) { background: #fff !important; color: var(--br-ink) !important; border-color: var(--br-line) !important; box-shadow: 0 4px 16px rgba(22,59,102,.08) !important; }
body.br-light-public :is(.chatbot-title,.chatbot-subtitle,.chatbot-close,.chatbot-msg,.chatbot-msg a,.chatbot-quick-btn,.chatbot-input,.chatbot-send) { color: var(--br-ink) !important; }
body.br-light-public :is(.chatbot-msg-bot,.chatbot-message.bot,.chatbot-bubble) { background: var(--br-ivory) !important; }
body.br-light-public :is(.chatbot-msg-user,.chatbot-message.user,.chatbot-send) { background: #edf2f7 !important; color: var(--br-ink) !important; }
@media (max-width: 600px) {
  body.br-light-public .explorer-carousel-content { padding: 14px 18px; }
  body.br-light-public .explorer-carousel-title { font-size: 1.6rem; }
}
/* One discreet contact entry point: WhatsApp. */
body.br-light-public :is(.contact-cta,.cta-booking,#chatbot-widget,a[href^="/contact"]) { display: none !important; }
body.br-light-public .whatsapp-float {
  bottom: max(20px, env(safe-area-inset-bottom)); right: 20px;
  width: 52px; height: 52px; padding: 0;
  justify-content: center; gap: 0;
}
body.br-light-public .whatsapp-float span { display: none; }
body.br-light-public .whatsapp-float svg { width: 27px; height: 27px; }
