/**
 * SBV Global Overwrite 0.7.0
 * Release 03 intentionally supersedes the former Avada visual shell site-wide.
 */
html { background: var(--sbv-surface); }
body.sbv-site {
  margin: 0;
  background: var(--sbv-surface);
  color: var(--sbv-text);
  font-family: var(--sbv-font-body);
  font-size: var(--sbv-text-base);
  line-height: var(--sbv-leading-body);
}

body.sbv-site :where(#wrapper, #main, .fusion-page-title-wrapper, .post-content) {
  font-family: var(--sbv-font-body);
}

body.sbv-site :where(h1,h2,h3,h4,h5,h6,.entry-title,.fusion-post-title) {
  color: var(--sbv-ink);
  font-family: var(--sbv-font-heading);
  font-weight: 700;
  letter-spacing: -.015em;
}

body.sbv-site h1 { font-size: var(--sbv-text-4xl); line-height: var(--sbv-leading-tight); }
body.sbv-site h2 { font-size: var(--sbv-text-3xl); line-height: var(--sbv-leading-heading); }
body.sbv-site h3 { font-size: var(--sbv-text-2xl); line-height: var(--sbv-leading-heading); }
body.sbv-site h4 { font-size: var(--sbv-text-xl); line-height: 1.25; }

body.sbv-site :where(p,li,td,th,input,select,textarea,button) { font-size: inherit; }
body.sbv-site :where(.post-content, .fusion-text) { color: var(--sbv-text); }
body.sbv-site :where(.post-content, .fusion-text) a { text-underline-offset: .18em; }

/* Avada legacy shell is intentionally no longer rendered visually. */
body.sbv-shell-enabled :where(.fusion-header-wrapper, .fusion-page-title-bar, .fusion-footer) { display: none !important; }

/* Neutral global content canvas. */
body.sbv-site #wrapper { background: var(--sbv-surface); }
body.sbv-site #main { background: var(--sbv-surface); }
body.sbv-site #main > .fusion-row { max-width: var(--sbv-content-width); }

/* Avada buttons inherit the new SBV control grammar. */
body.sbv-site :where(.fusion-button, a.fusion-button, button.fusion-button) {
  min-height: var(--sbv-control-height);
  border-radius: var(--sbv-radius-md) !important;
  font-family: var(--sbv-font-body) !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  border-color: var(--sbv-ink) !important;
  background: var(--sbv-ink) !important;
  color: #fff !important;
}
body.sbv-site :where(.fusion-button, a.fusion-button):hover {
  border-color: var(--sbv-ink-soft) !important;
  background: var(--sbv-ink-soft) !important;
  color: #fff !important;
}
body.sbv-site :where(.fusion-button, a.fusion-button):focus-visible {
  outline: 3px solid var(--sbv-focus) !important;
  outline-offset: 3px;
}

/* Forms */
body.sbv-site :where(input[type="text"],input[type="email"],input[type="tel"],input[type="search"],input[type="url"],select,textarea) {
  min-height: var(--sbv-control-height);
  border: 1px solid var(--sbv-border-strong);
  border-radius: var(--sbv-radius-sm);
  background: #fff;
  color: var(--sbv-text);
  font-family: var(--sbv-font-body);
}
body.sbv-site :where(input,select,textarea):focus-visible {
  border-color: var(--sbv-focus);
  outline: 3px solid color-mix(in srgb, var(--sbv-focus) 25%, transparent);
  outline-offset: 1px;
}

/* Tables */
body.sbv-site table { border-collapse: collapse; }
body.sbv-site :where(th,td) { border-color: var(--sbv-border); }
body.sbv-site th { color: var(--sbv-ink); font-weight: 700; }

/* Legacy blog/post surfaces become quieter and modern. */
body.sbv-site :where(.fusion-post-content, .fusion-blog-layout-grid .post, .fusion-blog-layout-timeline .post) {
  color: var(--sbv-text);
}
body.sbv-site :where(.fusion-post-content-wrapper, .fusion-blog-layout-grid .post) {
  border-color: var(--sbv-border) !important;
  box-shadow: none !important;
}
body.sbv-site :where(.fusion-meta-info, .fusion-post-content-container .fusion-single-line-meta) {
  color: var(--sbv-text-muted);
  font-size: var(--sbv-text-sm);
}

/* Remove decorative legacy motion where old pages still use it. */
@media (prefers-reduced-motion: reduce) {
  body.sbv-site .fusion-animated { animation: none !important; transform: none !important; opacity: 1 !important; }
}


/* Global legacy content links and accents */
body.sbv-site :where(.post-content, .fusion-text, .fusion-post-content) a:not(.fusion-button):not(.sbv-button) {
  color: var(--sbv-gold-text);
}
body.sbv-site :where(.fusion-title .title-sep, .fusion-separator-border) { border-color: var(--sbv-border) !important; }
body.sbv-site :where(.fusion-checklist .icon-wrapper, .fusion-content-boxes .heading .fontawesome-icon) { color: var(--sbv-gold-text) !important; }
