:root {
    --ss-color-89296: #006bbb;
    --ss-color-89296-dark: #0052a2;
    --ss-color-89296-rgb-values: 0, 107, 187;
    /* v2 dark theme accents */
    --gold-color: #d4af37;
    --gold-color-rgb-values: 212, 175, 55;
    --text-on-dark: #f5f5f5;
}


.header-style-logo-text {
  --ss-header-background-color: #000000;
  --ss-header-background-alpha: calc(100% * 1.0);
}

.header-style-logo-text .branding {
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
}

.header-style-logo-text .logo {
  width: 29.593810444874276%;
}

.header-style-logo-text h1 {
  color: var(--gold-color);
    font-family: 'Viga', sans-serif;
  font-size: 39px;
}

.header-style-logo-text h2 {
  color: var(--text-on-dark);
    font-family: 'Source Sans Pro', sans-serif;
  font-size: 22px;
}


.primary-navigation,
.primary-navigation .page-listing a div,
.primary-navigation .page-listing ul,
.location-quick-links {
  background-color: #0b0b0b;
}

  /* Duplicated in _primary_nav.scss */
  /* @media (min-width: $desktop-breakpoint - 1) { */
  @media (max-width: 967px) {
    .primary-navigation .page-listing {
      background-color: var(--ss-color-89296);
    }
  }

  .primary-navigation .menu-toggle {
    background-color: rgba(var(--ss-color-89296-rgb-values), 0.9);
  }

  .primary-navigation .page-listing li,
  .location-quick-links a {
    border-color: rgba(255, 255, 255, 0.25);
  }

    /* Duplicated in _primary_nav.scss */
    /* @media (min-width: $desktop-breakpoint - 1) { */
    @media (max-width: 967px) {
      .primary-navigation .page-listing > li {
        border-color: rgba(255, 255, 255, 0.8);
      }
    }

  .primary-navigation a,
  .primary-navigation .arrow,
  .location-quick-links a {
    color: var(--text-on-dark);
  }

    .primary-navigation a div:hover {
      border-color: var(--gold-color);
      color: var(--gold-color);
    }

    .primary-navigation a.active div {
      background: #1a1a1a;
      color: var(--gold-color);
    }

    .primary-navigation .page-listing ul ul {
      background: #111111;
    }

      .primary-navigation .page-listing ul li {
        border-color: rgba(255, 255, 255, 0.5);
      }

  /* @media (min-width: $desktop-breakpoint) { */
  @media (min-width: 968px) {
    .layout-one_column_wide_nav_in_header .primary-navigation a div {
      color: var(--ss-color-89296);
    }

    .layout-one_column_wide_nav_in_header .primary-navigation .page-listing ul {
      background-color: #ffffff;
    }

    .layout-one_column_wide_nav_in_header .primary-navigation .page-listing ul li {
      border-color: rgba(var(--ss-color-89296-rgb-values), 0.5);
    }

    .layout-one_column_wide_nav_in_header .primary-navigation a div:hover {
      border-color: var(--ss-color-89296);
    }
  }

.site-search--overlay {
  background: rgba(var(--ss-color-89296-rgb-values), 0.8) !important;
}

.site-search--overlay input[type="text"],
.site-search--overlay form button,
.site-search--overlay .site-search:after {
  color: #ffffff;
}

.site-search--overlay input[type="text"] {
  border-bottom-color: rgba(255, 255, 255, 0.8);
}

.site-search--overlay input[type="text"]::placeholder {
  color: rgba(255, 255, 255, 0.8);
  opacity: 1;
}


.site-container {
    font-family: 'Open Sans', sans-serif;
}

.primary-navigation,
.location-quick-links {
    font-family: 'Viga', sans-serif;
}

.primary-navigation .page-listing li {
  font-size: 17px;
}

.post--title,
.post-column_set .column--title,
.post-gallery .gallery-photo--title,
.post-menu .item--name,
.post-pricing_table .plan--title,
.location-title,
.footer-container .footer-heading,
.footer-container .location_details .menu {
    font-family: 'Ubuntu', sans-serif;
}


.post-button {

    border-style: none;

  border-radius: 7px;


    box-shadow: none;
}


body {
  background-color: #000000;
  color: var(--text-on-dark);
}

body:before {
    background-image: none;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}


/* Full-site dark theme overrides */
:root {
  --brand-black: #000000;
  --brand-white: #ffffff;
  --brand-gold: #D4AF37; /* headings, highlights */
  --brand-gold-dark: #b8891f;
}

html, body {
  background-color: var(--brand-black) !important;
  color: var(--brand-white) !important;
}

/* Typography */
h1, h2, h3, h4, h5, h6,
.post--title h1, .post--title h2,
.footer-heading h1, .footer-heading h2 {
  color: var(--brand-gold) !important;
}

p, li, .wysiwyg-text, .description, .copy,
.location, .location__content, .footer__content,
.post-body, .headings h1 a, .headings h1 { 
  color: var(--brand-white) !important;
}

/* Links */
a { color: var(--brand-white) !important; }
a:hover, a:focus { color: var(--brand-gold) !important; }

/* Navigation */
.primary-header, .primary-navigation, .primary-navigation .inner-wrap,
.primary-navigation .page-listing a {
  background-color: var(--brand-black) !important;
  color: var(--brand-white) !important;
}
.primary-navigation .page-listing a:hover,
.primary-navigation .page-listing a.active,
.primary-navigation .page-listing .active a {
  color: var(--brand-gold) !important;
}

/* Global containers & sections */
.site-container, main, .post-container, .post, .post-body,
.bg-outer, .bg-inner, .section,
.footer-container, .footer-inner-container, .footer {
  background-color: var(--brand-black) !important;
  background-image: none !important;
}

/* Override per-post variables to kill white backgrounds & overlays */
[id^="post_"] {
  --ss-post-background-color: var(--brand-black) !important;
  --ss-post-overlay: rgba(0, 0, 0, 0.7) !important;
  --ss-post-background-image: none !important;
  --ss-post-background-image-large: none !important;
}

/* Buttons */
.post-button, a.post-button, .button, .btn {
  background-color: var(--brand-gold) !important;
  color: var(--brand-black) !important;
  border-color: var(--brand-gold) !important;
}

/* Forms */
input, textarea, select {
  background-color: #111 !important;
  color: var(--brand-white) !important;
  border: 1px solid var(--brand-gold) !important;
}
input::placeholder, textarea::placeholder { color: #bbbbbb !important; }

/* Footer */
.footer-container { border-top: 1px solid #222 !important; }
.footer a { color: var(--brand-white) !important; }
.footer a:hover { color: var(--brand-gold) !important; }

/* Images remain crisp; do not dim logos */
.logo img { filter: none !important; }

/* Misc content blocks */
.gallery-photos-wrapper, .gallery-photo, .post-gallery,
.post-feature, .post-text { background-color: transparent !important; }


/* Headings and location information/details links */
.location-title,
.footer-container .footer-heading {
  color: var(--gold-color);
}

.footer-container nav ul ul {
  background-color: #0f0f0f;
}

/* Location email address links */
.footer-container div.locations a {
  color: var(--gold-color);
}

.footer-container .location__icon {
  color: var(--gold-color);
}

/* Copyright */
.footer-container div.copyright {
  color: var(--text-on-dark);
}

.footer-container div.copyright a {
  color: var(--gold-color);
}

.footer-container .connect a {
  background-color: var(--gold-color);
  color: #121212;
}

.footer-container .connect .fab {
  color: #ffffff;
}

/* Appointment page styles - v2 dark theme adjustments */
.appt-hero { color: var(--text-on-dark); }
.appt-hero .overlay { backdrop-filter: saturate(130%) brightness(1.05); }
.appt-hero h1 { margin: 0; font-size: 40px; line-height: 1.2; }
.appt-hero p { margin-top: 8px; font-size: 18px; opacity: 0.9; }

.container { max-width: 1100px; margin: 0 auto; padding: 40px 24px; }
.form-card { background: #0f0f0f; border: 1px solid #222; box-shadow: 0 10px 30px rgba(0,0,0,0.35); }

.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 720px) { .grid-2 { grid-template-columns: 1fr; } }

label { display: block; font-weight: 600; margin-bottom: 6px; color: var(--text-on-dark); }
.text, select, textarea { width: 100%; box-sizing: border-box; padding: 12px 12px; background: #101010; color: var(--text-on-dark); border: 1px solid #2a2a2a; border-radius: 8px; font-size: 16px; outline: none; }
.text:focus, select:focus, textarea:focus { border-color: var(--gold-color); box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.25); }
textarea { resize: vertical; }

.captcha-box { margin-top: 12px; background: #0f0f0f; border: 1px dashed #2a2a2a; border-radius: 8px; padding: 14px; }
.captcha-label { font-weight: 600; color: var(--text-on-dark); margin-bottom: 8px; }
.align-center { align-items: center; }

.actions { text-align: right; margin-top: 18px; }
.btn { display: inline-block; padding: 12px 18px; border-radius: 8px; font-weight: 700; text-decoration: none; border: none; cursor: pointer; }
.btn-primary { background: var(--gold-color); color: #121212; }
.btn-primary:hover { filter: brightness(1.08); }


/* Make images pop subtly on dark background */
img { box-shadow: 0 12px 28px rgba(0,0,0,0.6); }


/* Pricing table dark theme fixes */
.post-pricing_table .plans-container .plan {
  background-color: #0f0f0f !important;
  border: 1px solid #222 !important;
}
.post-pricing_table .plan--price,
.post-pricing_table .plan--description,
.post-pricing_table .plan .wysiwyg-text,
.post-pricing_table .plan { color: var(--brand-white) !important; }
.post-pricing_table .plan--price { color: var(--brand-gold) !important; }
.post-pricing_table .plan--description a { color: var(--brand-gold) !important; }


/* Reduce section spacing site-wide for dark theme */
.posts .post,
.post-container .post,
[id^="post_"] {
  --ss-post-vertical-spacing: 56px !important;
}

/* Make native date/time picker icons visible on dark inputs */
.text[type="date"],
.text[type="time"],
input[type="date"],
input[type="time"] {
  color-scheme: dark; /* Use dark UI controls so icons appear */
}

/* WebKit/Blink calendar/clock icons */
.text[type="date"]::-webkit-calendar-picker-indicator,
.text[type="time"]::-webkit-calendar-picker-indicator,
input[type="date"]::-webkit-calendar-picker-indicator,
input[type="time"]::-webkit-calendar-picker-indicator {
  filter: invert(1) brightness(1.3) contrast(1.1);
  opacity: 0.95;
}

/* Spin buttons and clear buttons on time/date */
input[type="time"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-clear-button {
  filter: invert(1) brightness(1.2);
}

/* Stronger hero spacing fix: shrink hero backgrounds and remove dividers on dark theme */
.post.post-hero_image .bg-outer,
.post.post-hero_image .bg-outer .bg-inner,
.post.post-hero_image .bg-inner {
  height: 0 !important;
  min-height: 0 !important;
  background: none !important;
}

.post.post-hero_image {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.post.post-hero_image .divider-clip,
.post .divider-clip {
  display: none !important;
}

/* Tighten top heading block spacing */
.posts .post .post--title {
  margin-top: 8px !important;
  margin-bottom: 10px !important;
}

/* Date/Time picker indicator spacing to avoid text overlap */
.text[type="date"], .text[type="time"], input[type="date"], input[type="time"] {
  padding-right: 36px !important;
}

