/*
Theme Name: Built By One Hello Child
Description: Built By One integration; Elementor owns the design tokens and page documents.
Author: Built By One
Version: 1.0.0
Template: hello-elementor
Text Domain: hello-elementor-child
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
/* Inherited theme defaults. Preserve the approved rhythm outside widget controls. */
html { font-size: 100%; }
body {
  color: var(--e-global-color-bboink);
  background: var(--e-global-color-bbopaper);
  font-family: var(--e-global-typography-bbobody-font-family);
  font-size: var(--e-global-typography-bbobody-font-size);
  font-weight: var(--e-global-typography-bbobody-font-weight);
  line-height: 1.8571428571; /* Existing inherited line-box metric; widget prose uses Body. */
  letter-spacing: normal;
}
p { margin-block: 0 1.75em; }
dl, table { margin-block: 0 1.5em; }
h1 {
  font-family: var(--e-global-typography-bboband-font-family);
  font-size: var(--e-global-typography-bboband-font-size);
  font-weight: var(--e-global-typography-bboband-font-weight);
  line-height: var(--e-global-typography-bboband-line-height);
  letter-spacing: var(--e-global-typography-bboband-letter-spacing);
  color: var(--e-global-color-bboink);
}
h2 {
  font-family: var(--e-global-typography-bbobandc-font-family);
  font-size: var(--e-global-typography-bbobandc-font-size);
  font-weight: var(--e-global-typography-bbobandc-font-weight);
  line-height: var(--e-global-typography-bbobandc-line-height);
  letter-spacing: var(--e-global-typography-bbobandc-letter-spacing);
  color: var(--e-global-color-bboink);
}
h3 {
  font-family: var(--e-global-typography-bbopanel-font-family);
  font-size: var(--e-global-typography-bbopanel-font-size);
  font-weight: var(--e-global-typography-bbopanel-font-weight);
  line-height: var(--e-global-typography-bbopanel-line-height);
  letter-spacing: var(--e-global-typography-bbopanel-letter-spacing);
  color: var(--e-global-color-bboink);
}
h4 {
  font-family: var(--e-global-typography-bbocard-font-family);
  font-size: var(--e-global-typography-bbocard-font-size);
  font-weight: var(--e-global-typography-bbocard-font-weight);
  line-height: var(--e-global-typography-bbocard-line-height);
  letter-spacing: var(--e-global-typography-bbocard-letter-spacing);
  color: var(--e-global-color-bboink);
}
h5 {
  font-family: var(--e-global-typography-bbosub-font-family);
  font-size: var(--e-global-typography-bbosub-font-size);
  font-weight: var(--e-global-typography-bbosub-font-weight);
  line-height: var(--e-global-typography-bbosub-line-height);
  letter-spacing: var(--e-global-typography-bbosub-letter-spacing);
  color: var(--e-global-color-bboink);
}
h6 {
  font-family: var(--e-global-typography-bbosub-font-family);
  font-size: var(--e-global-typography-bbosub-font-size);
  font-weight: var(--e-global-typography-bbosub-font-weight);
  line-height: var(--e-global-typography-bbosub-line-height);
  letter-spacing: var(--e-global-typography-bbosub-letter-spacing);
  color: var(--e-global-color-bboink);
}

/* Neutralise decorative table defaults; components own their edges and surfaces. */
table { font-size: inherit; }
table td, table th { line-height: inherit; border-color: var(--e-global-color-bbohair); }
table th { font-weight: var(--e-global-typography-bbocard-font-weight); }
table tbody > tr:nth-child(odd) > td, table tbody > tr:nth-child(odd) > th,
table tbody tr:hover > td, table tbody tr:hover > th { background-color: transparent; }
table caption + thead tr:first-child th, table colgroup + thead tr:first-child th,
table thead:first-child tr:first-child th { border-block-start: 0; }
:is(a, button, input, select, textarea, [tabindex]):focus-visible { box-shadow: none; }

.skip-link:focus {
  clip: auto; clip-path: none; width: auto; height: auto;
  top: 0; left: 0; z-index: 1000; padding: 1rem;
  background: var(--e-global-color-bbopaper); color: var(--e-global-color-bboink);
}
/* Definition labels retain their existing emphasis across all specifications. */
dt { font-weight: var(--e-global-typography-bbocard-font-weight); }
/* Keep label line boxes aligned with the established form rhythm. */
label { vertical-align: baseline; }
