/* Reset + base typography */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
	margin: 0;
	font-family: var(--bc-font-body);
	font-size: var(--bc-text-md-size);
	line-height: var(--bc-text-md-leading);
	color: var(--bc-text-950);
	background: var(--bc-bg-white);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

img, svg, video { max-width: 100%; height: auto; display: block; }

a { color: inherit; text-decoration: none; }
a:hover { color: var(--bc-brand-600); }

button { font: inherit; cursor: pointer; border: 0; background: none; padding: 0; color: inherit; }

ul, ol { padding-left: 1.25em; margin: 0; }

h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 300; font-family: var(--bc-font-display); color: var(--bc-text-950); }
p { margin: 0; }

/* Tag/eyebrow text — Kanit Bold caps */
.bc-tag {
	font-family: var(--bc-font-tag);
	font-weight: 700;
	font-size: var(--bc-text-sm-size);
	line-height: var(--bc-text-sm-leading);
	letter-spacing: 0;
	color: var(--bc-brand-600);
}

/* Display headings */
.bc-display-2xl {
	font-size: var(--bc-display-2xl-size);
	line-height: var(--bc-display-2xl-leading);
	letter-spacing: var(--bc-display-2xl-tracking);
	font-weight: var(--bc-display-2xl-weight);
}
.bc-display-lg {
	font-size: var(--bc-display-lg-size);
	line-height: var(--bc-display-lg-leading);
	letter-spacing: var(--bc-display-lg-tracking);
	font-weight: var(--bc-display-lg-weight);
}
.bc-display-xs {
	font-family: var(--bc-font-tag);
	font-size: var(--bc-display-xs-size);
	line-height: var(--bc-display-xs-leading);
	font-weight: var(--bc-display-xs-weight);
}

.bc-text-xl  { font-size: var(--bc-text-xl-size);  line-height: var(--bc-text-xl-leading);  }
.bc-text-lg  { font-size: var(--bc-text-lg-size);  line-height: var(--bc-text-lg-leading);  }
.bc-text-md  { font-size: var(--bc-text-md-size);  line-height: var(--bc-text-md-leading);  }
.bc-text-sm  { font-size: var(--bc-text-sm-size);  line-height: var(--bc-text-sm-leading);  }
.bc-text-xs  { font-size: var(--bc-text-xs-size);  line-height: var(--bc-text-xs-leading);  }

.bc-text-muted    { color: var(--bc-text-600); }
.bc-text-brand    { color: var(--bc-brand-600); }
.bc-text-on-dark  { color: var(--bc-text-25); }

.sr-only {
	position: absolute; width: 1px; height: 1px; padding: 0;
	margin: -1px; overflow: hidden; clip: rect(0,0,0,0);
	white-space: nowrap; border: 0;
}

/* LiveCanvas editor-aware shortcode wrappers (see bridge plugin
 * bc_lc_wrap_shortcode + wp beaudoin wrap-lc-shortcodes). The wrapper
 * <div class="live-shortcode"> is required by LC's editor JS to
 * find and live-render shortcodes inside the preview iframe, but it
 * survives to public output. display: contents makes the wrapper
 * layout-invisible so the flex/grid rules under .bc-container
 * continue to see the rendered shortcode's content as a direct
 * child of the container. */
.live-shortcode, .lc-rendered-shortcode-wrap { display: contents; }
