/*
Theme Name: Buzz Mountain
Theme URI: https://buzzmountain.com
Author: Buzz Mountain
Author URI: https://buzzmountain.com
Description: A warm, rounded block theme for Buzz Mountain — direct response marketing, branding, podcasting and advertising for manufacturers, with a focus on the composites industry. Video hero, full site editing, no page builder, no plugin dependencies.
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.1.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: buzz-mountain
Tags: business, blog, one-column, two-columns, block-patterns, full-site-editing, custom-colors, custom-logo, custom-menu, editor-style, featured-images, template-editing, wide-blocks, accessibility-ready
*/

/* ==========================================================================
   Buzz Mountain — theme styles (v1.1, warm/rounded system)
   1 Base  2 Layout  3 Header  4 Footer  5 Buttons  6 Components
   7 Patterns  8 Posts  9 Forms  10 Floating contact  11 Motion  12 Print
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Base
   -------------------------------------------------------------------------- */

:root {
	--bm-header-h: 80px;
	--bm-radius: 14px;
	--bm-radius-lg: 28px;
	--bm-radius-xl: 44px;
	--bm-ease: cubic-bezier(.22, .61, .36, 1);
	--bm-line: rgba(122, 135, 129, .22);
	--bm-line-dark: rgba(211, 219, 214, .16);
	--bm-line-ember: rgba(242, 106, 33, .35);
	--bm-speed: .45s;
}

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

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

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
	font-variant-numeric: lining-nums;
}

:target { scroll-margin-top: calc(var(--bm-header-h) + 2rem); }

html:focus-within { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
	html:focus-within { scroll-behavior: auto; }
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid var(--wp--preset--color--ember);
	outline-offset: 3px;
	border-radius: 6px;
}

::selection {
	background: var(--wp--preset--color--peach);
	color: var(--wp--preset--color--carbon);
}

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

h1, h2, h3, h4 { text-wrap: balance; }

hr.wp-block-separator {
	border: 0;
	border-top: 1px solid var(--bm-line);
	opacity: 1;
}

.bm-dark hr.wp-block-separator,
.has-carbon-background-color hr.wp-block-separator,
.has-graphite-background-color hr.wp-block-separator { border-top-color: var(--bm-line-dark); }

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

.skip-link.screen-reader-text:focus {
	background: var(--wp--preset--color--ember);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	z-index: 9999;
}

/* --------------------------------------------------------------------------
   2. Layout
   -------------------------------------------------------------------------- */

/* Dark bands (ink / deep sage): invert text. */
.bm-dark,
.has-carbon-background-color,
.has-graphite-background-color { color: var(--wp--preset--color--fog); }

.bm-dark :where(h1, h2, h3, h4, h5),
.has-carbon-background-color :where(h1, h2, h3, h4, h5),
.has-graphite-background-color :where(h1, h2, h3, h4, h5) { color: var(--wp--preset--color--white); }

.bm-dark :where(a:not(.wp-element-button)),
.has-carbon-background-color :where(a:not(.wp-element-button)),
.has-graphite-background-color :where(a:not(.wp-element-button)) { color: var(--wp--preset--color--white); }

.bm-dark :where(a:not(.wp-element-button)):hover { color: var(--wp--preset--color--amber); }

/* Orange band: ink text on ember→amber. */
.bm-orange,
.has-ember-heat-gradient-background,
.has-ember-background-color { color: var(--wp--preset--color--carbon); }

.bm-orange :where(h1, h2, h3, h4, h5),
.has-ember-heat-gradient-background :where(h1, h2, h3, h4, h5) { color: var(--wp--preset--color--carbon); }

/* Legacy texture hooks from v1.0 — now a whisper of warmth, not a blueprint. */
.bm-grid,
.bm-weave { position: relative; isolation: isolate; }

.bm-grid::before,
.bm-weave::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background: radial-gradient(ellipse 70% 60% at 85% 10%, rgba(248, 164, 76, .12) 0%, transparent 70%);
}

/* Top-level page sections are full-bleed bands. The post-content container
   would otherwise squeeze any group that isn't explicitly align-full down to
   the 760px reading column — background and all. */
.wp-block-post-content > .wp-block-group,
.wp-block-post-content > .wp-block-columns {
	max-width: none;
}

/* Big rounded corner cut — CDMG's signature curve, applied to section bottoms. */
.bm-curve { border-bottom-left-radius: clamp(28px, 7vw, 96px); }
.bm-curve-r { border-bottom-right-radius: clamp(28px, 7vw, 96px); }
.bm-curve-both {
	border-bottom-left-radius: clamp(28px, 7vw, 96px);
	border-bottom-right-radius: clamp(28px, 7vw, 96px);
}

.bm-rule-top { border-top: 1px solid var(--bm-line); }
.bm-rule-bottom { border-bottom: 1px solid var(--bm-line); }

/* --------------------------------------------------------------------------
   3. Header — light, floating, pill nav
   -------------------------------------------------------------------------- */

.bm-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(251, 245, 238, .86) !important;
	-webkit-backdrop-filter: saturate(160%) blur(14px);
	backdrop-filter: saturate(160%) blur(14px);
	border-bottom: 1px solid transparent;
	color: var(--wp--preset--color--steel) !important;
	transition: background var(--bm-speed) var(--bm-ease), border-color var(--bm-speed) var(--bm-ease), box-shadow var(--bm-speed) var(--bm-ease);
}

.admin-bar .bm-header { top: 32px; }

@media (max-width: 782px) {
	.admin-bar .bm-header { top: 46px; }
}

.bm-header.is-stuck {
	background: rgba(251, 245, 238, .96) !important;
	border-bottom-color: var(--bm-line);
	box-shadow: 0 10px 30px rgba(62, 79, 72, .08);
}

.bm-header :where(h1, h2, h3, h4, h5) { color: var(--wp--preset--color--carbon); }

.bm-header .wp-block-site-title a { color: var(--wp--preset--color--carbon); }

.bm-header .wp-block-navigation a {
	color: var(--wp--preset--color--steel);
	font-weight: 600;
}

.bm-header .wp-block-navigation > ul > .wp-block-navigation-item > a,
.bm-header .wp-block-navigation > ul > .wp-block-navigation-submenu > a,
.bm-header .wp-block-navigation > ul > .wp-block-navigation-submenu > button {
	padding: .5rem .9rem;
	border-radius: 999px;
	transition: background .25s var(--bm-ease), color .25s var(--bm-ease);
}

.bm-header .wp-block-navigation > ul > .wp-block-navigation-item:hover > a,
.bm-header .wp-block-navigation > ul > .wp-block-navigation-item:hover > button,
.bm-header .wp-block-navigation > ul > .current-menu-item > a,
.bm-header .wp-block-navigation > ul > .current-menu-ancestor > a {
	background: var(--wp--preset--color--peach);
	color: var(--wp--preset--color--carbon);
}

.bm-header .wp-block-navigation .wp-block-navigation__submenu-container {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--bm-line);
	border-radius: var(--bm-radius-lg);
	box-shadow: 0 24px 60px rgba(62, 79, 72, .16);
	padding: .5rem;
	min-width: 270px;
}

.bm-header .wp-block-navigation__submenu-container .wp-block-navigation-item a {
	border-radius: 999px;
	padding: .65rem 1rem;
	color: var(--wp--preset--color--steel);
	transition: background .2s var(--bm-ease), color .2s var(--bm-ease);
}

.bm-header .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover {
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--carbon);
}

/* Mobile overlay */
.wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--cream) !important;
	padding: 1.25rem clamp(1.25rem, 5vw, 3rem) 3rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.7rem;
	font-weight: 600;
	letter-spacing: -.02em;
	color: var(--wp--preset--color--carbon);
	padding-block: .35rem;
	background: none !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding-left: .25rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a {
	font-size: 1.1rem;
	font-weight: 500;
	color: var(--wp--preset--color--steel);
}

.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close { color: var(--wp--preset--color--carbon); }

.bm-header-phone {
	font-family: var(--wp--preset--font-family--display);
	font-size: .9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--steel) !important;
	text-decoration: none !important;
	white-space: nowrap;
}

.bm-header-phone:hover { color: var(--wp--preset--color--ember) !important; }

@media (max-width: 1100px) {
	.bm-header-phone { display: none; }
}

.bm-header .wp-block-button__link { white-space: nowrap; }

@media (max-width: 782px) {
	.bm-header .wp-block-button__link {
		padding: 0.6rem 1.1rem !important;
		font-size: 0.8125rem !important;
	}
}

@media (max-width: 420px) {
	.bm-header .wp-block-buttons { display: none; }
}

.bm-header .wp-block-site-logo img,
.bm-header .bm-logo-link img { max-width: min(220px, 52vw); height: auto; }
.bm-logo-link { margin: 0; line-height: 0; }
.bm-logo-link a { display: inline-block; }

/* --------------------------------------------------------------------------
   4. Footer — ink, rounded top
   -------------------------------------------------------------------------- */

.bm-footer {
	background: var(--wp--preset--color--carbon);
	border-top-left-radius: clamp(28px, 7vw, 96px);
	border-top-right-radius: clamp(28px, 7vw, 96px);
	margin-top: -1px;
}

.bm-footer a { text-decoration: none; }
.bm-footer a:hover { text-decoration: underline; text-underline-offset: 4px; }

.bm-footer-heading {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: .8125rem !important;
	font-weight: 700 !important;
	letter-spacing: .04em !important;
	text-transform: uppercase;
	color: var(--wp--preset--color--amber) !important;
}

.bm-footer .wp-block-navigation ul {
	display: flex;
	flex-direction: column;
	gap: .6rem;
	align-items: flex-start;
}

/* --------------------------------------------------------------------------
   5. Buttons — pills
   -------------------------------------------------------------------------- */

.wp-block-button__link {
	border-radius: 999px !important;
	transition: transform .25s var(--bm-ease), background-color .25s var(--bm-ease), color .25s var(--bm-ease), box-shadow .25s var(--bm-ease);
}

.wp-block-button__link:hover { transform: translateY(-2px); }
.wp-block-button__link:active { transform: translateY(0); }

.wp-block-button:not(.is-style-bm-outline):not(.is-style-bm-link) .wp-block-button__link:hover {
	box-shadow: var(--wp--preset--shadow--ember);
}

/* Outline */
.is-style-bm-outline .wp-block-button__link {
	background: transparent !important;
	color: var(--wp--preset--color--carbon) !important;
	box-shadow: inset 0 0 0 2px var(--wp--preset--color--carbon);
}

.is-style-bm-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--carbon) !important;
	color: var(--wp--preset--color--white) !important;
}

.bm-dark .is-style-bm-outline .wp-block-button__link,
.has-carbon-background-color .is-style-bm-outline .wp-block-button__link,
.has-graphite-background-color .is-style-bm-outline .wp-block-button__link {
	color: var(--wp--preset--color--white) !important;
	box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .55);
}

.bm-dark .is-style-bm-outline .wp-block-button__link:hover,
.has-carbon-background-color .is-style-bm-outline .wp-block-button__link:hover,
.has-graphite-background-color .is-style-bm-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--carbon) !important;
	box-shadow: inset 0 0 0 2px var(--wp--preset--color--white);
}

/* On the orange band, primary buttons flip to ink so they still read. */
.bm-orange .wp-block-button:not(.is-style-bm-outline):not(.is-style-bm-link) .wp-block-button__link,
.has-ember-heat-gradient-background .wp-block-button:not(.is-style-bm-outline):not(.is-style-bm-link) .wp-block-button__link {
	background: var(--wp--preset--color--carbon) !important;
	color: var(--wp--preset--color--white) !important;
}

.bm-orange .wp-block-button:not(.is-style-bm-outline):not(.is-style-bm-link) .wp-block-button__link:hover {
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--carbon) !important;
	box-shadow: 0 12px 30px rgba(31, 41, 37, .25);
}

.bm-orange .is-style-bm-outline .wp-block-button__link {
	color: var(--wp--preset--color--carbon) !important;
	box-shadow: inset 0 0 0 2px rgba(31, 41, 37, .55);
}

/* Arrow link */
.is-style-bm-link .wp-block-button__link {
	background: transparent !important;
	color: var(--wp--preset--color--ember) !important;
	padding: .35rem 0 !important;
	box-shadow: none;
	border-radius: 0 !important;
	border-bottom: 2px solid transparent;
}

.is-style-bm-link .wp-block-button__link::after {
	content: " →";
	display: inline-block;
	transition: transform .25s var(--bm-ease);
}

.is-style-bm-link .wp-block-button__link:hover {
	transform: none;
	border-bottom-color: var(--wp--preset--color--ember);
}

.is-style-bm-link .wp-block-button__link:hover::after { transform: translateX(4px); }

/* --------------------------------------------------------------------------
   6. Components
   -------------------------------------------------------------------------- */

/* 6.1 Eyebrow → orange pill label.
   The <p> stays block-level so WordPress's constrained layout can position it
   like any other paragraph; the inner <span> is the pill. */
.bm-eyebrow {
	display: block;
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: .875rem !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	text-transform: none;
	line-height: 1.3;
	margin-bottom: var(--wp--preset--spacing--20) !important;
}

.bm-eyebrow::before { content: none; }

.bm-eyebrow > span {
	display: inline-block;
	color: var(--wp--preset--color--white);
	background: var(--wp--preset--color--ember);
	padding: .45rem 1.05rem;
	border-radius: 999px;
}

.bm-dark .bm-eyebrow > span { background: var(--wp--preset--color--amber); color: var(--wp--preset--color--carbon); }
.bm-orange .bm-eyebrow > span { background: var(--wp--preset--color--carbon); color: var(--wp--preset--color--white); }

/* Highlighted word in a headline */
.bm-hl {
	color: var(--wp--preset--color--ember);
	background: none;
	-webkit-text-fill-color: currentColor;
}

/* 6.2 Cards */
.is-style-bm-card,
.bm-card {
	border: 1px solid var(--bm-line);
	border-radius: var(--bm-radius-lg);
	background: var(--wp--preset--color--white);
	transition: transform .35s var(--bm-ease), box-shadow .35s var(--bm-ease), border-color .35s var(--bm-ease);
	position: relative;
	overflow: hidden;
	height: 100%;
}

.bm-dark .bm-card,
.has-carbon-background-color .bm-card,
.has-graphite-background-color .bm-card {
	background: rgba(255, 255, 255, .06);
	border-color: var(--bm-line-dark);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}

.bm-orange .bm-card,
.has-ember-heat-gradient-background .bm-card {
	background: rgba(255, 255, 255, .92);
	border-color: transparent;
}

.bm-card--hover::before { content: none; }

.bm-card--hover:hover {
	transform: translateY(-6px);
	box-shadow: var(--wp--preset--shadow--lift);
	border-color: var(--bm-line-ember);
}

.bm-card--link .bm-card-title a::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

.bm-card-title a { text-decoration: none; }
.bm-card-title a:hover { color: var(--wp--preset--color--ember); }

/* An odd card at the end of the services grid spans the full row, with its
   copy on the left and the checklist on the right, so nothing is orphaned. */
@media (min-width: 782px) {
	.bm-services .bm-card:nth-child(odd):last-child {
		grid-column: 1 / -1;
		display: grid;
		grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
		column-gap: clamp(2rem, 5vw, 4rem);
		align-items: start;
	}
	.bm-services .bm-card:nth-child(odd):last-child > * {
		grid-column: 1;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}
	.bm-services .bm-card:nth-child(odd):last-child > .bm-check {
		grid-column: 2;
		grid-row: 1 / span 4;
		align-self: center;
		margin-top: 0;
	}
}

/* 6.3 Index / small caps label */
.bm-index {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: .8125rem !important;
	font-weight: 700 !important;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ember) !important;
}

/* 6.4 Stats */
.bm-stat-value {
	font-family: var(--wp--preset--font-family--display) !important;
	font-weight: 700 !important;
	line-height: .95 !important;
	letter-spacing: -.035em !important;
	font-size: clamp(2.8rem, 6.5vw, 4.4rem) !important;
	color: var(--wp--preset--color--ember) !important;
	background: none;
	-webkit-text-fill-color: currentColor;
}

.bm-stat-label {
	font-size: 1rem !important;
	color: var(--wp--preset--color--steel) !important;
	line-height: 1.45;
	margin-top: .6rem !important;
}

.bm-stat-note {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: .75rem !important;
	font-weight: 600;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ash) !important;
	margin-top: .5rem !important;
}

.bm-dark .bm-stat-label { color: var(--wp--preset--color--fog) !important; }

/* 6.5 Logo wall */
.bm-logos {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: .75rem;
}

.bm-logo {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--bm-line);
	border-radius: var(--bm-radius);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 96px;
	padding: 1.25rem;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: .95rem;
	color: var(--wp--preset--color--ash);
	text-align: center;
	transition: color .3s var(--bm-ease), border-color .3s var(--bm-ease);
}

.bm-logo:hover { color: var(--wp--preset--color--carbon); border-color: var(--bm-line-ember); }

/* 6.6 Checklist */
.bm-check {
	list-style: none;
	padding-left: 0 !important;
	display: grid;
	gap: .85rem;
}

.bm-check li {
	position: relative;
	padding-left: 2.1rem;
	line-height: 1.5;
}

.bm-check li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .2em;
	width: 1.3rem;
	height: 1.3rem;
	border-radius: 50%;
	background: var(--wp--preset--color--peach);
	-webkit-mask: none;
	mask: none;
}

.bm-check li::after {
	content: "";
	position: absolute;
	left: .32rem;
	top: calc(.2em + .32rem);
	width: .66rem;
	height: .66rem;
	background: var(--wp--preset--color--ember);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.3 5.7 9 17l-5.3-5.3 1.4-1.4L9 14.2l9.9-9.9z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.3 5.7 9 17l-5.3-5.3 1.4-1.4L9 14.2l9.9-9.9z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.bm-cross li::before { background: var(--wp--preset--color--mist); }

.bm-cross li::after {
	background: var(--wp--preset--color--ash);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 6.4 17.6 5 12 10.6 6.4 5 5 6.4 10.6 12 5 17.6 6.4 19 12 13.4 17.6 19 19 17.6 13.4 12z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 6.4 17.6 5 12 10.6 6.4 5 5 6.4 10.6 12 5 17.6 6.4 19 12 13.4 17.6 19 19 17.6 13.4 12z'/%3E%3C/svg%3E");
}

.bm-dark .bm-check li::before { background: rgba(248, 164, 76, .22); }
.bm-dark .bm-check li::after { background: var(--wp--preset--color--amber); }

/* 6.7 Numbered steps — the number sits in a peach circle */
.bm-steps { counter-reset: bmstep; display: grid; gap: 0; }

.bm-step {
	counter-increment: bmstep;
	position: relative;
	padding: var(--wp--preset--spacing--30) 0 var(--wp--preset--spacing--30) clamp(4rem, 8vw, 5.5rem);
	border-top: 1px solid var(--bm-line);
}

.bm-dark .bm-step { border-top-color: var(--bm-line-dark); }
.bm-step:last-child { border-bottom: 1px solid var(--bm-line); }
.bm-dark .bm-step:last-child { border-bottom-color: var(--bm-line-dark); }

.bm-step::before {
	content: counter(bmstep);
	position: absolute;
	left: 0;
	top: calc(var(--wp--preset--spacing--30) - .1rem);
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: var(--wp--preset--color--peach);
	color: var(--wp--preset--color--ember);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 1.05rem;
}

.bm-dark .bm-step::before { background: rgba(248, 164, 76, .2); color: var(--wp--preset--color--amber); }

.bm-step h3 { margin-bottom: .35rem; }

/* 6.8 FAQ */
.bm-faq { display: grid; gap: .75rem; }

.bm-faq details {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--bm-line);
	border-radius: var(--bm-radius);
	padding: 0 1.4rem;
	transition: border-color .25s var(--bm-ease);
}

.bm-faq details[open] { border-color: var(--bm-line-ember); }

.bm-faq summary {
	cursor: pointer;
	list-style: none;
	padding: 1.15rem 3rem 1.15rem 0;
	position: relative;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 1.125rem;
	letter-spacing: -.01em;
	color: var(--wp--preset--color--carbon);
}

.bm-faq summary::-webkit-details-marker { display: none; }
.bm-faq summary:hover { color: var(--wp--preset--color--ember); }

.bm-faq summary::after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	width: 1.7rem;
	height: 1.7rem;
	transform: translateY(-50%);
	border-radius: 50%;
	background: var(--wp--preset--color--peach);
	-webkit-mask: none;
	mask: none;
	transition: transform .3s var(--bm-ease), background .3s var(--bm-ease);
}

.bm-faq summary::before {
	content: "+";
	position: absolute;
	right: 0;
	top: 50%;
	width: 1.7rem;
	height: 1.7rem;
	transform: translateY(-50%);
	display: grid;
	place-items: center;
	z-index: 1;
	font-weight: 700;
	color: var(--wp--preset--color--ember);
	transition: transform .3s var(--bm-ease);
}

.bm-faq details[open] summary::before { transform: translateY(-50%) rotate(45deg); }

.bm-faq details > *:not(summary) {
	padding-bottom: 1.3rem;
	max-width: 68ch;
	color: var(--wp--preset--color--steel);
}

/* 6.9 Tags */
.bm-tag {
	display: inline-block;
	font-family: var(--wp--preset--font-family--display);
	font-size: .75rem;
	font-weight: 600;
	padding: .35rem .8rem;
	border-radius: 999px;
	background: var(--wp--preset--color--peach);
	color: var(--wp--preset--color--ember);
}

.bm-tag--signal {
	background: rgba(46, 158, 143, .12);
	color: var(--wp--preset--color--signal);
}

/* 6.10 Waveform */
.bm-wave {
	display: flex;
	align-items: center;
	gap: 3px;
	height: 40px;
}

.bm-wave span {
	display: block;
	width: 4px;
	border-radius: 3px;
	background: var(--wp--preset--gradient--ember-heat);
	animation: bm-wave 1.4s var(--bm-ease) infinite;
	height: 30%;
}

.bm-wave span:nth-child(4n)   { animation-delay: -.2s; }
.bm-wave span:nth-child(4n+1) { animation-delay: -.5s; }
.bm-wave span:nth-child(4n+2) { animation-delay: -.9s; }
.bm-wave span:nth-child(4n+3) { animation-delay: -1.2s; }

@keyframes bm-wave {
	0%, 100% { height: 22%; opacity: .55; }
	50%      { height: 100%; opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
	.bm-wave span { animation: none; height: 55%; }
}

/* 6.11 Quote */
.bm-quote {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: clamp(1.4rem, 3vw, 2.1rem);
	line-height: 1.3;
	letter-spacing: -.02em;
	color: var(--wp--preset--color--carbon);
}

.bm-quote-attr {
	font-size: .9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--ash);
}

/* 6.12 Spec rows */
.bm-specs { display: grid; gap: 0; }

.bm-spec {
	display: grid;
	grid-template-columns: minmax(120px, 26%) 1fr;
	gap: 1.5rem;
	padding: 1rem 0;
	border-top: 1px solid var(--bm-line);
	align-items: baseline;
}

.bm-dark .bm-spec { border-top-color: var(--bm-line-dark); }
.bm-specs .bm-spec:last-child { border-bottom: 1px solid var(--bm-line); }
.bm-dark .bm-specs .bm-spec:last-child { border-bottom-color: var(--bm-line-dark); }

.bm-spec dt {
	font-family: var(--wp--preset--font-family--display);
	font-size: .8125rem;
	font-weight: 700;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ember);
}

.bm-spec dd { margin: 0; }

@media (max-width: 600px) {
	.bm-spec { grid-template-columns: 1fr; gap: .35rem; }
}

/* 6.13 Outlined frame box with the title breaking the border (CDMG motif) */
.bm-frame-box {
	position: relative;
	border: 2px solid var(--wp--preset--color--amber);
	border-radius: var(--bm-radius-xl);
	padding: clamp(2.5rem, 5vw, 3.75rem) clamp(1.5rem, 4vw, 3rem) clamp(2rem, 4vw, 3rem);
	margin-top: 1.4rem;
}

.bm-frame-box > .bm-frame-title {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	background: var(--wp--preset--color--cream);
	padding: 0 1.25rem;
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.4rem, 2.6vw, 1.9rem);
	letter-spacing: -.02em;
	color: var(--wp--preset--color--steel);
	white-space: nowrap;
}

.has-white-background-color .bm-frame-box > .bm-frame-title { background: var(--wp--preset--color--white); }
.has-mist-background-color .bm-frame-box > .bm-frame-title { background: var(--wp--preset--color--mist); }

/* --------------------------------------------------------------------------
   7. Patterns
   -------------------------------------------------------------------------- */

/* 7.1 Video hero */
.bm-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding-top: clamp(5rem, 12vw, 9.5rem) !important;
	padding-bottom: clamp(5rem, 11vw, 8.5rem) !important;
	min-height: min(88vh, 860px);
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-bottom-right-radius: clamp(36px, 9vw, 140px);
	color: var(--wp--preset--color--white);
}

.bm-hero::after { content: none; }

.bm-hero > .bm-hero-media,
.bm-hero > .bm-hero-veil {
	max-width: none !important;
	margin: 0 !important;
}

.bm-hero-media {
	position: absolute;
	inset: 0;
	z-index: -2;
	overflow: hidden;
}

.bm-hero-media video,
.bm-hero-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 40%;
	display: block;
}

/* Warm sepia veil so type stays legible on any frame. */
.bm-hero-veil {
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(90deg, rgba(31, 41, 37, .78) 0%, rgba(31, 41, 37, .55) 45%, rgba(74, 52, 30, .35) 100%),
		linear-gradient(180deg, rgba(31, 41, 37, .15) 0%, rgba(31, 41, 37, .55) 100%);
	mix-blend-mode: multiply;
}

.bm-hero-veil::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(242, 106, 33, .10);
	mix-blend-mode: soft-light;
}

.bm-hero-title {
	font-size: clamp(2.6rem, 6.6vw, 5rem) !important;
	line-height: 1.02 !important;
	letter-spacing: -.03em !important;
	max-width: 17ch;
	color: var(--wp--preset--color--white) !important;
}

.bm-hero-title .bm-hl { color: var(--wp--preset--color--amber); }

.bm-hero-sub {
	font-size: clamp(1.05rem, 2vw, 1.3rem) !important;
	line-height: 1.55;
	max-width: 54ch;
	color: rgba(255, 255, 255, .88) !important;
}

.bm-hero .bm-eyebrow > span {
	background: rgba(255, 255, 255, .16);
	color: var(--wp--preset--color--white);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	border: 1px solid rgba(255, 255, 255, .28);
}

.bm-hero .is-style-bm-outline .wp-block-button__link {
	color: var(--wp--preset--color--white) !important;
	box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .6);
}

.bm-hero .is-style-bm-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--carbon) !important;
}

.bm-hero-credit {
	position: absolute;
	right: clamp(1.25rem, 5vw, 3rem);
	bottom: 1.1rem;
	font-size: .7rem;
	color: rgba(255, 255, 255, .55);
	z-index: 1;
}

/* 7.2 Interior page hero — sand, curved */
.bm-page-hero {
	padding-top: clamp(3.5rem, 8vw, 6rem) !important;
	padding-bottom: clamp(3rem, 6vw, 4.5rem) !important;
	border-bottom-right-radius: clamp(28px, 7vw, 96px);
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.bm-page-hero .bm-hero-title {
	font-size: clamp(2.2rem, 5.5vw, 4rem) !important;
	color: var(--wp--preset--color--carbon) !important;
}

.bm-page-hero .bm-hero-title .bm-hl { color: var(--wp--preset--color--ember); }
.bm-page-hero .bm-hero-sub { color: var(--wp--preset--color--steel) !important; }

.bm-page-hero::before {
	content: "";
	position: absolute;
	right: -12%;
	top: -40%;
	width: min(640px, 70vw);
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(248, 164, 76, .28) 0%, rgba(248, 164, 76, 0) 68%);
	z-index: -1;
	pointer-events: none;
}

/* 7.3 Ticker */
.bm-ticker {
	overflow: hidden;
	padding-block: 1.1rem;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.bm-ticker-track {
	display: flex;
	gap: 3rem;
	width: max-content;
	animation: bm-scroll 40s linear infinite;
}

.bm-ticker:hover .bm-ticker-track { animation-play-state: paused; }

.bm-ticker-item {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1rem;
	font-weight: 600;
	color: var(--wp--preset--color--ash);
	white-space: nowrap;
	display: flex;
	align-items: center;
	gap: 3rem;
}

.bm-ticker-item::after {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--wp--preset--color--amber);
	flex: none;
}

@keyframes bm-scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
	.bm-ticker-track { animation: none; flex-wrap: wrap; width: auto; justify-content: center; row-gap: .75rem; }
	.bm-ticker { -webkit-mask-image: none; mask-image: none; }
}

/* 7.4 CTA band — orange, rounded */
.bm-cta-band {
	position: relative;
	overflow: hidden;
	background: var(--wp--preset--gradient--ember-heat) !important;
	color: var(--wp--preset--color--carbon) !important;
	border-radius: var(--bm-radius-xl);
	margin-inline: clamp(.75rem, 2vw, 1.5rem);
	margin-bottom: clamp(.75rem, 2vw, 1.5rem);
}

.bm-cta-band::after {
	content: "";
	position: absolute;
	right: -8%;
	bottom: -40%;
	width: min(560px, 70vw);
	aspect-ratio: 1;
	border-radius: 50%;
	background: rgba(255, 255, 255, .14);
	pointer-events: none;
}

.bm-cta-band :where(h1, h2, h3, p) { color: var(--wp--preset--color--carbon) !important; }
.bm-cta-band .has-ash-color { color: rgba(31, 41, 37, .7) !important; }
.bm-cta-band .bm-eyebrow > span { background: var(--wp--preset--color--carbon); color: var(--wp--preset--color--white); }

.bm-cta-band .wp-block-button:not(.is-style-bm-outline) .wp-block-button__link {
	background: var(--wp--preset--color--carbon) !important;
	color: var(--wp--preset--color--white) !important;
}

.bm-cta-band .wp-block-button:not(.is-style-bm-outline) .wp-block-button__link:hover {
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--carbon) !important;
	box-shadow: 0 12px 30px rgba(31, 41, 37, .22);
}

.bm-cta-band .is-style-bm-outline .wp-block-button__link {
	color: var(--wp--preset--color--carbon) !important;
	box-shadow: inset 0 0 0 2px rgba(31, 41, 37, .6);
}

.bm-cta-band .is-style-bm-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--carbon) !important;
	color: var(--wp--preset--color--white) !important;
}

/* 7.5 Media frame */
.bm-frame img {
	border-radius: var(--bm-radius-lg);
	border: 1px solid var(--bm-line);
}

.bm-frame figcaption {
	font-size: .8125rem;
	color: var(--wp--preset--color--ash);
	margin-top: .75rem;
}

/* 7.6 Placeholder art — sepia-warm */
.bm-ph {
	position: relative;
	border-radius: var(--bm-radius-lg);
	background:
		radial-gradient(ellipse at 30% 20%, rgba(248, 164, 76, .35) 0%, transparent 55%),
		linear-gradient(150deg, #E9D3BB 0%, #D9BC9C 55%, #C7A583 100%);
	min-height: 320px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.bm-ph::after {
	content: attr(data-label);
	font-family: var(--wp--preset--font-family--display);
	font-size: .75rem;
	font-weight: 600;
	color: rgba(74, 52, 30, .75);
	padding: .5rem .9rem;
	border: 1px dashed rgba(74, 52, 30, .35);
	border-radius: 999px;
	text-align: center;
	max-width: 80%;
	background: rgba(255, 255, 255, .35);
}

/* 7.7 Accountable-for strip (under the hero) */
.bm-strip {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 1px;
	background: var(--bm-line);
	border: 1px solid var(--bm-line);
	border-radius: var(--bm-radius-lg);
	overflow: hidden;
}

.bm-strip-item {
	background: var(--wp--preset--color--white);
	padding: 1.4rem 1.5rem;
}

.bm-strip-item dt {
	font-family: var(--wp--preset--font-family--display);
	font-size: .8125rem;
	font-weight: 700;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ember);
	margin-bottom: .35rem;
}

.bm-strip-item dd {
	margin: 0;
	font-size: 1rem;
	color: var(--wp--preset--color--carbon);
	line-height: 1.45;
}

/* --------------------------------------------------------------------------
   8. Posts
   -------------------------------------------------------------------------- */

.bm-post-card { height: 100%; }

.bm-post-card .wp-block-post-featured-image img {
	border-radius: var(--bm-radius);
	aspect-ratio: 16 / 10;
	object-fit: cover;
	width: 100%;
}

.bm-post-card .wp-block-post-title {
	font-size: 1.25rem !important;
	line-height: 1.22;
}

.bm-post-card .wp-block-post-title a { text-decoration: none; }
.bm-post-card .wp-block-post-title a:hover { color: var(--wp--preset--color--ember); }

.bm-post-meta {
	font-family: var(--wp--preset--font-family--display);
	font-size: .8125rem;
	font-weight: 600;
	color: var(--wp--preset--color--ash);
}

.bm-post-meta a { text-decoration: none; color: inherit; }
.bm-post-meta a:hover { color: var(--wp--preset--color--ember); }

.bm-entry-content > * { max-width: 68ch; }

.bm-entry-content > .alignwide,
.bm-entry-content > .alignfull,
.bm-entry-content > figure,
.bm-entry-content > .wp-block-image,
.bm-entry-content > .wp-block-embed { max-width: none; }

.bm-entry-content h2 { margin-top: 2.5em; }
.bm-entry-content h3 { margin-top: 2em; }

.wp-block-query-pagination {
	font-family: var(--wp--preset--font-family--display);
	font-size: .9375rem;
	font-weight: 600;
}

.wp-block-query-pagination a { text-decoration: none; }
.wp-block-query-pagination a:hover { color: var(--wp--preset--color--ember); }

/* --------------------------------------------------------------------------
   9. Forms
   -------------------------------------------------------------------------- */

input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="search"],
select,
textarea {
	width: 100%;
	font-family: inherit;
	font-size: 1rem;
	color: var(--wp--preset--color--carbon);
	background: var(--wp--preset--color--white);
	border: 1px solid var(--bm-line);
	border-radius: 999px;
	padding: .85rem 1.2rem;
	transition: border-color .2s var(--bm-ease), box-shadow .2s var(--bm-ease);
}

textarea { border-radius: var(--bm-radius-lg); }

input:focus,
select:focus,
textarea:focus {
	border-color: var(--wp--preset--color--ember);
	box-shadow: 0 0 0 4px rgba(242, 106, 33, .16);
	outline: none;
}

label {
	display: block;
	font-family: var(--wp--preset--font-family--display);
	font-size: .875rem;
	font-weight: 600;
	color: var(--wp--preset--color--steel);
	margin-bottom: .4rem;
}

.bm-form-dark input,
.bm-form-dark select,
.bm-form-dark textarea {
	background: var(--wp--preset--color--white);
	border-color: var(--bm-line);
	color: var(--wp--preset--color--carbon);
}

.bm-form input[type="submit"],
.bm-form button[type="submit"],
.wpforms-submit,
.wpcf7-submit,
.gform_button {
	width: auto;
	cursor: pointer;
	background: var(--wp--preset--color--ember);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 1rem;
	border: 0;
	border-radius: 999px;
	padding: .95rem 1.9rem;
	transition: background .25s var(--bm-ease), transform .25s var(--bm-ease), box-shadow .25s var(--bm-ease);
}

.bm-form input[type="submit"]:hover,
.bm-form button[type="submit"]:hover,
.wpforms-submit:hover,
.wpcf7-submit:hover,
.gform_button:hover {
	background: var(--wp--preset--color--carbon);
	transform: translateY(-2px);
	box-shadow: var(--wp--preset--shadow--ember);
}

.wp-block-search__button {
	background: var(--wp--preset--color--carbon);
	color: var(--wp--preset--color--white);
	border: 0;
	border-radius: 999px;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	padding: .85rem 1.4rem;
	cursor: pointer;
}

.wp-block-search__input { border-radius: 999px; }

/* Form states (theme-native contact handler) */
.bm-hp {
	position: absolute !important;
	left: -9999px;
	width: 1px; height: 1px;
	overflow: hidden;
}

.bm-form-error {
	background: rgba(242, 106, 33, .1);
	border: 1px solid var(--bm-line-ember);
	color: var(--wp--preset--color--carbon);
	border-radius: var(--bm-radius);
	padding: .8rem 1rem;
	font-size: .9375rem;
	margin: 0 0 1rem;
}

.bm-form-sent {
	background: var(--wp--preset--color--peach);
	border-radius: var(--bm-radius-lg);
	padding: 1.75rem;
}

.bm-form-sent h3 { margin-bottom: .35rem; }
.bm-form-sent p { margin: 0; color: var(--wp--preset--color--steel); }

.bm-form p { margin: 0 0 1.1rem; }
.bm-form p:last-child { margin-bottom: 0; }

/* --------------------------------------------------------------------------
   10. Floating contact panel (direct-response mini form)
   -------------------------------------------------------------------------- */

.bm-float {
	position: fixed;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 90;
	display: flex;
	align-items: flex-start;
	transition: transform .45s var(--bm-ease);
}

.bm-float-tab {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	background: var(--wp--preset--color--ember);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: .9375rem;
	padding: 1.1rem .75rem;
	border: 0;
	border-radius: 0 999px 999px 0;
	cursor: pointer;
	align-self: center;
	box-shadow: -6px 0 24px rgba(62, 79, 72, .18);
	display: flex;
	align-items: center;
	gap: .5rem;
	letter-spacing: .01em;
}

.bm-float-tab:hover { background: var(--wp--preset--color--carbon); }

.bm-float-panel {
	width: min(300px, 86vw);
	background: var(--wp--preset--color--peach);
	border-radius: var(--bm-radius-lg) 0 0 var(--bm-radius-lg);
	padding: 1.4rem 1.4rem 1.5rem;
	box-shadow: -10px 0 40px rgba(62, 79, 72, .2);
	transform: translateX(100%);
	transition: transform .45s var(--bm-ease), opacity .3s var(--bm-ease);
	opacity: 0;
	position: absolute;
	right: 0;
	top: 50%;
	translate: 0 -50%;
	pointer-events: none;
}

.bm-float.is-open .bm-float-panel {
	transform: none;
	opacity: 1;
	pointer-events: auto;
	position: relative;
	top: auto;
	translate: none;
}

.bm-float.is-open .bm-float-tab { border-radius: 999px 0 0 999px; }

.bm-float-panel p { margin: 0 0 .8rem; }

.bm-float-panel .bm-float-lead {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.35;
	color: var(--wp--preset--color--carbon);
	margin-bottom: 1rem;
}

.bm-float-panel input {
	background: rgba(255, 255, 255, .7);
	border-color: rgba(242, 106, 33, .35);
	padding: .7rem 1.1rem;
	font-size: .9375rem;
}

.bm-float-panel input::placeholder { color: var(--wp--preset--color--ash); }

.bm-float-panel button[type="submit"] {
	width: 100%;
	cursor: pointer;
	background: var(--wp--preset--color--ember);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: .9375rem;
	border: 0;
	border-radius: 999px;
	padding: .8rem 1.2rem;
	margin-top: .2rem;
	transition: background .25s var(--bm-ease);
}

.bm-float-panel button[type="submit"]:hover { background: var(--wp--preset--color--carbon); }

.bm-float-close {
	position: absolute;
	top: .6rem;
	right: .6rem;
	width: 1.9rem;
	height: 1.9rem;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .6);
	color: var(--wp--preset--color--steel);
	font-size: 1.1rem;
	line-height: 1;
	cursor: pointer;
	display: grid;
	place-items: center;
}

/* Open by default on wide screens; tab-only on small ones. */
@media (min-width: 1200px) {
	.bm-float:not(.is-closed) .bm-float-panel {
		transform: none;
		opacity: 1;
		pointer-events: auto;
		position: relative;
		top: auto;
		translate: none;
	}
	.bm-float:not(.is-closed) .bm-float-tab { border-radius: 999px 0 0 999px; }
}

@media (max-width: 600px) {
	.bm-float { top: auto; bottom: 1rem; transform: none; }
	.bm-float-tab { writing-mode: horizontal-tb; transform: none; border-radius: 999px 0 0 999px; padding: .8rem 1.1rem; }
	.bm-float-panel { border-radius: var(--bm-radius-lg) 0 0 var(--bm-radius-lg); }
}

.editor-styles-wrapper .bm-float,
.wp-admin .bm-float { position: relative; transform: none; top: auto; }

/* --------------------------------------------------------------------------
   11. Motion
   -------------------------------------------------------------------------- */

.bm-reveal {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity .7s var(--bm-ease), transform .7s var(--bm-ease);
	will-change: opacity, transform;
}

.bm-reveal.is-visible {
	opacity: 1;
	transform: none;
}

.no-js .bm-reveal,
.wp-admin .bm-reveal,
.block-editor-block-list__layout .bm-reveal {
	opacity: 1;
	transform: none;
}

.bm-reveal-group > * { transition-delay: calc(var(--bm-i, 0) * 90ms); }

@media (prefers-reduced-motion: reduce) {
	.bm-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
	.bm-hero-media video { display: none; }
	.bm-hero-media img { display: block; }
}

/* --------------------------------------------------------------------------
   12. Editor + print
   -------------------------------------------------------------------------- */

.editor-styles-wrapper .bm-header { position: relative; top: 0; }
.editor-styles-wrapper .bm-hero { min-height: 520px; }

@media print {
	.bm-header, .bm-footer, .bm-cta-band, .bm-ticker, .bm-float, .bm-hero-media { display: none !important; }
	body { color: #000; background: #fff; }
	.bm-hero { color: #000; }
	.bm-hero-title { color: #000 !important; }
	.bm-reveal { opacity: 1 !important; transform: none !important; }
	a[href^="http"]::after { content: " (" attr(href) ")"; font-size: .8em; }
}
