/*
 * BC Billiards Divi 5 Child Theme — Modern Pool Hall Design
 * Dark theme with gold accent. Fully editable in Divi 5 Visual Builder.
 *
 * Color Palette:
 *   --bc-gold:    #FFC85B  (gold accent, headings, buttons, borders)
 *   --bc-dark:    #202020  (dark section backgrounds)
 *   --bc-black:   #000000  (main body background)
 *   --bc-light:   #F2F2F2  (body text)
 *   --bc-white:   #FFFFFF  (white)
 *   --bc-gray:    #616161  (muted text, borders)
 */

:root {
  --bc-gold: #FFC85B;
  --bc-dark: #202020;
  --bc-black: #000000;
  --bc-light: #F2F2F2;
  --bc-white: #FFFFFF;
  --bc-gray: #616161;
  --bc-body-font: 'Open Sans', sans-serif;
  --bc-heading-font: 'Oswald', sans-serif;
  --bc-accent-font: 'Barlow Condensed', sans-serif;
}

/* ==========================================================================
   Global Body
   ========================================================================== */

body.bc-billiards-theme,
body.bc-billiards-theme.dark-theme {
  background-color: var(--bc-black);
  color: var(--bc-light);
  font-family: var(--bc-body-font);
  font-size: 15px;
  line-height: 22px;
}

body.bc-billiards-theme h1,
body.bc-billiards-theme h2,
body.bc-billiards-theme h3,
body.bc-billiards-theme h4,
body.bc-billiards-theme h5,
body.bc-billiards-theme h6 {
  font-family: var(--bc-heading-font);
  text-transform: uppercase;
  color: var(--bc-gold);
}

body.bc-billiards-theme h1 {
  font-size: 67px;
  font-weight: 700;
  line-height: 1.5;
}

body.bc-billiards-theme h2 {
  font-size: 57px;
  font-weight: 700;
  line-height: 80px;
}

body.bc-billiards-theme h3 {
  font-size: 22px;
  font-weight: 700;
  line-height: 29px;
}

body.bc-billiards-theme h4 {
  font-size: 15px;
  font-weight: 400;
  font-family: var(--bc-body-font);
  text-transform: none;
  color: var(--bc-light);
}

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

body.bc-billiards-theme .et_pb_button,
body.bc-billiards-theme .et-db #et-boc .et_pb_button {
  font-family: var(--bc-heading-font);
  font-weight: 500;
  font-size: 14px;
  line-height: 21px;
  text-transform: uppercase;
  border-radius: 0;
  padding: 15px 37px 14px 36px;
  border: 1px solid var(--bc-gold);
  background: transparent;
  color: var(--bc-gold);
  transition: all 0.3s ease;
}

body.bc-billiards-theme .et_pb_button:hover,
body.bc-billiards-theme .et-db #et-boc .et_pb_button:hover {
  border-color: var(--bc-white);
  color: var(--bc-white);
  background: transparent;
}

/* ==========================================================================
   Navigation
   ========================================================================== */

body.bc-billiards-theme .et-menu a,
body.bc-billiards-theme .et_pb_menu .et-menu a {
  font-family: var(--bc-body-font);
  font-weight: 600;
  font-size: 15px;
  text-transform: uppercase;
  color: var(--bc-light) !important;
}

body.bc-billiards-theme .et-menu a:hover,
body.bc-billiards-theme .et_pb_menu .et-menu a:hover {
  color: var(--bc-gold) !important;
}

body.bc-billiards-theme .et-menu .current-menu-item > a {
  color: var(--bc-white) !important;
}

body.bc-billiards-theme .et-menu .sub-menu {
  background-color: var(--bc-gold);
}

body.bc-billiards-theme .et-menu .sub-menu a {
  color: var(--bc-dark) !important;
  border-bottom: 1px solid var(--bc-gold);
}

body.bc-billiards-theme .et-menu .sub-menu a:hover {
  background: var(--bc-white);
  color: var(--bc-dark) !important;
}

/* ==========================================================================
   Mobile Menu
   ========================================================================== */

body.bc-billiards-theme .et_mobile_menu {
  background: var(--bc-black);
}

body.bc-billiards-theme .et_mobile_menu a {
  color: var(--bc-light);
}

/* ==========================================================================
   Counters
   ========================================================================== */

body.bc-billiards-theme .et_pb_number_counter .percent p {
  color: var(--bc-gold);
  font-family: var(--bc-heading-font);
}

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

body.bc-billiards-theme .et_pb_pricing_table {
  background: var(--bc-black) !important;
}

body.bc-billiards-theme .et_pb_pricing .et_pb_pricing_table_top {
  border-bottom: 1px solid var(--bc-gray);
}

body.bc-billiards-theme .et_pb_pricing .et_pb_featured_table {
  border: 2px solid var(--bc-gold);
}

/* ==========================================================================
   Footer
   ========================================================================== */

body.bc-billiards-theme .et_pb_section.et_pb_footer {
  background-color: var(--bc-dark);
}

body.bc-billiards-theme .et_pb_footer a {
  color: var(--bc-white);
}

body.bc-billiards-theme .et_pb_footer a:hover {
  color: var(--bc-gold);
}

/* ==========================================================================
   Contact Form
   ========================================================================== */

body.bc-billiards-theme .et_pb_contact_form input,
body.bc-billiards-theme .et_pb_contact_form textarea,
body.bc-billiards-theme .et_pb_contact_form select {
  background: var(--bc-black);
  border: 1px solid var(--bc-gray);
  color: var(--bc-white);
  font-family: var(--bc-body-font);
}

body.bc-billiards-theme .et_pb_contact_form input:focus,
body.bc-billiards-theme .et_pb_contact_form textarea:focus {
  border-color: var(--bc-gold);
}

/* ==========================================================================
   Accordion / FAQ
   ========================================================================== */

body.bc-billiards-theme .et_pb_toggle,
body.bc-billiards-theme .et_pb_accordion .et_pb_toggle {
  background: var(--bc-black);
  border: 1px solid var(--bc-gray);
}

body.bc-billiards-theme .et_pb_toggle_open {
  border-color: var(--bc-gold) !important;
}

body.bc-billiards-theme .et_pb_toggle_title {
  font-family: var(--bc-heading-font);
  color: var(--bc-gold);
}

/* ==========================================================================
   Scroll to Top
   ========================================================================== */

body.bc-billiards-theme .et_pb_scroll_top {
  background: var(--bc-gold) !important;
  color: var(--bc-dark) !important;
  border: 1px solid var(--bc-dark);
  border-radius: 0;
  bottom: 30px;
  right: 30px;
}

/* ==========================================================================
   Service Blurb Cards
   ========================================================================== */

body.bc-billiards-theme .et_pb_blurb.bc-service-card {
  transition: all 0.3s ease;
}

body.bc-billiards-theme .et_pb_blurb.bc-service-card:hover {
  transform: translateY(-5px);
}

/* ==========================================================================
   Blog
   ========================================================================== */

body.bc-billiards-theme .et_pb_post .entry-title a {
  color: var(--bc-gold) !important;
  font-family: var(--bc-heading-font);
  text-transform: uppercase;
}

body.bc-billiards-theme .et_pb_post .post-meta {
  color: var(--bc-gray);
}

body.bc-billiards-theme .et_pb_post .post-meta a {
  color: var(--bc-white);
}

/* ==========================================================================
   Image Hover Effect
   ========================================================================== */

body.bc-billiards-theme .bc-image-zoom {
  overflow: hidden;
}

body.bc-billiards-theme .bc-image-zoom img {
  transition: transform 0.5s ease;
}

body.bc-billiards-theme .bc-image-zoom:hover img {
  transform: scale(1.08);
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 980px) {
  body.bc-billiards-theme h1 { font-size: 42px; }
  body.bc-billiards-theme h2 { font-size: 36px; line-height: 48px; }
}

@media (max-width: 767px) {
  body.bc-billiards-theme h1 { font-size: 27px; line-height: 37px; }
  body.bc-billiards-theme h2 { font-size: 28px; line-height: 38px; }
  body.bc-billiards-theme h3 { font-size: 18px; }
}
