/*
 * Becker redesign — homepage, header and footer (Elementor Pro). Loaded on pages wrapped in .bh-page.
 * Layout and look live here, keyed to CSS classes set on Elementor containers/widgets ("Advanced → CSS Classes"),
 * so texts, images and links stay editable in Elementor.
 */
@font-face { font-family: "Cormorant Garamond"; font-style: normal; font-weight: 300 700; font-display: swap; src: url("fonts/cormorant-garamond-latin-wght-normal.woff2") format("woff2"); }
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 200 800; font-display: swap; src: url("fonts/manrope-latin-wght-normal.woff2") format("woff2"); }
@font-face { font-family: "Cinzel"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/cinzel-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "Cinzel"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/cinzel-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Cinzel"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/cinzel-latin-700-normal.woff2") format("woff2"); }

:root {
	--bh-ink: #0b1a12;
	--bh-green: #12271b;
	--bh-green-2: #1b3a29;
	--bh-forest: #234a35;
	--bh-ivory: #f5f0e5;
	--bh-paper: #faf7f0;
	--bh-stone: #ece5d6;
	--bh-gold: #c4a15a;
	--bh-gold-2: #dcc28d;
	--bh-gold-deep: #9c7a36;
	--bh-text: #17231c;
	--bh-muted: #5b685f;
	--bh-line: rgba(23, 35, 28, 0.13);
	--bh-line-d: rgba(245, 240, 229, 0.13);
	--bh-display: "Cormorant Garamond", "Cormorant", Georgia, serif;
	--bh-sans: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
	--bh-caps: "Cinzel", "Cormorant Garamond", serif;
	--bh-gutter: clamp(20px, 4.2vw, 64px);
	--bh-max: 1320px;
	--bh-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--bh-header-h: 84px;
}

/* ---------- base ---------- */
body.bh-body, body:has(.bh-page) { margin: 0 !important; background: var(--bh-paper) !important; color: var(--bh-text); font-family: var(--bh-sans); -webkit-font-smoothing: antialiased; }
.bh-page, .bh-header, .bh-footer { font-family: var(--bh-sans); font-size: 16px; line-height: 1.65; color: var(--bh-text); }
.bh-page *, .bh-header *, .bh-footer * { box-sizing: border-box; }
.bh-page .e-con, .bh-header .e-con, .bh-footer .e-con {
	--padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px;
	--gap: 0px; --row-gap: 0px; --column-gap: 0px; --margin-top: 0px; --margin-bottom: 0px;
}
.bh-page .elementor-heading-title, .bh-header .elementor-heading-title, .bh-footer .elementor-heading-title { font-family: var(--bh-display); font-weight: 400; color: inherit; line-height: 1.05; letter-spacing: -0.01em; margin: 0 !important; }
.bh-page .elementor-widget-text-editor p, .bh-footer .elementor-widget-text-editor p { margin: 0 0 1em !important; }
.bh-page .elementor-widget-text-editor p:last-child, .bh-footer .elementor-widget-text-editor p:last-child { margin-bottom: 0 !important; }
.bh-page a { color: inherit; text-decoration: none; }
.bh-page img { display: block !important; }
.bh-page em, .bh-page i { font-style: italic; }

.bh-wrap { width: min(var(--bh-max), 100% - 2 * var(--bh-gutter)) !important; margin-inline: auto !important; }

/* eyebrow / labels */
.bh-eyebrow .elementor-heading-title {
	font-family: var(--bh-caps) !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: 0.3em !important;
	text-transform: uppercase; line-height: 1.4 !important; color: var(--bh-gold-deep);
	display: inline-flex !important; align-items: center !important; gap: 14px !important;
}
.bh-eyebrow .elementor-heading-title::before { content: ""; width: 28px !important; height: 1px !important; background: currentColor !important; opacity: 0.7; }
.bh-dark .bh-eyebrow .elementor-heading-title, .bh-hero .bh-eyebrow .elementor-heading-title { color: var(--bh-gold); }

.bh-h2 .elementor-heading-title { font-size: clamp(2.4rem, 4.6vw, 4.6rem); line-height: 1.02; }
.bh-h2 em { color: var(--bh-gold-deep); }
.bh-dark .bh-h2 em { color: var(--bh-gold-2); }
.bh-lead { font-size: clamp(1.02rem, 1.25vw, 1.15rem); color: var(--bh-muted); max-width: 34em !important; }
.bh-dark .bh-lead { color: rgba(245, 240, 229, 0.72); }

/* buttons */
.bh-btn .elementor-button {
	font-family: var(--bh-sans); font-size: 14px; font-weight: 600; letter-spacing: 0.04em;
	padding: 18px 30px !important; border-radius: 999px !important; background: var(--bh-gold) !important; color: var(--bh-ink);
	border: 1px solid var(--bh-gold) !important; transition: background 0.4s var(--bh-ease), color 0.4s var(--bh-ease), border-color 0.4s var(--bh-ease);
	display: inline-flex !important; gap: 12px !important; align-items: center !important;
}
.bh-btn .elementor-button:hover { background: var(--bh-gold-2) !important; border-color: var(--bh-gold-2); color: var(--bh-ink); }
.bh-btn .elementor-button-content-wrapper { display: inline-flex !important; gap: 10px !important; align-items: center !important; flex-direction: row-reverse !important; }
.bh-btn .elementor-button-text::after { content: "\2192"; display: inline-block !important; margin-left: 12px !important; transition: transform 0.4s var(--bh-ease); }
.bh-btn .elementor-button:hover .elementor-button-text::after { transform: translateX(4px); }
.bh-btn-ghost .elementor-button { background: transparent !important; color: inherit; border-color: rgba(23, 35, 28, 0.25); }
.bh-dark .bh-btn-ghost .elementor-button, .bh-hero .bh-btn-ghost .elementor-button { border-color: rgba(245, 240, 229, 0.3); color: var(--bh-ivory); }
.bh-btn-ghost .elementor-button:hover { background: var(--bh-ink) !important; color: var(--bh-ivory); border-color: var(--bh-ink); }
.bh-dark .bh-btn-ghost .elementor-button:hover, .bh-hero .bh-btn-ghost .elementor-button:hover { background: var(--bh-ivory) !important; color: var(--bh-ink); border-color: var(--bh-ivory); }

.bh-link a, a.bh-link {
	font-size: 14px; font-weight: 600; letter-spacing: 0.04em; display: inline-flex !important; align-items: center !important; gap: 10px !important;
	padding-bottom: 4px !important; background: linear-gradient(currentColor, currentColor) 0 100% / 100% 1px no-repeat !important; transition: background-size 0.5s var(--bh-ease);
}
.bh-link a:hover, a.bh-link:hover { background-size: 0% 1px; background-position: 100% 100%; }
.bh-link a::after, a.bh-link::after { content: "\2192"; transition: transform 0.4s var(--bh-ease); }
.bh-link a:hover::after, a.bh-link:hover::after { transform: translateX(4px); }

.bh-section { position: relative; padding-block: clamp(96px, 12vw, 176px) !important; }
.bh-dark { background: var(--bh-green) !important; color: var(--bh-ivory); }

/* =====================================================================
   HEADER
   ===================================================================== */
.bh-header { position: fixed !important; inset: 0 0 auto 0; z-index: 900 !important; color: var(--bh-ivory); transition: background 0.5s var(--bh-ease), color 0.5s var(--bh-ease), transform 0.6s var(--bh-ease), box-shadow 0.5s; }
.admin-bar .bh-header { top: 32px; }
.bh-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px !important; background: rgba(245, 240, 229, 0.12) !important; transition: background 0.5s; }
.bh-header.is-solid { background: rgba(250, 247, 240, 0.86) !important; color: var(--bh-text); -webkit-backdrop-filter: saturate(140%) blur(16px); backdrop-filter: saturate(140%) blur(16px); }
.bh-header.is-solid::after { background: var(--bh-line) !important; }
.bh-header.is-hidden { transform: translateY(-100%); }
.bh-header-row { display: grid !important; grid-template-columns: 1fr auto 1fr !important; align-items: center !important; height: var(--bh-header-h) !important; min-height: var(--bh-header-h) !important; }

.bh-brand { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 12px !important; justify-self: start !important; }
.bh-brand .elementor-widget-image img { width: 38px !important; height: 38px !important; object-fit: contain; }
.bh-brand .elementor-heading-title { font-family: var(--bh-caps) !important; font-size: 17px !important; font-weight: 600 !important; letter-spacing: 0.28em !important; line-height: 1 !important; }
.bh-brand .elementor-heading-title a { color: inherit; }
.bh-brand .elementor-heading-title small { display: block !important; font-size: 8.5px; letter-spacing: 0.52em; margin-top: 6px !important; opacity: 0.7; font-weight: 600; }

/* Pro nav menu */
.bh-nav .elementor-nav-menu--main .elementor-item { font-family: var(--bh-sans); font-size: 14px; font-weight: 500; letter-spacing: 0.02em; color: inherit !important; padding: 10px 16px !important; }
.bh-nav .elementor-nav-menu--main .elementor-item::after { content: ""; position: absolute; left: 16px; right: 16px; bottom: 4px; height: 1px !important; background: var(--bh-gold) !important; transform: scaleX(0); transform-origin: right; transition: transform 0.5s var(--bh-ease); opacity: 1 !important; top: auto !important; }
.bh-nav .elementor-nav-menu--main .elementor-item:hover::after, .bh-nav .elementor-nav-menu--main .elementor-item.elementor-item-active::after { transform: scaleX(1); transform-origin: left; }
.bh-nav .elementor-nav-menu--main .sub-menu { background: var(--bh-paper) !important; border: 1px solid var(--bh-line) !important; border-radius: 14px !important; padding: 10px !important; min-width: 260px !important; box-shadow: 0 30px 60px -30px rgba(11, 26, 18, 0.35) !important; }
.bh-nav .elementor-nav-menu--main .sub-menu .elementor-sub-item { color: var(--bh-text) !important; font-size: 14px; padding: 10px 14px !important; border-radius: 8px !important; border: 0 !important; }
.bh-nav .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover { background: var(--bh-stone) !important; }
.bh-nav .sub-arrow svg { width: 9px !important; fill: currentColor; }
.bh-nav .elementor-menu-toggle { background: transparent !important; color: inherit !important; font-size: 22px; padding: 6px !important; border: 0 !important; }
.bh-nav .elementor-menu-toggle svg { fill: currentColor; }
.bh-nav .elementor-nav-menu--dropdown { background: var(--bh-paper) !important; border-radius: 16px !important; margin-top: 14px !important; box-shadow: 0 30px 60px -30px rgba(11, 26, 18, 0.45) !important; overflow: hidden !important; }
.bh-nav .elementor-nav-menu--dropdown a { color: var(--bh-text) !important; font-size: 16px; padding: 14px 22px !important; border-bottom: 1px solid var(--bh-line) !important; }
.bh-nav .elementor-nav-menu--dropdown a:hover, .bh-nav .elementor-nav-menu--dropdown a.elementor-item-active { background: var(--bh-stone) !important; }

.bh-actions { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: flex-end !important; gap: 6px !important; justify-self: end !important; }
.bh-actions .elementor-icon, .bh-actions .elementor-search-form__toggle i, .bh-actions .elementor-search-form__toggle .e-font-icon-svg { color: inherit !important; fill: currentColor !important; }
.bh-icon .elementor-icon { width: 42px !important; height: 42px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; border-radius: 50% !important; font-size: 18px; transition: background 0.3s; }
.bh-icon .elementor-icon svg { width: 18px !important; height: 18px !important; fill: currentColor; }
.bh-icon .elementor-icon:hover { background: rgba(196, 161, 90, 0.16) !important; }
.bh-search .elementor-search-form__toggle { --e-search-form-toggle-size: 42px; --e-search-form-toggle-color: currentColor; --e-search-form-toggle-background-color: transparent; --e-search-form-toggle-icon-size: 18px; }
.bh-search .elementor-search-form__toggle div, .bh-search .elementor-search-form__toggle i { background: transparent !important; color: inherit !important; border-radius: 50% !important; }
.bh-search .elementor-search-form--full-screen .elementor-search-form__container { background: rgba(11, 26, 18, 0.96) !important; }
.bh-search .elementor-search-form--full-screen input[type="search"] { font-family: var(--bh-display); font-size: clamp(2rem, 5vw, 4rem); color: var(--bh-ivory) !important; border-bottom: 1px solid var(--bh-gold) !important; }
.bh-cart .elementor-menu-cart__toggle .elementor-button { background: transparent !important; color: inherit !important; border: 0 !important; padding: 10px !important; font-size: 14px; gap: 6px !important; }
.bh-cart .elementor-menu-cart__toggle .elementor-button-icon { color: inherit !important; }
.bh-cart .elementor-menu-cart__toggle .elementor-button-icon svg { fill: currentColor; width: 19px !important; height: 19px !important; }
.bh-cart .elementor-button-icon-qty { background: var(--bh-gold) !important; color: var(--bh-ink) !important; font-weight: 700; font-size: 10px; min-width: 18px !important; height: 18px !important; line-height: 18px; top: -4px !important; }
.bh-cart .elementor-menu-cart__toggle .elementor-button-text { display: none !important; }

@media (max-width: 1024px) {
	.bh-header-row { grid-template-columns: auto 1fr auto !important; }
	.bh-nav { order: 3 !important; justify-self: end !important; }
	.bh-actions { order: 2 !important; }
	.bh-header .bh-account { display: none !important; }
}

/* =====================================================================
   HERO
   ===================================================================== */
.bh-hero {
	min-height: 100svh !important; position: relative; overflow: hidden !important; color: var(--bh-ivory); isolation: isolate !important;
	background: radial-gradient(60% 70% at 72% 48%, rgba(52, 104, 74, 0.55) 0%, rgba(18, 39, 27, 0) 60%),
		radial-gradient(120% 90% at 50% 120%, #08140d 0%, rgba(8, 20, 13, 0) 55%),
		linear-gradient(180deg, #102318 0%, #12271b 55%, #0d1e14 100%) !important;
}
.bh-hero::before { /* fine grain */
	content: ""; position: absolute; inset: 0; z-index: -1; opacity: 0.22; mix-blend-mode: overlay; pointer-events: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");
}
.bh-hero-grid { display: grid !important; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) !important; align-items: center !important; min-height: 100svh !important; padding-top: var(--bh-header-h) !important; }
.bh-hero-copy { position: relative; z-index: 2; padding-block: 60px !important; }
.bh-hero h1.elementor-heading-title { font-size: clamp(3.1rem, min(6.3vw, 10.5vh), 7.4rem) !important; line-height: 0.94 !important; letter-spacing: -0.02em !important; font-weight: 400 !important; margin: 22px 0 26px !important; }
.bh-hero h1 .bh-l { display: block !important; overflow: hidden !important; padding-bottom: 0.06em !important; }
.bh-hero h1 .bh-hero-line { display: block !important; }
.bh-hero h1 em { font-style: italic; color: var(--bh-gold-2); font-weight: 400; }
.bh-hero .bh-lead { color: rgba(245, 240, 229, 0.74); max-width: 30em !important; }
.bh-hero-ctas { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; gap: 14px !important; margin-top: 32px !important; }
.bh-hero-meta { display: flex !important; flex-direction: row !important; gap: 34px !important; margin-top: 40px !important; padding-top: 22px !important; border-top: 1px solid var(--bh-line-d) !important; max-width: 520px !important; }
.bh-hero-meta > .elementor-element { flex: 1 1 0 !important; min-width: 0 !important; }
.bh-hero-meta .elementor-heading-title { font-family: var(--bh-sans) !important; font-size: 12px !important; line-height: 1.5 !important; color: rgba(245, 240, 229, 0.62); letter-spacing: 0.02em !important; }
.bh-hero-meta .elementor-heading-title b { display: block !important; font-family: var(--bh-display); font-size: 26px; font-weight: 500; color: var(--bh-ivory); letter-spacing: 0; margin-bottom: 4px !important; }

@keyframes bh-spin { to { transform: rotate(360deg); } }

.bh-scroll-cue { position: absolute; right: var(--bh-gutter); bottom: 34px; flex-direction: row-reverse !important; display: flex !important; align-items: center !important; gap: 14px !important; font-family: var(--bh-caps); font-size: 10px; letter-spacing: 0.4em; color: rgba(245, 240, 229, 0.55); z-index: 3; }
.bh-scroll-cue i { width: 1px !important; height: 54px !important; background: rgba(245, 240, 229, 0.2) !important; position: relative; overflow: hidden !important; }
.bh-scroll-cue i::after { content: ""; position: absolute; left: 0; top: -40%; width: 1px !important; height: 40% !important; background: var(--bh-gold) !important; animation: bh-cue 2.4s var(--bh-ease) infinite; }
@keyframes bh-cue { to { top: 100%; } }

@media (max-width: 1024px) {
	.bh-hero-grid { grid-template-columns: 1fr !important; padding-top: calc(var(--bh-header-h) + 8px) !important; }
	.bh-hero-copy { padding-block: 0 90px !important; }
	.bh-hero h1.elementor-heading-title { margin-top: 18px !important; }
	.bh-scroll-cue { display: none !important; }
	.bh-hero-meta { gap: 22px !important; margin-top: 40px !important; }
}
@media (max-width: 600px) {
	.bh-hero-ctas .elementor-widget-button { width: 100% !important; }
	.bh-hero-ctas .elementor-button { width: 100% !important; justify-content: center !important; }
}

/* =====================================================================
   CREDENTIALS
   ===================================================================== */
.bh-creds { background: var(--bh-paper) !important; border-bottom: 1px solid var(--bh-line) !important; }
.bh-creds-row { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; }
.bh-cred { padding: 54px 34px 50px !important; border-left: 1px solid var(--bh-line) !important; }
.bh-cred:first-child { border-left: 0 !important; padding-left: 0 !important; }
.bh-cred .bh-count .elementor-heading-title, .bh-cred .bh-num .elementor-heading-title { font-size: clamp(2.6rem, 3.6vw, 3.6rem); line-height: 1; color: var(--bh-ink); }
.bh-cred .bh-cred-text { font-size: 14px; color: var(--bh-muted); margin-top: 14px !important; max-width: 18em !important; line-height: 1.55; }
@media (max-width: 900px) {
	.bh-creds-row { grid-template-columns: 1fr 1fr !important; }
	.bh-cred { padding: 34px 20px !important; border-top: 1px solid var(--bh-line) !important; }
	.bh-cred:nth-child(-n+2) { border-top: 0 !important; }
	.bh-cred:nth-child(odd) { border-left: 0 !important; padding-left: 0 !important; }
}

/* =====================================================================
   STATEMENT
   ===================================================================== */
.bh-statement-grid { display: grid !important; grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr) !important; gap: clamp(40px, 7vw, 120px) !important; align-items: center !important; }
.bh-statement .bh-h2 .elementor-heading-title { font-size: clamp(2.6rem, 5.2vw, 5.4rem); }
.bh-statement-copy .bh-lead { margin: 34px 0 30px !important; }
.bh-split .bh-w { display: inline-block !important; overflow: hidden !important; vertical-align: top; padding-bottom: 0.08em !important; margin-bottom: -0.08em !important; }
.bh-split .bh-w > span { display: inline-block !important; }
.bh-figure { position: relative; border-radius: 26px !important; overflow: hidden !important; background: var(--bh-stone) !important; aspect-ratio: 4 / 5 !important; }
.bh-figure .elementor-widget-image, .bh-figure .elementor-widget-container { height: 100% !important; }
.bh-figure img { width: 100% !important; height: 112% !important; object-fit: cover; mix-blend-mode: multiply; }
.bh-figure-tag { position: absolute !important; left: 20px; bottom: 20px; z-index: 2; background: rgba(250, 247, 240, 0.9) !important; border-radius: 999px !important; padding: 10px 18px !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.bh-figure-tag .elementor-heading-title { font-family: var(--bh-sans) !important; font-size: 12px !important; letter-spacing: 0.06em !important; color: var(--bh-text); line-height: 1.3 !important; }
@media (max-width: 900px) { .bh-statement-grid { grid-template-columns: 1fr !important; } .bh-figure { aspect-ratio: 4 / 4.2 !important; } }

/* =====================================================================
   SIGNATURE COMPOUNDS (pinned horizontal gallery on desktop)
   ===================================================================== */
.bh-gallery { background: var(--bh-paper) !important; padding-block: clamp(80px, 8vh, 110px) clamp(60px, 6vh, 90px) !important; overflow: hidden !important; min-height: 100vh; display: flex !important; flex-direction: column !important; justify-content: center !important; }
.bh-gallery-head { display: flex !important; flex-direction: row !important; justify-content: space-between !important; align-items: flex-end !important; gap: 30px !important; margin-bottom: clamp(28px, 5vh, 56px) !important; }
.bh-gallery-head .bh-h2 .elementor-heading-title { max-width: 13em; }
.bh-gallery-viewport { width: 100% !important; overflow: visible !important; }
.bh-gallery-track { display: flex !important; flex-direction: row !important; gap: 22px !important; padding-inline: max(var(--bh-gutter), (100vw - var(--bh-max)) / 2) !important; width: max-content !important; }
.bh-card { width: clamp(280px, 23vw, 340px) !important; flex: none !important; border-radius: 22px !important; background: var(--bh-ivory) !important; border: 1px solid var(--bh-line) !important; overflow: hidden !important; transition: transform 0.7s var(--bh-ease), box-shadow 0.7s var(--bh-ease); position: relative; }
.bh-card:hover { transform: translateY(-8px); box-shadow: 0 40px 70px -40px rgba(11, 26, 18, 0.45) !important; }
.bh-card > a.bh-card-link { position: absolute; inset: 0; z-index: 3; }
.bh-card-media { background: #e9e8e4 !important; aspect-ratio: 1 / 0.92 !important; overflow: hidden !important; }
.bh-card-media img { width: 100% !important; height: 100% !important; object-fit: cover; mix-blend-mode: multiply; transform: scale(1.02); transition: transform 1.2s var(--bh-ease); }
.bh-card:hover .bh-card-media img { transform: scale(1.08); }
.bh-card-body { padding: 26px 26px 24px !important; }
.bh-card-cat .elementor-heading-title { font-family: var(--bh-caps) !important; font-size: 10.5px !important; letter-spacing: 0.26em !important; color: var(--bh-gold-deep); line-height: 1.4 !important; }
.bh-card-name .elementor-heading-title { font-size: 30px !important; margin: 10px 0 8px !important; line-height: 1.05 !important; }
.bh-card-desc { font-size: 14px; color: var(--bh-muted); line-height: 1.55; min-height: 3.1em !important; }
.bh-card-foot { display: flex !important; flex-direction: row !important; justify-content: space-between !important; align-items: center !important; margin-top: 22px !important; padding-top: 18px !important; border-top: 1px solid var(--bh-line) !important; }
.bh-card-foot .elementor-shortcode, .bh-card-price { font-size: 14px; font-weight: 600; color: var(--bh-text); }
.bh-card-arrow { width: 40px !important; height: 40px !important; border-radius: 50% !important; border: 1px solid var(--bh-line) !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; transition: background 0.4s, color 0.4s, border-color 0.4s; }
.bh-card:hover .bh-card-arrow { background: var(--bh-ink) !important; color: var(--bh-gold-2); border-color: var(--bh-ink); }
.bh-card-end { width: clamp(260px, 22vw, 320px) !important; flex: none !important; display: flex !important; align-items: center !important; justify-content: center !important; border-radius: 22px !important; border: 1px dashed rgba(23, 35, 28, 0.25) !important; }
.bh-gallery-progress { margin-top: 44px !important; height: 1px !important; background: var(--bh-line) !important; }
@media (max-width: 1024px) {
	.bh-gallery-head { flex-direction: column !important; align-items: flex-start !important; }
	.bh-gallery-viewport { overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
	.bh-gallery-viewport::-webkit-scrollbar { display: none !important; }
	.bh-card, .bh-card-end { scroll-snap-align: start; width: 78vw !important; max-width: 360px !important; }
}

/* =====================================================================
   PROCESS
   ===================================================================== */
.bh-process-grid { display: grid !important; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important; gap: clamp(40px, 8vw, 140px) !important; align-items: start !important; }
.bh-process-intro { position: sticky !important; top: 130px; }
.bh-process-intro .bh-lead { margin-top: 28px !important; }
.bh-process-steps { position: relative; padding-left: 64px !important; }
.bh-process-bar-w { position: absolute !important; left: 0; top: 10px; bottom: 10px; width: 1px !important; }
.bh-process-bar-w .elementor-widget-container { height: 100% !important; }
.bh-process-bar { position: absolute; inset: 0; background: var(--bh-line-d) !important; }
.bh-process-bar i { position: absolute; inset: 0; background: linear-gradient(var(--bh-gold), var(--bh-gold-2)) !important; transform-origin: top; }
.bh-step { padding: 10px 0 70px !important; opacity: 0.38; transition: opacity 0.8s var(--bh-ease); position: relative; }
.bh-step:last-child { padding-bottom: 0 !important; }
.bh-step.is-on, html:not(.bh-motion) .bh-step { opacity: 1; }
.bh-step::before { content: ""; position: absolute; left: -68px; top: 26px; width: 9px !important; height: 9px !important; border-radius: 50% !important; background: var(--bh-green) !important; border: 1px solid var(--bh-gold) !important; transition: background 0.6s; }
.bh-step.is-on::before { background: var(--bh-gold) !important; }
.bh-step-num .elementor-heading-title { font-family: var(--bh-display) !important; font-size: 64px !important; font-weight: 300 !important; color: var(--bh-gold); line-height: 1 !important; }
.bh-step-title .elementor-heading-title { font-size: clamp(1.9rem, 2.6vw, 2.6rem) !important; margin: 18px 0 14px !important; }
.bh-step .bh-lead { max-width: 30em !important; }
@media (max-width: 900px) { .bh-process-grid { grid-template-columns: 1fr !important; } .bh-process-intro { position: relative !important; top: 0; } .bh-process-steps { padding-left: 40px !important; } .bh-step::before { left: -44px; } }

/* =====================================================================
   CERTIFICATES
   ===================================================================== */
.bh-certs { background: var(--bh-ivory) !important; overflow: hidden !important; }
.bh-certs-grid { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; gap: clamp(40px, 8vw, 130px) !important; align-items: center !important; }
.bh-cert-card { background: #fffdf8 !important; border-radius: 6px !important; padding: 38px 40px 34px !important; box-shadow: 0 50px 90px -40px rgba(11, 26, 18, 0.45), 0 0 0 1px rgba(23, 35, 28, 0.07) !important; font-family: var(--bh-sans); color: var(--bh-text); max-width: 520px !important; margin-inline: auto !important; position: relative; }
.bh-cert-card::before { content: ""; position: absolute; inset: 10px; border: 1px solid rgba(196, 161, 90, 0.45) !important; border-radius: 3px !important; pointer-events: none; }
.bh-cert-top { display: flex !important; justify-content: space-between !important; align-items: flex-start !important; padding-bottom: 18px !important; border-bottom: 1.5px solid var(--bh-ink) !important; }
.bh-cert-brand { display: flex !important; gap: 12px !important; align-items: center !important; font-family: var(--bh-caps); font-size: 15px; letter-spacing: 0.2em; font-weight: 600; line-height: 1.1; }
.bh-cert-brand img { width: 38px !important; height: 38px !important; }
.bh-cert-brand small { display: block !important; font-size: 8px; letter-spacing: 0.4em; color: var(--bh-muted); margin-top: 4px !important; }
.bh-cert-doc { text-align: right; font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bh-muted); line-height: 1.7; }
.bh-cert-doc b { color: var(--bh-gold-deep); font-weight: 700; }
.bh-cert-title { font-family: var(--bh-display); font-size: 40px; line-height: 1; margin: 24px 0 4px !important; }
.bh-cert-sub { font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bh-muted); }
.bh-cert-table { width: 100% !important; border-collapse: collapse; margin: 22px 0 18px !important; font-size: 13px; }
.bh-cert-table td { padding: 9px 0 !important; border-bottom: 1px solid var(--bh-line) !important; }
.bh-cert-table td:last-child { text-align: right; font-weight: 600; font-variant-numeric: tabular-nums; }
.bh-cert-pass { display: inline-flex !important; align-items: center !important; gap: 6px !important; color: #2c6b45; }
.bh-cert-foot { display: flex !important; justify-content: space-between !important; align-items: flex-end !important; gap: 20px !important; }
.bh-cert-sign { font-family: var(--bh-display); font-size: 22px; color: var(--bh-ink); border-bottom: 1px solid var(--bh-line) !important; padding-bottom: 2px !important; }
.bh-cert-sign + small { font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bh-muted); }
.bh-cert-qr { width: 64px !important; height: 64px !important; display: grid !important; grid-template-columns: repeat(9, 1fr) !important; gap: 1px !important; }
.bh-cert-qr i { background: var(--bh-ink) !important; }
.bh-cert-qr i:nth-child(3n), .bh-cert-qr i:nth-child(7n+2) { background: transparent !important; }
.bh-certs-copy .bh-lead { margin: 28px 0 34px !important; }
.bh-verify { display: flex !important; gap: 0 !important; border: 1px solid rgba(23, 35, 28, 0.2) !important; border-radius: 999px !important; padding: 6px !important; background: #fffdf8 !important; max-width: 480px !important; transition: border-color 0.4s; }
.bh-verify:focus-within { border-color: var(--bh-gold); }
.bh-verify input { flex: 1 !important; border: 0 !important; background: transparent !important; outline: 0; padding: 12px 20px !important; font: 500 15px var(--bh-sans); color: var(--bh-text); min-width: 0 !important; box-shadow: none !important; }
.bh-verify button { border: 0 !important; border-radius: 999px !important; background: var(--bh-ink) !important; color: var(--bh-ivory); padding: 0 26px !important; font: 600 14px var(--bh-sans); letter-spacing: 0.03em; cursor: pointer; transition: background 0.3s; }
.bh-verify button:hover { background: var(--bh-forest) !important; }
.bh-verify-note { font-size: 13px; color: var(--bh-muted); margin-top: 16px !important; }
.bh-verify-note a { color: var(--bh-text); border-bottom: 1px solid var(--bh-gold) !important; }
@media (max-width: 900px) { .bh-certs-grid { grid-template-columns: 1fr !important; } .bh-cert-card { padding: 28px 24px !important; } .bh-cert-title { font-size: 32px; } }

/* =====================================================================
   CATEGORIES
   ===================================================================== */
.bh-cats { background: var(--bh-paper) !important; }
.bh-cats-head { display: flex !important; flex-direction: row !important; justify-content: space-between !important; align-items: flex-end !important; gap: 30px !important; margin-bottom: 56px !important; }
.bh-cats-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; border-top: 1px solid var(--bh-line) !important; border-left: 1px solid var(--bh-line) !important; }
.bh-cat { position: relative; padding: 40px 36px 36px !important; border-right: 1px solid var(--bh-line) !important; border-bottom: 1px solid var(--bh-line) !important; min-height: 260px !important; display: flex !important; flex-direction: column !important; justify-content: space-between !important; overflow: hidden !important; isolation: isolate !important; transition: color 0.6s var(--bh-ease); }
.bh-cat::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--bh-green) !important; transform: translateY(101%); transition: transform 0.7s var(--bh-ease); }
.bh-cat:hover { color: var(--bh-ivory); }
.bh-cat:hover::before { transform: translateY(0); }
.bh-cat > a.bh-cat-link { position: absolute; inset: 0; z-index: 3; }
.bh-cat-num .elementor-heading-title { font-family: var(--bh-caps) !important; font-size: 11px !important; letter-spacing: 0.3em !important; color: var(--bh-gold-deep); }
.bh-cat:hover .bh-cat-num .elementor-heading-title { color: var(--bh-gold); }
.bh-cat-name .elementor-heading-title { font-size: clamp(1.8rem, 2.4vw, 2.4rem) !important; margin-top: 46px !important; line-height: 1.05 !important; }
.bh-cat-desc { font-size: 14px; color: var(--bh-muted); margin-top: 12px !important; transition: color 0.6s; max-width: 22em !important; }
.bh-cat:hover .bh-cat-desc { color: rgba(245, 240, 229, 0.7); }
.bh-cat-arrow { position: absolute; right: 30px; top: 34px; width: 44px !important; height: 44px !important; border-radius: 50% !important; border: 1px solid currentColor !important; opacity: 0.35; display: flex !important; align-items: center !important; justify-content: center !important; transform: rotate(-45deg); transition: transform 0.6s var(--bh-ease), opacity 0.6s, background 0.6s, color 0.6s; }
.bh-cat:hover .bh-cat-arrow { transform: rotate(0); opacity: 1; background: var(--bh-gold) !important; color: var(--bh-ink); border-color: var(--bh-gold); }
@media (max-width: 900px) { .bh-cats-grid { grid-template-columns: 1fr 1fr !important; } .bh-cats-head { flex-direction: column !important; align-items: flex-start !important; } .bh-cat { min-height: 210px !important; padding: 28px 22px !important; } }
@media (max-width: 560px) { .bh-cats-grid { grid-template-columns: 1fr !important; } }

/* =====================================================================
   INSTITUTIONS
   ===================================================================== */
.bh-inst { background: var(--bh-ink) !important; color: var(--bh-ivory); overflow: hidden !important; isolation: isolate !important; }
.bh-inst::before { content: ""; position: absolute; right: -6%; top: 50%; width: min(52vw, 760px) !important; aspect-ratio: 1 !important; transform: translateY(-50%); background: var(--bh-helmet) center / contain no-repeat !important; opacity: 0.07; filter: grayscale(0.2) sepia(0.4); z-index: -1; }
.bh-inst::after { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(70% 90% at 85% 50%, rgba(35, 74, 53, 0.55), rgba(11, 26, 18, 0) 70%) !important; }
.bh-inst .bh-h2 .elementor-heading-title { font-size: clamp(2.6rem, 5.4vw, 5.6rem); max-width: 11em !important; }
.bh-inst-points { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 0 !important; margin: 64px 0 56px !important; border-top: 1px solid var(--bh-line-d) !important; }
.bh-inst-point { padding: 28px 30px 0 0 !important; }
.bh-inst-point .elementor-heading-title { font-size: 24px !important; line-height: 1.15 !important; }
.bh-inst-point .bh-lead { font-size: 14.5px; margin-top: 10px !important; }
.bh-inst-ctas { display: flex !important; flex-direction: row !important; gap: 14px !important; flex-wrap: wrap !important; }
@media (max-width: 900px) { .bh-inst-points { grid-template-columns: 1fr !important; } .bh-inst-point { padding: 22px 0 6px !important; border-bottom: 1px solid var(--bh-line-d) !important; } }

/* =====================================================================
   RESOURCES
   ===================================================================== */
.bh-res { background: var(--bh-paper) !important; }
.bh-res-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 22px !important; margin-top: 56px !important; }
.bh-res-card { position: relative; border-radius: 22px !important; padding: 34px 32px 30px !important; background: var(--bh-ivory) !important; border: 1px solid var(--bh-line) !important; min-height: 280px !important; display: flex !important; flex-direction: column !important; transition: transform 0.6s var(--bh-ease), background 0.6s; }
.bh-res-card:hover { transform: translateY(-6px); background: #fffdf8 !important; }
.bh-res-card > a.bh-cat-link { position: absolute; inset: 0; z-index: 3; }
.bh-res-icon { width: 54px !important; height: 54px !important; border-radius: 50% !important; border: 1px solid rgba(196, 161, 90, 0.6) !important; display: flex !important; align-items: center !important; justify-content: center !important; color: var(--bh-gold-deep); }
.bh-res-icon svg { width: 22px !important; height: 22px !important; stroke: currentColor; fill: none; stroke-width: 1.5; }
.bh-res-card .elementor-heading-title { font-size: 30px !important; margin-top: 40px !important; }
.bh-res-card .bh-lead { font-size: 14.5px; margin-top: 10px !important; }
.bh-res-card .bh-link { margin-top: auto !important; padding-top: 24px !important; }
@media (max-width: 900px) { .bh-res-grid { grid-template-columns: 1fr !important; } .bh-res-card { min-height: 0 !important; } }

/* =====================================================================
   FOOTER
   ===================================================================== */
.bh-footer { background: var(--bh-ink) !important; color: rgba(245, 240, 229, 0.72); padding-top: clamp(80px, 9vw, 130px) !important; overflow: hidden !important; }
.bh-footer-top { display: grid !important; grid-template-columns: 1.4fr repeat(3, 1fr) !important; gap: 50px !important; padding-bottom: 70px !important; }
.bh-footer .bh-foot-intro .elementor-heading-title { font-size: clamp(2rem, 2.8vw, 2.8rem); color: var(--bh-ivory); max-width: 11em !important; }
.bh-footer .bh-foot-intro .bh-lead { font-size: 14.5px; margin-top: 18px !important; max-width: 26em !important; }
.bh-foot-col .bh-foot-title .elementor-heading-title { font-family: var(--bh-caps) !important; font-size: 11px !important; letter-spacing: 0.3em !important; color: var(--bh-gold); margin-bottom: 22px !important; }
.bh-foot-col ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.bh-foot-col li { margin: 0 0 11px !important; font-size: 14.5px; }
.bh-foot-col a { color: rgba(245, 240, 229, 0.78); transition: color 0.3s; }
.bh-foot-col a:hover { color: var(--bh-gold-2); }
.bh-foot-social { display: flex !important; gap: 10px !important; margin-top: 26px !important; }
.bh-foot-social a { width: 40px !important; height: 40px !important; border-radius: 50% !important; border: 1px solid rgba(245, 240, 229, 0.2) !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; transition: border-color 0.3s, color 0.3s; }
.bh-foot-social a:hover { border-color: var(--bh-gold); color: var(--bh-gold-2); }
.bh-foot-social svg { width: 16px !important; height: 16px !important; fill: currentColor; }
.bh-footer-mark .elementor-heading-title { font-family: var(--bh-caps) !important; font-size: clamp(2.6rem, 10.6vw, 11rem) !important; letter-spacing: 0.08em !important; line-height: 0.8 !important; color: transparent; -webkit-text-stroke: 1px rgba(196, 161, 90, 0.35); white-space: nowrap; text-align: center; transform: translateY(18%); user-select: none; }
.bh-footer-bottom { display: flex !important; flex-direction: row !important; justify-content: space-between !important; gap: 20px !important; flex-wrap: wrap !important; padding: 24px 0 !important; border-top: 1px solid var(--bh-line-d) !important; font-size: 12.5px; color: rgba(245, 240, 229, 0.5); }
.bh-footer-bottom p { margin: 0 !important; }
.bh-footer-bottom a { color: rgba(245, 240, 229, 0.7); }
.bh-footer-bottom a:hover { color: var(--bh-gold-2); }
@media (max-width: 900px) { .bh-footer-top { grid-template-columns: 1fr 1fr !important; } .bh-foot-intro { grid-column: 1 / -1 !important; } }
@media (max-width: 520px) { .bh-footer-top { grid-template-columns: 1fr !important; } }

/* =====================================================================
   CURSOR + motion states
   ===================================================================== */
.bh-cursor-dot, .bh-cursor-ring { position: fixed; left: 0; top: 0; z-index: 10000; pointer-events: none; opacity: 0; transition: opacity 0.3s; }
.bh-cursor-on .bh-cursor-dot, .bh-cursor-on .bh-cursor-ring { opacity: 1; }
.bh-cursor-dot { width: 6px !important; height: 6px !important; margin: -3px 0 0 -3px !important; border-radius: 50% !important; background: var(--bh-gold) !important; }
.bh-cursor-ring { width: 38px !important; height: 38px !important; margin: -19px 0 0 -19px !important; border-radius: 50% !important; border: 1px solid rgba(196, 161, 90, 0.7) !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: opacity 0.3s, width 0.45s var(--bh-ease), height 0.45s var(--bh-ease), margin 0.45s var(--bh-ease), background 0.45s, border-color 0.45s; }
.bh-cursor-ring span { font: 600 11px var(--bh-sans); letter-spacing: 0.12em; text-transform: uppercase; color: var(--bh-ink); opacity: 0; transition: opacity 0.3s; }
.bh-cursor-ring.is-hover { width: 58px !important; height: 58px !important; margin: -29px 0 0 -29px !important; background: rgba(196, 161, 90, 0.12) !important; }
.bh-cursor-ring.has-label { width: 86px !important; height: 86px !important; margin: -43px 0 0 -43px !important; background: var(--bh-gold) !important; border-color: var(--bh-gold); }
.bh-cursor-ring.has-label span { opacity: 1; }
.bh-has-cursor .bh-page, .bh-has-cursor .bh-page a, .bh-has-cursor .bh-header a { cursor: none; }
.bh-has-cursor .bh-page input, .bh-has-cursor .bh-page textarea { cursor: text; }

/* hidden-before-reveal states only when motion is on, so content is visible without JS */
html.lenis, html.lenis body { height: auto !important; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
@media (prefers-reduced-motion: reduce) { .bh-scroll-cue i::after { animation: none; } }

/* header row alignment + small fixes */
.bh-header-row > .elementor-element { align-self: center !important; width: auto !important; }
.bh-gallery-head .bh-link, .bh-cats-head .bh-link { white-space: nowrap; }
.bh-card-end .elementor-heading-title { font-size: 34px !important; line-height: 1.1 !important; }
.bh-card-end .elementor-heading-title span { display: block; color: var(--bh-gold-deep); margin-top: 8px; }.bh-gallery-head > .e-con:first-child, .bh-cats-head > .e-con:first-child { flex: 1 1 auto !important; min-width: 0 !important; }
.bh-cat > .elementor-widget-html, .bh-res-card > .elementor-widget-html:last-child { position: static !important; }
.bh-cert-seal { width: 92px; height: 92px; flex: none; position: relative; }
.bh-cert-seal svg { width: 100%; height: 100%; animation: bh-spin 40s linear infinite; }
.bh-cert-seal img { position: absolute; inset: 26px; width: 40px; height: 40px; }
.bh-cert-seal text { font-family: var(--bh-caps); font-size: 9.4px; letter-spacing: 2.6px; fill: var(--bh-gold-deep); font-weight: 600; }@media (max-width: 1024px) {
}
/* hero background: gold peptide chains (molecules.js) */
.bh-mol-w { position: absolute !important; inset: 0 !important; z-index: 0 !important; pointer-events: none; }
.bh-mol-w .elementor-widget-container { height: 100%; }
.bh-mol-stage { position: absolute; inset: 0; }
.bh-mol-stage canvas { position: absolute; inset: 0; width: 100% !important; height: 100% !important; opacity: 0; transition: opacity 1.6s var(--bh-ease); }
.bh-mol-stage.is-ready canvas { opacity: 1; }
.bh-hero-grid { position: relative !important; z-index: 2 !important; }
.bh-hero::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: radial-gradient(42% 38% at 50% 52%, rgba(12, 27, 18, 0.78) 0%, rgba(12, 27, 18, 0.35) 55%, rgba(12, 27, 18, 0) 100%); }
@media (max-width: 1024px) {
}

/* =====================================================================
   TYPE SYSTEM v2 (2026-10-23): Roman inscription hero, squared buttons, small-caps nav.
   Replaces the "eyebrow-line + giant serif + italic accent + pill buttons + stat row" pattern.
   ===================================================================== */
.bh-mol-w { mix-blend-mode: screen; } /* the widget is the stacking context, so it blends with the hero green */

.bh-hero-grid { grid-template-columns: 1fr !important; justify-items: center; text-align: center; }
.bh-hero-copy { max-width: 880px; margin-inline: auto !important; display: flex !important; flex-direction: column !important; align-items: center !important; padding-block: 40px 70px !important; }
.bh-kicker .elementor-heading-title { font-family: var(--bh-sans) !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: 0.34em !important; text-transform: uppercase; color: var(--bh-gold-2) !important; line-height: 1.4 !important; }
.bh-hero h1.elementor-heading-title {
	font-family: var(--bh-caps) !important; font-weight: 500 !important; text-transform: uppercase;
	font-size: clamp(2.5rem, min(5.6vw, 9.4vh), 6.2rem) !important; letter-spacing: 0.07em !important; line-height: 1.08 !important;
	margin: 30px 0 0 !important; color: #f6efdf; text-shadow: 0 2px 40px rgba(8, 20, 13, 0.6);
}
.bh-hero h1 .bh-l { display: inline-block; overflow: hidden; padding-bottom: 0.04em; vertical-align: top; }
.bh-ornament { display: flex; align-items: center; gap: 14px; margin: 30px auto 28px; width: 220px; }
.bh-ornament i { flex: 1; height: 1px; background: linear-gradient(90deg, transparent, var(--bh-gold)); }
.bh-ornament i:last-child { background: linear-gradient(90deg, var(--bh-gold), transparent); }
.bh-ornament svg { width: 9px; height: 9px; fill: var(--bh-gold); }
.bh-hero .bh-lead { font-size: 16.5px !important; max-width: 31em !important; margin-inline: auto; color: rgba(246, 239, 223, 0.74); text-align: center; }
.bh-hero-ctas { justify-content: center !important; align-items: center !important; gap: 34px !important; margin-top: 38px !important; }
.bh-scroll-cue { left: 50% !important; right: auto !important; transform: translateX(-50%); flex-direction: column-reverse !important; gap: 12px !important; }

/* buttons: squared, engraved feel */
.bh-btn .elementor-button { border-radius: 1px !important; padding: 19px 34px !important; font-size: 11.5px !important; font-weight: 700 !important; letter-spacing: 0.22em !important; text-transform: uppercase; }
.bh-btn .elementor-button-text::after { content: none !important; }
.bh-btn-ghost .elementor-button { border-radius: 1px !important; }
.bh-textlink { font: 700 11.5px/1 var(--bh-sans); letter-spacing: 0.22em; text-transform: uppercase; color: var(--bh-ivory); padding: 8px 0; border-bottom: 1px solid rgba(220, 194, 141, 0.55); transition: color 0.3s, border-color 0.3s; }
.bh-textlink:hover { color: var(--bh-gold-2); border-color: var(--bh-gold-2); }
.bh-link a, a.bh-link { font-size: 11.5px !important; font-weight: 700 !important; letter-spacing: 0.2em !important; text-transform: uppercase; }

/* section labels and headings: no dash-line, no italic accent words */
.bh-eyebrow .elementor-heading-title::before { content: none !important; }
.bh-eyebrow .elementor-heading-title { font-family: var(--bh-sans) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.3em !important; }
.bh-page .bh-h2 em, .bh-page .elementor-heading-title em { font-style: normal !important; color: inherit !important; }

/* nav: small caps */
.bh-nav .elementor-nav-menu--main .elementor-item { font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: 0.16em !important; text-transform: uppercase; padding: 10px 15px !important; }
.bh-nav .elementor-nav-menu--main .sub-menu .elementor-sub-item { text-transform: none; letter-spacing: 0.01em !important; }

@media (max-width: 1024px) {
	.bh-hero-copy { padding-block: 150px 70px !important; }
	.bh-hero h1.elementor-heading-title { font-size: clamp(2.1rem, 9.2vw, 3.4rem) !important; letter-spacing: 0.05em !important; }
	.bh-hero-ctas { flex-direction: column !important; gap: 22px !important; }
	.bh-hero-ctas .elementor-widget-button { width: auto !important; }
}.bh-hero-copy .elementor-heading-title, .bh-hero-copy .elementor-widget-text-editor, .bh-hero-copy p { text-align: center !important; }
@media (max-width: 600px) { .bh-kicker .elementor-heading-title { font-size: 10px !important; letter-spacing: 0.28em !important; } }.bh-inst-ctas { margin-top: 56px !important; }

/* =====================================================================
   v3 (2026-10-24): light motion, green & gold rhythm, carousel buttons, refined hovers, footer brand.
   ===================================================================== */
:root { --bh-green-3: #173424; --bh-green-4: #1e4330; --bh-ease-out: cubic-bezier(0.16, 1, 0.3, 1); }

/* upright (lining) numerals everywhere: "BPC-157", prices, lots */
.bh-page, .bh-header, .bh-footer, .bh-page .elementor-heading-title, .bh-footer .elementor-heading-title { font-variant-numeric: lining-nums proportional-nums; font-feature-settings: "lnum" 1, "pnum" 1; }

/* ---------- reveals (classes added by home.js; content is visible without JS) ---------- */
.bh-motion .bh-reveal, .bh-motion .bh-split, .bh-motion .bh-stagger-item { opacity: 0; transform: translate3d(0, 26px, 0); transition: opacity 0.9s var(--bh-ease-out), transform 1.1s var(--bh-ease-out); transition-delay: calc(var(--i, 0) * 90ms); }
.bh-motion .bh-reveal.is-in, .bh-motion .bh-split.is-in, .bh-motion .bh-stagger-item.is-in { opacity: 1; transform: none; }
.bh-motion .bh-hero-line { display: inline-block; transform: translate3d(0, 105%, 0); transition: transform 1.3s var(--bh-ease-out); }
.bh-motion .bh-l:nth-child(3) .bh-hero-line, .bh-motion .bh-l + .bh-l .bh-hero-line { transition-delay: 0.1s; }
.bh-motion .bh-hero-fade { opacity: 0; transform: translate3d(0, 14px, 0); transition: opacity 1.1s var(--bh-ease-out) 0.45s, transform 1.1s var(--bh-ease-out) 0.45s; }
.bh-loaded .bh-hero-line, .bh-loaded .bh-hero-fade { transform: none; opacity: 1; }
.bh-hero-copy { will-change: transform, opacity; }

/* ---------- section rhythm: deep green and gold ---------- */
.bh-gallery { background: var(--bh-green-3) !important; color: var(--bh-ivory); min-height: 0 !important; display: block !important; padding-block: clamp(96px, 11vw, 150px) !important; }
.bh-gallery .bh-eyebrow .elementor-heading-title, .bh-cats .bh-eyebrow .elementor-heading-title, .bh-res .bh-eyebrow .elementor-heading-title { color: var(--bh-gold) !important; }
.bh-gallery .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-gallery .bh-link, .bh-cats .bh-link { color: var(--bh-ivory); }
.bh-process { background: var(--bh-ink) !important; }
.bh-cats { background: var(--bh-green-3) !important; color: var(--bh-ivory); }
.bh-cats .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-cats-grid { border-color: rgba(220, 194, 141, 0.2) !important; }
.bh-cat { border-color: rgba(220, 194, 141, 0.2) !important; color: var(--bh-ivory); }
.bh-cat::before { background: var(--bh-green-4) !important; }
.bh-cat-num .elementor-heading-title { color: var(--bh-gold) !important; }
.bh-cat-desc { color: rgba(245, 240, 229, 0.62) !important; }
.bh-cat-arrow { border-color: rgba(220, 194, 141, 0.45) !important; color: var(--bh-gold-2); opacity: 1 !important; }
.bh-statement, .bh-certs, .bh-res { background: var(--bh-ivory) !important; }
/* a hairline of gold where green meets ivory */
.bh-statement::before, .bh-certs::before, .bh-res::before { content: ""; position: absolute; left: 50%; top: 0; width: 1px; height: 64px; background: linear-gradient(var(--bh-gold), transparent); }

/* ---------- carousel: buttons, native swipe ---------- */
.bh-gallery-viewport { overflow-x: auto !important; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; scroll-padding-inline: max(var(--bh-gutter), (100vw - var(--bh-max)) / 2); }
.bh-gallery-viewport::-webkit-scrollbar { display: none; }
.bh-gallery-track { width: max-content !important; }
.bh-card, .bh-card-end { scroll-snap-align: start; }
.bh-car-nav { display: flex; align-items: center; gap: 12px; }
.bh-car-nav .bh-link { margin-right: 18px; }
.bh-car-btn { width: 52px; height: 52px; border-radius: 50%; border: 1px solid rgba(220, 194, 141, 0.5); background: transparent; color: var(--bh-gold-2); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background 0.5s var(--bh-ease-out), color 0.5s var(--bh-ease-out), border-color 0.5s, opacity 0.3s; }
.bh-car-btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.bh-car-btn:hover:not(:disabled) { background: var(--bh-gold); border-color: var(--bh-gold); color: var(--bh-ink); }
.bh-car-btn:disabled { opacity: 0.3; cursor: default; }

/* ---------- cards on green ---------- */
.bh-card { background: var(--bh-ivory) !important; border: 0 !important; box-shadow: 0 0 0 1px rgba(220, 194, 141, 0) !important; transition: transform 0.8s var(--bh-ease-out), box-shadow 0.8s var(--bh-ease-out) !important; }
.bh-card:hover { transform: translate3d(0, -8px, 0); box-shadow: 0 0 0 1px rgba(220, 194, 141, 0.9), 0 40px 70px -36px rgba(0, 0, 0, 0.7) !important; }
.bh-card-media img { transition: transform 1.4s var(--bh-ease-out) !important; }
.bh-card:hover .bh-card-media img { transform: scale(1.06) !important; }
.bh-card-name .elementor-heading-title { font-weight: 500 !important; }
.bh-card-end { border-color: rgba(220, 194, 141, 0.35) !important; color: var(--bh-ivory); }
.bh-card-end .elementor-heading-title span { color: var(--bh-gold) !important; }

/* ---------- buttons and links: refined hovers ---------- */
.bh-btn .elementor-button { position: relative; overflow: hidden; isolation: isolate; transition: color 0.6s var(--bh-ease-out), border-color 0.6s var(--bh-ease-out), background 0.6s var(--bh-ease-out) !important; }
.bh-btn .elementor-button::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(105deg, transparent 30%, rgba(255, 246, 220, 0.55) 50%, transparent 70%); transform: translateX(-120%); transition: transform 0.9s var(--bh-ease-out); }
.bh-btn .elementor-button:hover::before { transform: translateX(120%); }
.bh-btn:not(.bh-btn-ghost) .elementor-button:hover { background: #d2b06a !important; border-color: #d2b06a !important; color: var(--bh-ink) !important; }
.bh-dark .bh-btn-ghost .elementor-button:hover, .bh-inst .bh-btn-ghost .elementor-button:hover { background: transparent !important; color: var(--bh-gold-2) !important; border-color: var(--bh-gold) !important; }
.bh-textlink, .bh-link a, a.bh-link { background: linear-gradient(currentColor, currentColor) 0 100% / 100% 1px no-repeat !important; border: 0 !important; padding-bottom: 6px !important; transition: background-size 0.6s var(--bh-ease-out), color 0.4s !important; }
.bh-textlink:hover, .bh-link a:hover, a.bh-link:hover { background-size: 40% 1px !important; color: var(--bh-gold-2) !important; }
.bh-statement .bh-link:hover, .bh-certs .bh-link:hover, .bh-res .bh-link:hover { color: var(--bh-gold-deep) !important; }
.bh-res-card { transition: transform 0.8s var(--bh-ease-out), box-shadow 0.8s var(--bh-ease-out), background 0.6s !important; }
.bh-res-card:hover { transform: translate3d(0, -6px, 0); box-shadow: 0 0 0 1px var(--bh-gold), 0 30px 60px -36px rgba(11, 26, 18, 0.45); background: #fffdf8 !important; }
.bh-res-card .bh-res-icon { transition: background 0.6s, color 0.6s; }
.bh-res-card:hover .bh-res-icon { background: var(--bh-green-3); color: var(--bh-gold-2); border-color: var(--bh-green-3); }
.bh-cat, .bh-cat::before { transition-timing-function: var(--bh-ease-out) !important; transition-duration: 0.8s !important; }
.bh-header .elementor-nav-menu--main .elementor-item::after { transition-timing-function: var(--bh-ease-out) !important; }

/* ---------- footer brand: logo + flags ---------- */
.bh-foot-brand { display: flex; flex-direction: column; gap: 22px; margin-bottom: 34px; }
.bh-foot-logo { display: inline-flex; align-items: center; gap: 14px; color: var(--bh-ivory); }
.bh-foot-logo img { width: 58px; height: 58px; object-fit: contain; filter: drop-shadow(0 4px 14px rgba(196, 161, 90, 0.35)); }
.bh-foot-logo span { font-family: var(--bh-caps); font-size: 20px; font-weight: 600; letter-spacing: 0.26em; line-height: 1; }
.bh-foot-logo small { display: block; font-size: 9px; letter-spacing: 0.5em; margin-top: 7px; color: var(--bh-gold-2); }
.bh-flags { display: flex; gap: 10px; }
.bh-flag { position: relative; width: 32px; height: 32px; border-radius: 50%; padding: 3px; background: conic-gradient(from 210deg, #8a6220, #e6c476, #cb9a3a, #f3dda2, #7d5518, #cb9a3a, #8a6220); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.55); transition: transform 0.5s var(--bh-ease-out); }
.bh-flag:hover { transform: translateY(-2px); }
.bh-flag svg { width: 100%; height: 100%; border-radius: 50%; display: block; }
.bh-flag::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: radial-gradient(120% 90% at 30% 18%, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.06) 42%, rgba(0, 0, 0, 0.22) 72%, rgba(0, 0, 0, 0.42) 100%); pointer-events: none; }

@media (max-width: 1024px) {
	.bh-car-btn { width: 44px; height: 44px; }
	.bh-car-nav .bh-link { display: none; }
	.bh-gallery-head { flex-direction: row !important; align-items: flex-end !important; }
}.bh-card { color: var(--bh-text) !important; }
.bh-card .bh-card-name .elementor-heading-title { color: var(--bh-ink) !important; }
.bh-car-btn { flex: none; }
/* scrolled header: deep green glass, ivory type */
.bh-header.is-solid { background: rgba(14, 31, 21, 0.86) !important; color: var(--bh-ivory) !important; }
.bh-header.is-solid::after { background: rgba(196, 161, 90, 0.22) !important; }
.bh-mol-stage canvas { opacity: 0; }
.bh-mol-stage.is-ready canvas { opacity: 0.85; }
.bh-gallery-head > .elementor-widget-html { flex: none !important; width: auto !important; }
.bh-mol-stage.is-ready canvas { opacity: 0.72; }

/* =====================================================================
   v4 (2026-10-24): engraved gold labels, stronger CTAs and hovers, green throughout.
   ===================================================================== */
:root { --bh-gold-grad: linear-gradient(100deg, #a07a33 0%, #e9cf8f 38%, #f6e3b0 50%, #c9a24f 66%, #9c7631 100%); --bh-btn-grad: linear-gradient(135deg, #ecd08e 0%, #c9a24f 52%, #a9823a 100%); }

/* ---------- gold section labels: metallic small caps, numeral set apart ---------- */
.bh-eyebrow .elementor-heading-title, .bh-kicker .elementor-heading-title {
	font-family: var(--bh-caps) !important; font-size: 12.5px !important; font-weight: 600 !important; letter-spacing: 0.32em !important;
	text-transform: uppercase; background: var(--bh-gold-grad); -webkit-background-clip: text; background-clip: text; color: transparent !important;
	display: inline-flex !important; align-items: center; gap: 16px; padding-bottom: 2px;
}
.bh-eyebrow .bh-num { font-family: var(--bh-display); font-size: 19px; font-weight: 600; letter-spacing: 0.08em; display: inline-flex; align-items: center; gap: 16px; }
.bh-eyebrow .bh-num::after { content: ""; width: 6px; height: 6px; transform: rotate(45deg); background: #c9a24f; box-shadow: 0 0 10px rgba(233, 207, 143, 0.6); }
.bh-eyebrow { margin-bottom: 22px !important; }
.bh-kicker .elementor-heading-title { font-family: var(--bh-sans) !important; font-weight: 700 !important; font-size: 11.5px !important; letter-spacing: 0.36em !important; }

/* ---------- headings and body ---------- */
.bh-page .bh-h2 .elementor-heading-title { font-weight: 500 !important; letter-spacing: -0.015em !important; font-size: clamp(2.5rem, 4.8vw, 4.8rem) !important; line-height: 1.02 !important; }
.bh-lead, .bh-lead p { font-size: 17px; line-height: 1.75; }

/* ---------- green throughout (certificates stay on paper, for the document) ---------- */
.bh-statement { background: var(--bh-green-3) !important; color: var(--bh-ivory); }
.bh-gallery { background: var(--bh-green) !important; }
.bh-res { background: var(--bh-green) !important; color: var(--bh-ivory); }
.bh-footer { background: #08130d !important; }
.bh-statement .bh-h2 .elementor-heading-title, .bh-res .bh-h2 .elementor-heading-title, .bh-res > .bh-wrap > .elementor-widget-heading .elementor-heading-title { color: var(--bh-ivory); }
.bh-statement .bh-lead, .bh-res .bh-res-grid ~ * .bh-lead { color: rgba(245, 240, 229, 0.74) !important; }
.bh-statement .bh-link, .bh-statement a.bh-link { color: var(--bh-gold-2) !important; }
.bh-res-card { color: var(--bh-text) !important; }
.bh-statement::before, .bh-res::before { background: linear-gradient(var(--bh-gold), transparent) !important; }
.bh-gallery, .bh-cats, .bh-process, .bh-inst { box-shadow: inset 0 1px 0 rgba(196, 161, 90, 0.16); }
.bh-figure { box-shadow: 0 0 0 1px rgba(196, 161, 90, 0.35), 0 40px 80px -40px rgba(0, 0, 0, 0.6); }

/* ---------- buttons: strong, clearly visible ---------- */
.bh-btn .elementor-button {
	padding: 21px 40px !important; font-size: 12px !important; font-weight: 800 !important; letter-spacing: 0.22em !important;
	background: var(--bh-btn-grad) !important; background-size: 160% 100% !important; background-position: 0% 0 !important;
	color: var(--bh-ink) !important; border: 0 !important; border-radius: 2px !important;
	box-shadow: 0 14px 34px -14px rgba(201, 162, 79, 0.65), inset 0 1px 0 rgba(255, 255, 255, 0.45), inset 0 0 0 1px rgba(255, 240, 200, 0.25) !important;
	transition: transform 0.5s var(--bh-ease-out), box-shadow 0.5s var(--bh-ease-out), background-position 0.8s var(--bh-ease-out), color 0.4s !important;
}
.bh-btn:not(.bh-btn-ghost) .elementor-button:hover { transform: translate3d(0, -3px, 0); background-position: 100% 0 !important; box-shadow: 0 22px 44px -16px rgba(201, 162, 79, 0.85), inset 0 1px 0 rgba(255, 255, 255, 0.55), inset 0 0 0 1px rgba(255, 240, 200, 0.35) !important; color: var(--bh-ink) !important; }
.bh-btn-ghost .elementor-button { background: transparent !important; color: var(--bh-gold-2) !important; box-shadow: inset 0 0 0 1.5px var(--bh-gold) !important; }
.bh-btn-ghost .elementor-button::before { background: var(--bh-btn-grad) !important; transform: scaleX(0) !important; transform-origin: right center; transition: transform 0.6s var(--bh-ease-out) !important; }
.bh-btn-ghost .elementor-button:hover::before { transform: scaleX(1) !important; transform-origin: left center; }
.bh-btn-ghost .elementor-button:hover { color: var(--bh-ink) !important; transform: translate3d(0, -3px, 0); }
.bh-certs .bh-btn-ghost .elementor-button { color: var(--bh-gold-deep) !important; }

/* ---------- hovers: confident, smooth ---------- */
.bh-card:hover { transform: translate3d(0, -12px, 0) !important; box-shadow: 0 0 0 1px var(--bh-gold), 0 50px 80px -40px rgba(0, 0, 0, 0.75), 0 0 40px -10px rgba(201, 162, 79, 0.35) !important; }
.bh-card:hover .bh-card-media img { transform: scale(1.09) !important; }
.bh-card-arrow { transition: background 0.5s var(--bh-ease-out), color 0.5s, border-color 0.5s, transform 0.5s var(--bh-ease-out) !important; }
.bh-card:hover .bh-card-arrow { background: var(--bh-btn-grad) !important; color: var(--bh-ink) !important; border-color: transparent !important; transform: translateX(4px); }
.bh-card-name .elementor-heading-title { transition: color 0.4s; }
.bh-card:hover .bh-card-name .elementor-heading-title { color: var(--bh-gold-deep) !important; }
.bh-cat::after { content: ""; position: absolute; left: 0; top: 0; height: 2px; width: 100%; background: var(--bh-btn-grad); transform: scaleX(0); transform-origin: left; transition: transform 0.8s var(--bh-ease-out); }
.bh-cat:hover::after { transform: scaleX(1); }
.bh-cat-name .elementor-heading-title { transition: transform 0.7s var(--bh-ease-out), color 0.5s !important; }
.bh-cat:hover .bh-cat-name .elementor-heading-title { transform: translateX(10px); color: var(--bh-gold-2) !important; }
.bh-cat:hover .bh-cat-arrow { background: var(--bh-btn-grad) !important; border-color: transparent !important; color: var(--bh-ink) !important; }
.bh-res-card:hover { transform: translate3d(0, -10px, 0) !important; box-shadow: 0 0 0 1px var(--bh-gold), 0 40px 70px -36px rgba(0, 0, 0, 0.7) !important; }
.bh-nav .elementor-nav-menu--main .elementor-item:hover { color: var(--bh-gold-2) !important; }
.bh-foot-col a { display: inline-block; transition: color 0.3s, transform 0.4s var(--bh-ease-out) !important; }
.bh-foot-col a:hover { transform: translateX(5px); }
.bh-link a:hover, a.bh-link:hover, .bh-textlink:hover { color: var(--bh-gold-2) !important; }
.bh-page .bh-btn-ghost .elementor-button:hover, .bh-page .bh-btn-ghost .elementor-button:hover .elementor-button-text { color: var(--bh-ink) !important; }
.bh-certs .bh-eyebrow .elementor-heading-title { background: linear-gradient(100deg, #6f4f1a 0%, #b38838 45%, #d1aa5c 55%, #80601f 100%); -webkit-background-clip: text; background-clip: text; }
.bh-certs .bh-eyebrow .bh-num::after { background: #a8823a; box-shadow: none; }
.bh-res-card .bh-link { display: inline-block; font-size: 11.5px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bh-gold-deep); padding-bottom: 6px; background: linear-gradient(currentColor, currentColor) 0 100% / 100% 1px no-repeat; transition: background-size 0.6s var(--bh-ease-out); }
.bh-res-card:hover .bh-link { background-size: 40% 1px; }
.bh-inst-ctas { gap: 16px !important; margin-top: 64px !important; }
@media (max-width: 600px) { .bh-kicker .elementor-heading-title { font-size: 9.5px !important; letter-spacing: 0.24em !important; white-space: nowrap; } }

/* =====================================================================
   v5 DESIGN SYSTEM (2026-10-24) — the base for every page. Later rules override all earlier versions.
   Labels: gold serif, sentence case. Buttons: one component, two variants (solid gold, gold outline), 15px.
   ===================================================================== */
:root { --bh-btn-h: 56px; }

/* ---------- labels above headings ---------- */
.bh-page .bh-eyebrow .elementor-heading-title, .bh-page .bh-kicker .elementor-heading-title, .bh-footer .bh-foot-title .elementor-heading-title {
	font-family: var(--bh-display) !important; font-size: 22px !important; font-weight: 600 !important; font-style: normal !important;
	letter-spacing: 0.01em !important; text-transform: none !important; line-height: 1.2 !important;
	background: none !important; -webkit-background-clip: border-box !important; background-clip: border-box !important;
	color: var(--bh-gold) !important; display: block !important; padding: 0 !important;
}
.bh-page .bh-eyebrow .elementor-heading-title::before, .bh-page .bh-eyebrow .elementor-heading-title::after { content: none !important; }
.bh-page .bh-eyebrow { margin-bottom: 14px !important; }
.bh-certs .bh-eyebrow .elementor-heading-title { color: var(--bh-gold-deep) !important; }
.bh-page .bh-kicker .elementor-heading-title { font-size: 21px !important; color: var(--bh-gold-2) !important; }
.bh-footer .bh-foot-title .elementor-heading-title { font-size: 20px !important; margin-bottom: 18px !important; }
.bh-card-cat .elementor-heading-title { font-family: var(--bh-sans) !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0.02em !important; text-transform: none !important; color: var(--bh-gold-deep) !important; }

/* ---------- buttons: one component ---------- */
.bh-page .bh-btn .elementor-button, .bh-page a.bh-b {
	display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 12px !important;
	min-height: var(--bh-btn-h) !important; padding: 0 32px !important; border-radius: 3px !important;
	font-family: var(--bh-sans) !important; font-size: 15px !important; font-weight: 600 !important; letter-spacing: 0.01em !important; text-transform: none !important; line-height: 1 !important;
	background: linear-gradient(135deg, #e6c98a 0%, #c9a24f 55%, #b08a40 100%) !important; background-size: 100% 100% !important;
	color: var(--bh-ink) !important; border: 1.5px solid #c9a24f !important;
	box-shadow: 0 10px 28px -14px rgba(201, 162, 79, 0.7) !important;
	transform: none; transition: transform 0.45s var(--bh-ease-out), box-shadow 0.45s var(--bh-ease-out), background 0.45s, color 0.35s, border-color 0.35s !important;
	white-space: nowrap; text-decoration: none !important;
}
.bh-page .bh-btn .elementor-button::before, .bh-page a.bh-b::before { content: none !important; }
.bh-page .bh-btn .elementor-button .elementor-button-text::after, .bh-page a.bh-b::after { content: "\2192" !important; display: inline-block !important; margin: 0 !important; font-weight: 400; transition: transform 0.45s var(--bh-ease-out); }
.bh-page .bh-btn .elementor-button .elementor-button-text { display: inline-flex; align-items: center; gap: 12px; }
.bh-page .bh-btn .elementor-button:hover, .bh-page a.bh-b:hover {
	transform: translate3d(0, -3px, 0) !important; color: var(--bh-ink) !important; border-color: #e6c98a !important;
	background: linear-gradient(135deg, #f1dba5 0%, #d6b062 55%, #bf9748 100%) !important; box-shadow: 0 20px 40px -16px rgba(201, 162, 79, 0.9) !important;
}
.bh-page .bh-btn .elementor-button:hover .elementor-button-text::after, .bh-page a.bh-b:hover::after { transform: translateX(5px); }
/* outline variant */
.bh-page .bh-btn-ghost .elementor-button, .bh-page a.bh-b-ghost { background: transparent !important; color: var(--bh-gold-2) !important; border-color: var(--bh-gold) !important; box-shadow: none !important; }
.bh-page .bh-btn-ghost .elementor-button:hover, .bh-page a.bh-b-ghost:hover { background: var(--bh-gold) !important; color: var(--bh-ink) !important; border-color: var(--bh-gold) !important; box-shadow: 0 20px 40px -18px rgba(201, 162, 79, 0.8) !important; }
.bh-certs .bh-btn-ghost .elementor-button, .bh-certs a.bh-b-ghost { color: var(--bh-gold-deep) !important; border-color: var(--bh-gold-deep) !important; }
.bh-ctas, .bh-hero-ctas, .bh-inst-ctas { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; gap: 14px !important; }
.bh-statement .bh-ctas { margin-top: 36px !important; }
.bh-hero-ctas { justify-content: center !important; margin-top: 40px !important; }
.bh-car-nav { gap: 12px !important; }
.bh-car-nav a.bh-b { margin-right: 14px; }
.bh-car-btn { width: var(--bh-btn-h) !important; height: var(--bh-btn-h) !important; border: 1.5px solid var(--bh-gold) !important; color: var(--bh-gold-2) !important; }
.bh-car-btn svg { width: 20px !important; height: 20px !important; stroke-width: 1.8 !important; }

/* resource card call-to-action: same type as buttons */
.bh-card-cta { display: inline-flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 26px; font: 600 15px/1 var(--bh-sans); color: var(--bh-gold-deep); }
.bh-card-cta::after { content: "\2192"; transition: transform 0.45s var(--bh-ease-out); }
.bh-res-card:hover .bh-card-cta::after { transform: translateX(6px); }

/* category tiles without numerals */
.bh-cat-name .elementor-heading-title { margin-top: 0 !important; }
.bh-cat { justify-content: flex-end !important; min-height: 230px !important; }

@media (max-width: 1024px) {
	.bh-car-nav a.bh-b { display: none !important; }
	.bh-hero-ctas { flex-direction: column !important; align-items: center !important; }
	.bh-hero-ctas .elementor-widget-button, .bh-hero-ctas .elementor-button { width: 100% !important; max-width: 320px; }
	.bh-car-btn { width: 48px !important; height: 48px !important; }
}
.bh-cats-head > .elementor-widget-html { flex: none !important; width: auto !important; }
/* category arrow = same circle as the carousel buttons */
.bh-page .bh-cat-arrow { width: 52px !important; height: 52px !important; border: 1.5px solid var(--bh-gold) !important; color: var(--bh-gold-2) !important; transform: none !important; font-size: 18px; opacity: 1 !important; }
.bh-page .bh-cat:hover .bh-cat-arrow { background: var(--bh-gold) !important; color: var(--bh-ink) !important; border-color: var(--bh-gold) !important; transform: translateX(4px) !important; }
.bh-inst-ctas { margin-top: 48px !important; }

/* =====================================================================
   v6 (2026-10-24): content from the original homepage, 2D gold dots, lighter hero.
   ===================================================================== */
.bh-mol-stage canvas.bh-embers { opacity: 1 !important; transition: none; }

/* promises */
.bh-pillars { background: var(--bh-green) !important; color: var(--bh-ivory); }
.bh-pillars .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-pillars-grid { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 18px !important; margin-top: 56px; }
.bh-pillar { padding: 34px 28px 32px !important; border: 1px solid rgba(196, 161, 90, 0.22); border-radius: 6px; background: linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0)); position: relative; overflow: hidden; transition: transform 0.6s var(--bh-ease-out), border-color 0.5s, background 0.6s !important; }
.bh-pillar::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: linear-gradient(90deg, #e6c98a, #c9a24f, #b08a40); transform: scaleX(0); transform-origin: left; transition: transform 0.7s var(--bh-ease-out); }
.bh-pillar:hover { transform: translate3d(0, -8px, 0); border-color: rgba(196, 161, 90, 0.6); background: linear-gradient(180deg, rgba(196, 161, 90, 0.09), rgba(196, 161, 90, 0.01)); }
.bh-pillar:hover::after { transform: scaleX(1); }
.bh-pillar-icon { width: 54px; height: 54px; border-radius: 50%; border: 1.5px solid var(--bh-gold); display: inline-flex; align-items: center; justify-content: center; color: var(--bh-gold-2); transition: background 0.5s, color 0.5s; }
.bh-pillar:hover .bh-pillar-icon { background: var(--bh-gold); color: var(--bh-ink); }
.bh-pillar-icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.bh-pillar .elementor-heading-title { font-size: 26px !important; margin: 28px 0 10px !important; color: var(--bh-ivory); }
.bh-pillar .bh-lead, .bh-pillar p { font-size: 15px !important; line-height: 1.65; color: rgba(245, 240, 229, 0.7); }

/* assays */
.bh-assays { background: var(--bh-ivory) !important; }
.bh-assays-grid { display: grid !important; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(40px, 7vw, 120px) !important; align-items: start; }
.bh-assays-intro { position: sticky !important; top: 130px; }
.bh-assays-intro .bh-lead { margin-top: 24px; }
.bh-assays .bh-eyebrow .elementor-heading-title { color: var(--bh-gold-deep) !important; }
.bh-assay-list { border-top: 1px solid var(--bh-line); }
.bh-assay { display: grid !important; grid-template-columns: 220px 1fr; gap: 24px; align-items: baseline; padding: 30px 8px 30px 0 !important; border-bottom: 1px solid var(--bh-line); position: relative; transition: padding 0.6s var(--bh-ease-out) !important; }
.bh-assay::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(196, 161, 90, 0.14), rgba(196, 161, 90, 0)); opacity: 0; transition: opacity 0.6s; pointer-events: none; }
.bh-assay:hover { padding-left: 18px !important; }
.bh-assay:hover::before { opacity: 1; }
.bh-assay .elementor-heading-title { font-size: 28px !important; color: var(--bh-ink); transition: color 0.4s; }
.bh-assay:hover .elementor-heading-title { color: var(--bh-gold-deep); }
.bh-assay p { margin: 0 !important; font-size: 16px; color: var(--bh-muted); }

/* faq */
.bh-faqs { background: var(--bh-green-3) !important; color: var(--bh-ivory); }
.bh-faqs .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-faq-grid { display: grid !important; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: clamp(40px, 7vw, 120px) !important; align-items: start; }
.bh-faq-intro .bh-ctas { margin-top: 32px !important; }
.bh-faq { border-top: 1px solid rgba(196, 161, 90, 0.25); }
.bh-faq-item { border-bottom: 1px solid rgba(196, 161, 90, 0.25); }
.bh-faq-item summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 28px 0; font-family: var(--bh-display); font-size: 26px; line-height: 1.25; color: var(--bh-ivory); transition: color 0.4s; }
.bh-faq-item summary::-webkit-details-marker { display: none; }
.bh-faq-item summary:hover { color: var(--bh-gold-2); }
.bh-faq-item summary i { flex: none; position: relative; width: 44px; height: 44px; border-radius: 50%; border: 1.5px solid var(--bh-gold); transition: background 0.4s, transform 0.5s var(--bh-ease-out); }
.bh-faq-item summary i::before, .bh-faq-item summary i::after { content: ""; position: absolute; left: 50%; top: 50%; width: 14px; height: 1.5px; background: var(--bh-gold-2); transform: translate(-50%, -50%); transition: transform 0.5s var(--bh-ease-out), background 0.4s; }
.bh-faq-item summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.bh-faq-item[open] summary i { background: var(--bh-gold); transform: rotate(180deg); }
.bh-faq-item[open] summary i::before, .bh-faq-item[open] summary i::after { background: var(--bh-ink); }
.bh-faq-item[open] summary i::after { transform: translate(-50%, -50%) rotate(0deg); }
.bh-faq-a { padding: 0 60px 28px 0; color: rgba(245, 240, 229, 0.72); font-size: 16px; line-height: 1.75; }
.bh-faq-item[open] .bh-faq-a { animation: bh-faq-in 0.6s var(--bh-ease-out); }
@keyframes bh-faq-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }

@media (max-width: 1024px) {
	.bh-pillars-grid { grid-template-columns: 1fr 1fr; }
	.bh-assays-grid, .bh-faq-grid { grid-template-columns: 1fr; }
	.bh-assays-intro { position: relative !important; top: 0; }
}
@media (max-width: 600px) {
	.bh-pillars-grid { grid-template-columns: 1fr; }
	.bh-assay { grid-template-columns: 1fr; gap: 8px; }
	.bh-faq-item summary { font-size: 21px; }
	.bh-faq-a { padding-right: 0; }
}
.bh-pillars-grid { margin-top: 56px !important; }
.bh-mol-stage.is-ready canvas { opacity: 0.92 !important; }

/* =====================================================================
   v7 (2026-10-24): real gold, editorial hero with vial photography, professional motion.
   ===================================================================== */
:root {
	--bh-gold: #cfa246; --bh-gold-2: #e8c86f; --bh-gold-deep: #94701f;
	--bh-metal: linear-gradient(135deg, #f6e3a1 0%, #dcb556 28%, #b8872a 52%, #e6c46a 74%, #a87b24 100%);
}
/* labels: real gold */
.bh-page .bh-eyebrow .elementor-heading-title, .bh-page .bh-kicker .elementor-heading-title, .bh-footer .bh-foot-title .elementor-heading-title { color: #d9b257 !important; }
.bh-certs .bh-eyebrow .elementor-heading-title, .bh-assays .bh-eyebrow .elementor-heading-title { color: #94701f !important; }

/* buttons: polished metal */
.bh-page .bh-btn .elementor-button, .bh-page a.bh-b { background: var(--bh-metal) !important; background-size: 220% 100% !important; background-position: 0% 50% !important; border: 0 !important; color: #10200f !important; box-shadow: 0 1px 0 rgba(255, 245, 210, 0.7) inset, 0 -1px 0 rgba(120, 85, 20, 0.35) inset, 0 12px 30px -14px rgba(184, 135, 42, 0.8) !important; transition: background-position 0.9s var(--bh-ease-out), transform 0.45s var(--bh-ease-out), box-shadow 0.45s !important; }
.bh-page .bh-btn .elementor-button:hover, .bh-page a.bh-b:hover { background: var(--bh-metal) !important; background-size: 220% 100% !important; background-position: 100% 50% !important; color: #10200f !important; transform: translate3d(0, -2px, 0) !important; box-shadow: 0 1px 0 rgba(255, 245, 210, 0.8) inset, 0 18px 36px -14px rgba(184, 135, 42, 0.95) !important; }
.bh-page .bh-btn-ghost .elementor-button, .bh-page a.bh-b-ghost { background: transparent !important; color: #e8c86f !important; box-shadow: inset 0 0 0 1.5px #cfa246 !important; }
.bh-page .bh-btn-ghost .elementor-button:hover, .bh-page a.bh-b-ghost:hover { background: var(--bh-metal) !important; background-size: 220% 100% !important; color: #10200f !important; box-shadow: 0 18px 36px -16px rgba(184, 135, 42, 0.9) !important; }
.bh-certs .bh-btn-ghost .elementor-button, .bh-certs a.bh-b-ghost, .bh-assays a.bh-b-ghost { color: #94701f !important; box-shadow: inset 0 0 0 1.5px #b88a2c !important; }
.bh-car-btn, .bh-page .bh-cat-arrow, .bh-pillar-icon, .bh-faq-item summary i { border-color: #cfa246 !important; }
.bh-car-btn:hover:not(:disabled), .bh-page .bh-cat:hover .bh-cat-arrow, .bh-pillar:hover .bh-pillar-icon, .bh-faq-item[open] summary i { background: var(--bh-metal) !important; border-color: transparent !important; color: #10200f !important; }

/* ---------- hero ---------- */
.bh-hero { min-height: 100svh; display: flex !important; flex-direction: column !important; }
.bh-hero::after { background: radial-gradient(70% 80% at 78% 45%, rgba(48, 98, 68, 0.38), rgba(12, 27, 18, 0) 65%) !important; }
.bh-hero-grid { flex: 1; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important; justify-items: stretch !important; text-align: left !important; gap: clamp(40px, 6vw, 100px) !important; align-items: center !important; padding-top: calc(var(--bh-header-h) + 30px) !important; }
.bh-hero-copy { max-width: 640px !important; margin: 0 !important; align-items: flex-start !important; padding: 0 !important; }
.bh-hero-copy .elementor-heading-title, .bh-hero-copy .elementor-widget-text-editor, .bh-hero-copy p { text-align: left !important; }
.bh-hero h1.elementor-heading-title { font-family: var(--bh-display) !important; text-transform: none !important; font-weight: 500 !important; letter-spacing: -0.02em !important; font-size: clamp(3.4rem, min(7vw, 11vh), 7.4rem) !important; line-height: 0.95 !important; margin: 18px 0 28px !important; text-shadow: none !important; }
.bh-hero h1 .bh-l { display: block !important; }
.bh-hero .bh-lead { margin: 0 !important; max-width: 30em !important; font-size: 18px !important; text-align: left !important; }
.bh-hero-ctas { justify-content: flex-start !important; margin-top: 40px !important; flex-direction: row !important; }
.bh-scroll-cue, .bh-ornament { display: none !important; }

.bh-hero-media { position: relative; height: min(68svh, 620px); min-height: 440px; }
.bh-hm { position: absolute; display: block; border-radius: 4px; overflow: hidden; background: #e7e6e2; box-shadow: 0 0 0 1px rgba(207, 162, 70, 0.55), 0 50px 90px -40px rgba(0, 0, 0, 0.8); transform: translate3d(var(--px, 0), var(--py, 0), 0); transition: box-shadow 0.6s; }
.bh-hm img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.6s var(--bh-ease-out); }
.bh-hm:hover img { transform: scale(1.05); }
.bh-hm-front { right: 4%; top: 6%; width: 64%; height: 82%; z-index: 2; }
.bh-hm-back { left: 0; bottom: 0; width: 42%; height: 52%; z-index: 1; filter: saturate(0.9); }
.bh-chip { position: absolute; z-index: 3; display: flex; flex-direction: column; gap: 6px; padding: 16px 20px; border-radius: 4px; background: rgba(12, 27, 18, 0.72); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid rgba(207, 162, 70, 0.45); color: var(--bh-ivory); transform: translate3d(var(--px, 0), var(--py, 0), 0); box-shadow: 0 24px 50px -24px rgba(0, 0, 0, 0.8); }
.bh-chip span { font: 500 12.5px/1 var(--bh-sans); color: rgba(245, 240, 229, 0.65); letter-spacing: 0.01em; }
.bh-chip b { font: 500 26px/1 var(--bh-display); color: #e8c86f; letter-spacing: 0; }
.bh-chip-b b { font-size: 19px; color: var(--bh-ivory); }
.bh-chip-a { left: 8%; top: 18%; }
.bh-chip-b { right: 0; bottom: 4%; }

.bh-trust { position: relative; z-index: 2; border-top: 1px solid rgba(207, 162, 70, 0.22); background: rgba(8, 19, 13, 0.35); }
.bh-trust-row { display: flex; justify-content: space-between; gap: 20px; padding-block: 22px; flex-wrap: wrap; }
.bh-trust span { display: inline-flex; align-items: center; gap: 10px; font: 500 14px/1.3 var(--bh-sans); color: rgba(245, 240, 229, 0.82); }
.bh-trust svg { width: 18px; height: 18px; flex: none; fill: none; stroke: #d9b257; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* ---------- motion: professional ---------- */
.bh-motion .bh-hm { clip-path: inset(100% 0 0 0); transition: clip-path 1.4s var(--bh-ease-out), box-shadow 0.6s; }
.bh-motion .bh-hm-front { transition-delay: 0.25s; }
.bh-motion .bh-hm-back { transition-delay: 0.45s; }
.bh-loaded .bh-hm { clip-path: inset(0 0 0 0); }
.bh-motion .bh-hm img { transform: scale(1.18); transition: transform 2s var(--bh-ease-out); }
.bh-loaded .bh-hm img { transform: scale(1); }
.bh-loaded .bh-hm:hover img { transform: scale(1.05); }
.bh-motion .bh-chip { opacity: 0; translate: 0 18px; transition: opacity 0.9s var(--bh-ease-out) 1.1s, translate 0.9s var(--bh-ease-out) 1.1s; }
.bh-motion .bh-chip-b { transition-delay: 1.3s; }
.bh-loaded .bh-chip { opacity: 1; translate: 0 0; }
.bh-motion .bh-trust span { opacity: 0; transition: opacity 0.8s var(--bh-ease-out) 1.4s; }
.bh-loaded .bh-trust span { opacity: 1; }
/* images in sections wipe in upward; headings rise */
.bh-motion .bh-figure, .bh-motion .bh-card-media { clip-path: inset(0 0 100% 0); transition: clip-path 1.3s var(--bh-ease-out) !important; opacity: 1 !important; transform: none !important; }
.bh-motion .bh-figure.is-in, .bh-motion .is-in .bh-card-media, .bh-motion .bh-stagger-item.is-in .bh-card-media { clip-path: inset(0 0 0 0); }
.bh-motion .bh-gallery .bh-card-media { clip-path: none; }
.bh-motion .bh-split { opacity: 0; transform: translate3d(0, 40px, 0); transition: opacity 1s var(--bh-ease-out), transform 1.2s var(--bh-ease-out); }
.bh-motion .bh-split.is-in { opacity: 1; transform: none; }
.bh-motion .bh-cert-card { opacity: 0; transform: translate3d(0, 50px, 0) rotate(-2deg); transition: opacity 1s var(--bh-ease-out), transform 1.4s var(--bh-ease-out); }
.bh-motion .bh-cert-card.is-in { opacity: 1; transform: rotate(-1deg); }

@media (max-width: 1024px) {
	.bh-hero-grid { grid-template-columns: 1fr !important; padding-top: calc(var(--bh-header-h) + 34px) !important; gap: 44px !important; }
	.bh-hero-copy { padding: 0 !important; }
	.bh-hero h1.elementor-heading-title { font-size: clamp(3rem, 13vw, 4.6rem) !important; }
	.bh-hero-media { height: 420px; min-height: 0; margin-bottom: 40px; }
	.bh-hero-ctas { flex-direction: column !important; align-items: stretch !important; width: 100%; }
	.bh-hero-ctas .elementor-widget-button, .bh-hero-ctas .elementor-button { width: 100% !important; max-width: none !important; }
	.bh-trust-row { flex-direction: column; gap: 12px; }
}
@media (max-width: 600px) {
	.bh-hero-media { height: 360px; }
	.bh-chip { padding: 12px 14px; }
	.bh-chip b { font-size: 21px; }
	.bh-chip-b b { font-size: 16px; }
}
.bh-page .bh-hm img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; object-position: 50% 40%; }
.bh-motion .bh-figure { clip-path: none !important; }
.bh-motion .bh-figure .elementor-widget-image { clip-path: inset(0 0 100% 0); transition: clip-path 1.4s var(--bh-ease-out); }
.bh-motion .bh-figure.is-in .elementor-widget-image { clip-path: inset(0 0 0 0); }
.bh-motion .bh-figure .bh-figure-tag { opacity: 0; transition: opacity 0.8s var(--bh-ease-out) 0.9s; }
.bh-motion .bh-figure.is-in .bh-figure-tag { opacity: 1; }

/* =====================================================================
   v8 (2026-10-26): signature gold-arc motif, centred hero, redesigned sections.
   ===================================================================== */
:root {
	--bh-gold-text: linear-gradient(100deg, #b8872e 0%, #f3d98f 40%, #c99a3b 58%, #f6e3a8 78%, #a87b24 100%);
	--bh-rings: radial-gradient(circle at 100% 0%, transparent 419px, rgba(207,162,70,.32) 420px, rgba(207,162,70,.32) 421px, transparent 422px),
		radial-gradient(circle at 100% 0%, transparent 479px, rgba(207,162,70,.18) 480px, rgba(207,162,70,.18) 481px, transparent 482px),
		radial-gradient(circle at 0% 100%, transparent 359px, rgba(207,162,70,.22) 360px, rgba(207,162,70,.22) 361px, transparent 362px);
}
.bh-gold-text { background: var(--bh-gold-text); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* ---------- hero: centred, arcs ---------- */
.bh-hero::after { background: radial-gradient(48% 42% at 50% 46%, rgba(10, 24, 16, 0.7) 0%, rgba(10, 24, 16, 0.25) 60%, rgba(10, 24, 16, 0) 100%) !important; }
.bh-hero-grid { grid-template-columns: 1fr !important; justify-items: center !important; text-align: center !important; padding-top: var(--bh-header-h) !important; padding-bottom: 18vh !important; }
.bh-hero-copy { max-width: 920px !important; align-items: center !important; margin: 0 auto !important; }
.bh-hero-copy .elementor-heading-title, .bh-hero-copy p { text-align: center !important; }
.bh-hero h1.elementor-heading-title { font-family: var(--bh-caps) !important; text-transform: uppercase !important; font-weight: 500 !important; letter-spacing: 0.07em !important; line-height: 1.06 !important; font-size: clamp(2.5rem, min(5.8vw, 9.6vh), 6.4rem) !important; margin: 26px 0 30px !important; color: #f7f0e0; }
.bh-hero h1 .bh-l { display: inline-block !important; }
.bh-hero .bh-lead { text-align: center !important; margin: 0 auto !important; max-width: 32em !important; }
.bh-hero-ctas { justify-content: center !important; flex-direction: row !important; margin-top: 42px !important; }
.bh-arcs-w { position: absolute !important; inset: 0 !important; z-index: 1 !important; pointer-events: none; }
.bh-arcs-w .elementor-widget-container { height: 100%; }
.bh-arcs { width: 100%; height: 100%; display: block; overflow: visible; }
.bh-arcs-hero { position: absolute; inset: 0; filter: drop-shadow(0 10px 18px rgba(0, 0, 0, 0.5)); will-change: transform; }
.bh-arc { stroke-dasharray: 1; stroke-dashoffset: 0; }
.bh-motion .bh-arc { stroke-dashoffset: 1; transition: stroke-dashoffset 2.6s var(--bh-ease-out) calc(0.3s + var(--d)); }
.bh-loaded .bh-arc, .is-in .bh-arc { stroke-dashoffset: 0; }
.bh-mol-w { z-index: 1 !important; }
.bh-hero-grid { z-index: 2 !important; }

/* ---------- our standard: image band ---------- */
.bh-standard { position: relative; overflow: hidden; isolation: isolate; background: #0b1a12 !important; color: var(--bh-ivory); padding-block: clamp(110px, 13vw, 190px) !important; }
.bh-standard-bg-w { position: absolute !important; inset: 0 !important; z-index: -1 !important; }
.bh-standard-bg-w .elementor-widget-container { height: 100%; }
.bh-standard-bg { position: absolute; inset: -8% 0; background-size: cover; background-position: center; }
.bh-standard-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9, 22, 14, 0.97) 0%, rgba(9, 22, 14, 0.88) 46%, rgba(9, 22, 14, 0.45) 100%), var(--bh-rings); }
.bh-standard-inner { max-width: var(--bh-max); }
.bh-standard .bh-h2 { max-width: 15em; }
.bh-standard .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-standard .bh-lead { color: rgba(245, 240, 229, 0.76) !important; max-width: 36em; margin-top: 26px; }
.bh-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 900px; margin: 56px 0 46px; border-top: 1px solid rgba(207, 162, 70, 0.35); }
.bh-facts > div { padding: 26px 26px 0 0; }
.bh-facts > div + div { padding-left: 26px; border-left: 1px solid rgba(207, 162, 70, 0.25); }
.bh-facts b { display: block; font: 500 clamp(2.4rem, 4vw, 3.6rem)/1 var(--bh-display); background: var(--bh-gold-text); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bh-facts span { display: block; margin-top: 12px; font-size: 14.5px; color: rgba(245, 240, 229, 0.7); }

/* ---------- why becker: helmet watermark + rings ---------- */
.bh-pillars { position: relative; overflow: hidden; isolation: isolate; background: radial-gradient(80% 90% at 85% 40%, #1d4430 0%, #12271b 60%) !important; }
.bh-pillars::before { content: ""; position: absolute; right: -4%; top: 50%; width: min(46vw, 640px); aspect-ratio: 1; transform: translateY(-50%); background: var(--bh-helmet) center / contain no-repeat; opacity: 0.08; z-index: -1; filter: saturate(1.2); }
.bh-pillars::after { content: ""; position: absolute; inset: 0; background: var(--bh-rings); z-index: -1; pointer-events: none; }
.bh-pillar { background: linear-gradient(180deg, rgba(12, 27, 18, 0.7), rgba(12, 27, 18, 0.35)) !important; border: 1px solid rgba(207, 162, 70, 0.2) !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.bh-pillar::before { content: ""; position: absolute; left: 28px; right: 28px; top: 0; height: 1px; background: var(--bh-gold-text); opacity: 0.8; }
.bh-pillar-icon { background: radial-gradient(circle at 30% 25%, rgba(246, 227, 168, 0.25), rgba(207, 162, 70, 0.05)) !important; }

/* ---------- signature compounds: tabs ---------- */
.bh-showcase { background: #0e2117 !important; color: var(--bh-ivory); }
.bh-showcase .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-showcase-head { margin-bottom: 42px; }
.bh-pt-tabs { display: flex; gap: 6px; flex-wrap: wrap; border-bottom: 1px solid rgba(207, 162, 70, 0.22); margin-bottom: 40px; }
.bh-pt-tabs button { position: relative; background: none; border: 0; padding: 16px 20px 18px; font: 600 15px/1 var(--bh-sans); color: rgba(245, 240, 229, 0.6); cursor: pointer; transition: color 0.3s; }
.bh-pt-tabs button sup { font-size: 10.5px; margin-left: 4px; color: #d9b257; vertical-align: super; }
.bh-pt-tabs button::after { content: ""; position: absolute; left: 20px; right: 20px; bottom: -1px; height: 2px; background: var(--bh-gold-text); transform: scaleX(0); transition: transform 0.5s var(--bh-ease-out); }
.bh-pt-tabs button:hover, .bh-pt-tabs button[aria-selected="true"] { color: var(--bh-ivory); }
.bh-pt-tabs button[aria-selected="true"]::after { transform: scaleX(1); }
.bh-pt-tabs button:focus-visible { outline: 1px solid #d9b257; outline-offset: -4px; }
.bh-pt-panel .bh-b { margin-top: 40px; }
.bh-pt-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.bh-pt-card { position: relative; display: flex; flex-direction: column; border-radius: 4px; overflow: hidden; background: #f4efe3; color: var(--bh-ink) !important; box-shadow: 0 0 0 1px rgba(207, 162, 70, 0); transition: transform 0.7s var(--bh-ease-out), box-shadow 0.6s; }
.bh-motion .bh-pt-panel .bh-pt-card { opacity: 0; transform: translate3d(0, 24px, 0); }
.bh-motion .bh-pt-panel.is-in .bh-pt-card { opacity: 1; transform: none; transition: opacity 0.7s var(--bh-ease-out), transform 0.8s var(--bh-ease-out), box-shadow 0.6s; }
.bh-pt-panel.is-in .bh-pt-card:nth-child(2) { transition-delay: 60ms; } .bh-pt-panel.is-in .bh-pt-card:nth-child(3) { transition-delay: 120ms; } .bh-pt-panel.is-in .bh-pt-card:nth-child(4) { transition-delay: 180ms; }
.bh-pt-panel.is-in .bh-pt-card:nth-child(5) { transition-delay: 240ms; } .bh-pt-panel.is-in .bh-pt-card:nth-child(6) { transition-delay: 300ms; } .bh-pt-panel.is-in .bh-pt-card:nth-child(7) { transition-delay: 360ms; } .bh-pt-panel.is-in .bh-pt-card:nth-child(8) { transition-delay: 420ms; }
.bh-pt-card:hover { transform: translate3d(0, -8px, 0) !important; box-shadow: 0 0 0 1px #cfa246, 0 34px 60px -30px rgba(0, 0, 0, 0.8); }
.bh-pt-img { display: block; aspect-ratio: 1 / 0.9; overflow: hidden; background: #e8e7e3; }
.bh-pt-img img { width: 100% !important; height: 100% !important; object-fit: cover; mix-blend-mode: multiply; transition: transform 1.2s var(--bh-ease-out); }
.bh-pt-card:hover .bh-pt-img img { transform: scale(1.07); }
.bh-pt-body { display: flex; flex-direction: column; gap: 6px; padding: 20px 64px 22px 20px; }
.bh-pt-name { font: 500 24px/1.1 var(--bh-display); color: var(--bh-ink); }
.bh-pt-price { font: 600 14px/1 var(--bh-sans); color: #7a5c1d; }
.bh-pt-price .woocommerce-Price-amount { color: inherit; }
.bh-pt-card > i { position: absolute; right: 18px; bottom: 20px; width: 38px; height: 38px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-style: normal; border: 1px solid rgba(148, 112, 31, 0.5); color: #7a5c1d; transition: background 0.4s, color 0.4s, border-color 0.4s, transform 0.5s var(--bh-ease-out); }
.bh-pt-card:hover > i { background: var(--bh-metal); border-color: transparent; color: #10200f; transform: translateX(3px); }

/* ---------- medallions (process + beyond purity) ---------- */
.bh-center-head { text-align: center; max-width: 760px; margin: 0 auto 70px; }
.bh-center-head .elementor-heading-title, .bh-center-head p { text-align: center !important; }
.bh-center-head .bh-lead { margin: 22px auto 0; }
.bh-process2 { position: relative; overflow: hidden; isolation: isolate; background: radial-gradient(70% 80% at 50% 0%, #1b3c2a 0%, #0c1c13 70%) !important; color: var(--bh-ivory); }
.bh-process2::after { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--bh-rings); opacity: 0.8; }
.bh-process2 .bh-h2 .elementor-heading-title, .bh-assays2 .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-steps, .bh-meds { list-style: none; margin: 0; padding: 0; display: grid; gap: 34px; position: relative; }
.bh-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bh-meds { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bh-steps::before { content: ""; position: absolute; left: 16.66%; right: 16.66%; top: 70px; height: 1px; background: linear-gradient(90deg, rgba(207,162,70,.15), #e3c473 50%, rgba(207,162,70,.15)); transform-origin: left; transform: scaleX(0); transition: transform 1.8s var(--bh-ease-out) 0.3s; }
.bh-steps.is-in::before, html:not(.bh-motion) .bh-steps::before { transform: scaleX(1); }
.bh-med { text-align: center; position: relative; }
.bh-med-ring { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 140px; height: 140px; border-radius: 50%; background: radial-gradient(circle at 35% 30%, #1f4430, #0d1d14 70%); box-shadow: 0 30px 50px -28px rgba(0, 0, 0, 0.9), inset 0 0 0 1px rgba(207, 162, 70, 0.25); transition: transform 0.7s var(--bh-ease-out), box-shadow 0.6s; }
.bh-med-ring svg { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); }
.bh-med-ring circle { fill: none; stroke: url(#bhMedGold); stroke: #d4ad55; stroke-width: 2; stroke-dasharray: 1; stroke-dashoffset: 0; }
.bh-motion .bh-med-ring circle { stroke-dashoffset: 1; transition: stroke-dashoffset 1.8s var(--bh-ease-out); }
.bh-motion .is-in .bh-med-ring circle { stroke-dashoffset: 0; }
.bh-motion .is-in .bh-med:nth-child(2) .bh-med-ring circle { transition-delay: 0.25s; } .bh-motion .is-in .bh-med:nth-child(3) .bh-med-ring circle { transition-delay: 0.5s; } .bh-motion .is-in .bh-med:nth-child(4) .bh-med-ring circle { transition-delay: 0.75s; }
.bh-med-ico { width: 44px; height: 44px; fill: none; stroke: #e3c473; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.7s var(--bh-ease-out); }
.bh-med:hover .bh-med-ring { transform: translateY(-6px); box-shadow: 0 40px 60px -28px rgba(0, 0, 0, 0.9), inset 0 0 0 1px rgba(227, 196, 115, 0.6), 0 0 40px -6px rgba(207, 162, 70, 0.35); }
.bh-med:hover .bh-med-ico { transform: scale(1.08); }
.bh-med h3 { font: 500 27px/1.15 var(--bh-display); color: var(--bh-ivory); margin: 30px 0 12px; }
.bh-med p { font-size: 15.5px; line-height: 1.65; color: rgba(245, 240, 229, 0.68); max-width: 22em; margin: 0 auto; }
.bh-assays2 { position: relative; overflow: hidden; isolation: isolate; background: linear-gradient(180deg, #0c1c13, #12271b) !important; color: var(--bh-ivory); }
.bh-assays2::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: 0.5; background-image: linear-gradient(rgba(207,162,70,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(207,162,70,.06) 1px, transparent 1px); background-size: 64px 64px; mask-image: radial-gradient(70% 70% at 50% 50%, #000 30%, transparent 80%); -webkit-mask-image: radial-gradient(70% 70% at 50% 50%, #000 30%, transparent 80%); }
.bh-assays2 .bh-lead { color: rgba(245, 240, 229, 0.72) !important; }
.bh-assays2 .bh-med-ring { width: 124px; height: 124px; }

/* ---------- certificates: straight card on gold rings ---------- */
.bh-certs { background: radial-gradient(70% 90% at 25% 50%, #1d4330 0%, #0e2117 70%) !important; color: var(--bh-ivory); }
.bh-certs .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-certs .bh-lead { color: rgba(245, 240, 229, 0.74) !important; }
.bh-certs .bh-eyebrow .elementor-heading-title { color: #d9b257 !important; }
.bh-cert-stage { position: relative; display: grid; place-items: center; padding: 40px 0; }
.bh-arcs-cert { position: absolute; width: 118%; height: 118%; left: -9%; top: -9%; filter: drop-shadow(0 12px 22px rgba(0, 0, 0, 0.5)); }
.bh-page .bh-cert-card, .bh-motion .bh-cert-card, .bh-motion .bh-cert-card.is-in { transform: none !important; rotate: none !important; opacity: 1 !important; position: relative; z-index: 1; }
.bh-motion .bh-cert-stage .bh-cert-card { opacity: 0 !important; translate: 0 30px; transition: opacity 1s var(--bh-ease-out) 0.4s, translate 1.2s var(--bh-ease-out) 0.4s; }
.bh-motion .bh-cert-stage.is-in .bh-cert-card { opacity: 1 !important; translate: 0 0; }
.bh-cert-card { border-radius: 3px !important; box-shadow: 0 60px 100px -40px rgba(0, 0, 0, 0.85), 0 0 0 1px rgba(207, 162, 70, 0.4) !important; }
.bh-cert-card::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px; background: var(--bh-metal); border-radius: 3px 3px 0 0; }
.bh-cert-title { font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1; font-family: var(--bh-caps) !important; font-size: 34px !important; letter-spacing: 0.04em; }

/* ---------- catalogue: image tiles ---------- */
.bh-cats2 { background: #0e2117 !important; color: var(--bh-ivory); }
.bh-cats2 .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.bh-tile { position: relative; display: block; aspect-ratio: 4 / 3.3; border-radius: 4px; overflow: hidden; background: #e8e7e3; isolation: isolate; color: var(--bh-ivory) !important; }
.bh-tile img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover; transition: transform 1.4s var(--bh-ease-out); z-index: -2; }
.bh-tile::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(10, 24, 16, 0) 30%, rgba(10, 24, 16, 0.88) 100%); transition: background 0.6s; }
.bh-tile::after { content: ""; position: absolute; inset: 0; border-radius: 4px; box-shadow: inset 0 0 0 1px rgba(207, 162, 70, 0.25); transition: box-shadow 0.6s; }
.bh-tile:hover img { transform: scale(1.08); }
.bh-tile:hover::before { background: linear-gradient(180deg, rgba(10, 24, 16, 0.15) 20%, rgba(10, 24, 16, 0.94) 100%); }
.bh-tile:hover::after { box-shadow: inset 0 0 0 1.5px #d4ad55; }
.bh-tile-body { position: absolute; left: 26px; right: 80px; bottom: 24px; display: flex; flex-direction: column; gap: 8px; }
.bh-tile-count { font: 600 13px/1 var(--bh-sans); color: #e3c473; }
.bh-tile-name { font: 500 30px/1.05 var(--bh-display); color: var(--bh-ivory); }
.bh-tile > i { position: absolute; right: 22px; bottom: 24px; width: 46px; height: 46px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-style: normal; border: 1.5px solid #cfa246; color: #e8c86f; transition: background 0.4s, color 0.4s, transform 0.5s var(--bh-ease-out); }
.bh-tile:hover > i { background: var(--bh-metal); color: #10200f; border-color: transparent; transform: translateX(4px); }
.bh-motion .bh-tiles .bh-tile { opacity: 0; transform: translate3d(0, 30px, 0); transition: opacity 0.9s var(--bh-ease-out), transform 1s var(--bh-ease-out); }
.bh-motion .bh-tiles.is-in .bh-tile { opacity: 1; transform: none; }
.bh-tiles.is-in .bh-tile:nth-child(2) { transition-delay: 80ms; } .bh-tiles.is-in .bh-tile:nth-child(3) { transition-delay: 160ms; } .bh-tiles.is-in .bh-tile:nth-child(4) { transition-delay: 240ms; } .bh-tiles.is-in .bh-tile:nth-child(5) { transition-delay: 320ms; } .bh-tiles.is-in .bh-tile:nth-child(6) { transition-delay: 400ms; }

/* ---------- footer: metallic edge, rings, helmet ---------- */
.bh-footer { position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(70% 90% at 90% 0%, #163322 0%, #08130d 60%) !important; }
.bh-footer::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: var(--bh-metal); }
.bh-footer::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: var(--bh-rings), var(--bh-helmet) right -60px bottom -80px / 420px no-repeat; opacity: 0.55; }
.bh-footer-mark .elementor-heading-title { -webkit-text-stroke: 1px rgba(227, 196, 115, 0.45) !important; }

@media (max-width: 1024px) {
	.bh-hero-grid { padding-bottom: 26vh !important; }
	.bh-hero-ctas { flex-direction: column !important; align-items: stretch !important; width: 100%; max-width: 360px; }
	.bh-facts { grid-template-columns: 1fr; }
	.bh-facts > div + div { padding-left: 0; border-left: 0; border-top: 1px solid rgba(207, 162, 70, 0.2); margin-top: 22px; }
	.bh-pt-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bh-steps, .bh-meds { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 56px; }
	.bh-steps::before { display: none; }
	.bh-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bh-pt-tabs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
	.bh-pt-tabs button { white-space: nowrap; }
}
@media (max-width: 600px) {
	.bh-steps, .bh-meds, .bh-tiles { grid-template-columns: 1fr; }
	.bh-pt-grid { gap: 12px; }
	.bh-pt-name { font-size: 20px; }
	.bh-pt-body { padding: 14px 14px 18px; }
	.bh-pt-card > i { display: none; }
	.bh-arcs-hero { transform-origin: bottom; }
}
/* v8 fixes */
.bh-page .bh-center-head { width: 100% !important; max-width: 820px !important; margin: 0 auto 72px !important; align-items: center !important; }
.bh-page .bh-center-head > .elementor-element { width: 100% !important; text-align: center !important; }
.bh-page .bh-med-ico { width: 44px !important; height: 44px !important; stroke-width: 1.3 !important; }
.bh-assays2 .bh-med-ico { width: 40px !important; height: 40px !important; }
.bh-page .bh-pillars::before { content: "" !important; position: absolute !important; right: -3% !important; left: auto !important; top: 50% !important; width: min(44vw, 620px) !important; height: auto !important; aspect-ratio: 1; transform: translateY(-50%) !important; background: var(--bh-helmet) center / contain no-repeat !important; opacity: 0.11 !important; z-index: 0 !important; mix-blend-mode: luminosity; pointer-events: none; }
.bh-pillars > .bh-wrap { position: relative; z-index: 1; }
.bh-footer::after { background: var(--bh-helmet) right -40px bottom -60px / 300px no-repeat !important; opacity: 0.1 !important; }
.bh-footer { background: var(--bh-rings), radial-gradient(70% 90% at 90% 0%, #163322 0%, #08130d 60%) !important; }
.bh-facts b { font-size: clamp(2.2rem, 3.4vw, 3.2rem) !important; white-space: nowrap; }
.bh-showcase-head { margin-bottom: 48px !important; }
.bh-tile::before { background: linear-gradient(180deg, rgba(10, 24, 16, 0) 25%, rgba(10, 24, 16, 0.75) 62%, rgba(10, 24, 16, 0.96) 100%) !important; }
.bh-page .bh-med-ring svg.bh-med-ico { position: relative !important; inset: auto !important; transform: none !important; z-index: 1; }
.bh-page .bh-med:hover svg.bh-med-ico { transform: scale(1.1) !important; }
@media (max-width: 767px) { .bh-arcs-hero { inset: auto -90% 0 -90% !important; width: 280% !important; height: 46% !important; } }
@media (max-width: 767px) { .bh-arcs-hero { inset: auto -50% 0 -50% !important; width: 200% !important; height: 40% !important; } }
.bh-arcs-m { display: none; }
@media (max-width: 767px) { .bh-arcs-d { display: none; } .bh-arcs-m { display: block; inset: 0 !important; width: 100% !important; height: 100% !important; } }

/* =====================================================================
   v9 (2026-10-26): spacious hero (no arcs), readability, clean tabs, smooth gold arrows,
   clean catalogue, modern institutions, resources panels, FAQ dropped, footer arcs + dots.
   ===================================================================== */
:root { --bh-gold-solid: #d2a94f; --bh-gold-hover: #e3c06e; }

/* hero: breathing room */
.bh-hero { min-height: 100svh !important; }
.bh-hero-grid { padding-top: calc(var(--bh-header-h) + 8vh) !important; padding-bottom: 14vh !important; }
.bh-hero h1.elementor-heading-title { margin: 34px 0 36px !important; letter-spacing: 0.09em !important; }
.bh-hero .bh-lead { font-size: 18.5px !important; line-height: 1.8 !important; max-width: 30em !important; }
.bh-hero-ctas { margin-top: 52px !important; gap: 18px !important; }
.bh-hero::after { background: radial-gradient(56% 46% at 50% 50%, rgba(10, 24, 16, 0.55), rgba(10, 24, 16, 0) 100%) !important; }

/* our standard: readability */
.bh-standard-bg::after { background: linear-gradient(90deg, rgba(8, 20, 13, 0.98) 0%, rgba(8, 20, 13, 0.94) 52%, rgba(8, 20, 13, 0.72) 100%), var(--bh-rings) !important; }
.bh-standard .bh-lead, .bh-standard .bh-lead p { font-size: 19px !important; line-height: 1.8 !important; color: rgba(247, 241, 228, 0.88) !important; max-width: 34em; }
.bh-standard .bh-h2 { max-width: 14em; }
.bh-facts span { font-size: 15px !important; color: rgba(247, 241, 228, 0.82) !important; }
.bh-facts { background: rgba(8, 20, 13, 0.55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); border: 1px solid rgba(207, 162, 70, 0.28) !important; border-radius: 4px; padding: 6px 30px 28px; }

/* round gold arrow buttons: solid, smooth */
.bh-page .bh-pt-card > i, .bh-page .bh-tile > i, .bh-car-btn, .bh-page .bh-cat-arrow { background: transparent !important; border: 1.5px solid var(--bh-gold-solid) !important; color: var(--bh-gold-solid) !important; transition: background-color 0.45s var(--bh-ease-out), color 0.45s var(--bh-ease-out), transform 0.55s var(--bh-ease-out), box-shadow 0.45s !important; }
.bh-page .bh-pt-card:hover > i, .bh-page .bh-tile:hover > i, .bh-car-btn:hover:not(:disabled), .bh-page .bh-cat:hover .bh-cat-arrow { background: var(--bh-gold-solid) !important; border-color: var(--bh-gold-solid) !important; color: #0e1f15 !important; box-shadow: 0 10px 24px -10px rgba(210, 169, 79, 0.75) !important; }

/* tabs: clean, obviously clickable */
.bh-pt-tabs { gap: 10px !important; border: 0 !important; margin-bottom: 44px !important; }
.bh-pt-tabs button { padding: 13px 22px !important; border-radius: 999px !important; border: 1px solid rgba(210, 169, 79, 0.32) !important; background: rgba(255, 255, 255, 0.02) !important; color: rgba(247, 241, 228, 0.78) !important; font-size: 14.5px !important; transition: background-color 0.35s, color 0.35s, border-color 0.35s, transform 0.35s var(--bh-ease-out) !important; }
.bh-pt-tabs button::after { content: none !important; }
.bh-pt-tabs button:hover { border-color: var(--bh-gold-solid) !important; color: #fff !important; transform: translateY(-1px); }
.bh-pt-tabs button[aria-selected="true"] { background: var(--bh-gold-solid) !important; border-color: var(--bh-gold-solid) !important; color: #0e1f15 !important; }
.bh-pt-tabs button[aria-selected="true"] sup { color: #0e1f15 !important; }
.bh-pt-card { border-radius: 6px !important; }
.bh-pt-card:hover { box-shadow: 0 0 0 1.5px var(--bh-gold-solid), 0 34px 60px -30px rgba(0, 0, 0, 0.8) !important; }
.bh-pt-img { background: #efeeea !important; }
.bh-pt-img img { object-fit: contain !important; padding: 14px; mix-blend-mode: multiply; }

/* catalogue: clean product shots, text below */
.bh-tile { aspect-ratio: auto !important; display: flex !important; flex-direction: column; background: #f3f2ee !important; border-radius: 6px !important; }
.bh-tile img { position: static !important; height: 300px !important; object-fit: contain !important; padding: 26px 26px 0; background: #f3f2ee; z-index: 0 !important; }
.bh-tile::before { content: none !important; }
.bh-tile-body { position: static !important; padding: 22px 90px 24px 26px; background: #102419; flex: 1; }
.bh-tile > i { bottom: 26px !important; }
.bh-tile:hover img { transform: scale(1.04) translateY(-4px) !important; }
.bh-tile::after { box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.3) !important; border-radius: 6px; pointer-events: none; }
.bh-tile:hover::after { box-shadow: inset 0 0 0 1.5px var(--bh-gold-solid) !important; }

/* beyond purity: brighter, arcs */
.bh-assays2 { background: radial-gradient(70% 70% at 50% 60%, #1f4732 0%, #0e2117 75%) !important; }
.bh-assays2::after { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--bh-rings); opacity: 0.9; }
.bh-meds .bh-med { padding: 40px 22px 34px; border-radius: 8px; background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0)); border: 1px solid rgba(210, 169, 79, 0.18); transition: transform 0.6s var(--bh-ease-out), border-color 0.5s, background 0.5s; }
.bh-meds .bh-med:hover { transform: translateY(-8px); border-color: rgba(210, 169, 79, 0.6); background: linear-gradient(180deg, rgba(210, 169, 79, 0.1), rgba(210, 169, 79, 0.01)); }
.bh-meds .bh-med:hover .bh-med-ring { transform: none; }
.bh-meds p { color: rgba(247, 241, 228, 0.78) !important; }

/* institutions: modern split */
.bh-inst2 { position: relative; overflow: hidden; isolation: isolate; background: linear-gradient(120deg, #0a1811 0%, #13301f 100%) !important; color: var(--bh-ivory); }
.bh-inst-arcs { position: absolute !important; inset: 0 !important; z-index: -1 !important; pointer-events: none; }
.bh-inst-arcs .elementor-widget-container { height: 100%; }
.bh-arcs-inst { position: absolute; inset: 0; opacity: 0.9; }
.bh-inst2-grid { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(40px, 7vw, 110px) !important; align-items: center; }
.bh-inst2 .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-inst2 .bh-lead { color: rgba(247, 241, 228, 0.8) !important; margin: 24px 0 40px; font-size: 18px; }
.bh-inst-list { list-style: none; margin: 0; padding: 10px; border-radius: 10px; background: rgba(8, 20, 13, 0.55); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid rgba(210, 169, 79, 0.3); box-shadow: 0 50px 90px -50px rgba(0, 0, 0, 0.9); }
.bh-inst-list li { display: flex; gap: 22px; align-items: flex-start; padding: 26px 24px; border-radius: 6px; transition: background 0.45s; }
.bh-inst-list li + li { border-top: 1px solid rgba(210, 169, 79, 0.15); }
.bh-inst-list li:hover { background: rgba(210, 169, 79, 0.08); }
.bh-inst-list li > span { flex: none; width: 52px; height: 52px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; border: 1.5px solid var(--bh-gold-solid); color: var(--bh-gold-solid); font: 500 18px/1 var(--bh-display); transition: background 0.45s, color 0.45s; }
.bh-inst-list li:hover > span { background: var(--bh-gold-solid); color: #0e1f15; }
.bh-inst-list h3 { margin: 4px 0 8px; font: 500 26px/1.15 var(--bh-display); color: var(--bh-ivory); }
.bh-inst-list p { margin: 0; color: rgba(247, 241, 228, 0.74); font-size: 15.5px; line-height: 1.65; }

/* resources: dark panels with arcs */
.bh-res2 { background: #0e2117 !important; color: var(--bh-ivory); }
.bh-res2 .bh-h2 .elementor-heading-title { color: var(--bh-ivory); }
.bh-res2-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.bh-res2-card { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; min-height: 360px; padding: 40px 36px 36px; border-radius: 8px; background: linear-gradient(160deg, #183a28 0%, #0b1a12 100%); border: 1px solid rgba(210, 169, 79, 0.22); color: var(--bh-ivory) !important; transition: transform 0.6s var(--bh-ease-out), border-color 0.5s, box-shadow 0.6s; }
.bh-res2-card:hover { transform: translateY(-10px); border-color: var(--bh-gold-solid); box-shadow: 0 50px 80px -40px rgba(0, 0, 0, 0.9), 0 0 50px -20px rgba(210, 169, 79, 0.35); }
.bh-arcs-card { position: absolute; right: -10px; top: -10px; width: 62%; height: auto; z-index: -1; opacity: 0.85; transition: transform 1s var(--bh-ease-out); }
.bh-res2-card:hover .bh-arcs-card { transform: rotate(-12deg) scale(1.05); }
.bh-res2-icon { width: 70px; height: 70px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: radial-gradient(circle at 35% 30%, #275a3f, #0d1d14); border: 1.5px solid var(--bh-gold-solid); color: var(--bh-gold-hover); transition: background 0.5s, color 0.5s; }
.bh-res2-icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.bh-res2-card:hover .bh-res2-icon { background: var(--bh-gold-solid); color: #0e1f15; }
.bh-res2-card h3 { margin: auto 0 10px; padding-top: 70px; font: 500 34px/1.05 var(--bh-display); color: var(--bh-ivory); }
.bh-res2-card p { margin: 0; color: rgba(247, 241, 228, 0.72); font-size: 15.5px; line-height: 1.6; }
.bh-res2-cta { margin-top: 26px; display: inline-flex; align-items: center; gap: 12px; font: 600 15px/1 var(--bh-sans); color: var(--bh-gold-hover); }
.bh-res2-cta i { font-style: normal; transition: transform 0.45s var(--bh-ease-out); }
.bh-res2-card:hover .bh-res2-cta i { transform: translateX(6px); }

/* footer: arcs + flowing dots */
.bh-foot-fx-w { position: absolute !important; inset: 0 !important; z-index: -1 !important; pointer-events: none; }
.bh-foot-fx-w .elementor-widget-container, .bh-foot-fx { position: absolute; inset: 0; }
.bh-arcs-foot { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0.85; }
.bh-dots-stage { position: absolute; inset: 0; }
.bh-dots-stage canvas { position: absolute; inset: 0; width: 100% !important; height: 100% !important; }
.bh-footer::after { opacity: 0.07 !important; }
.bh-footer-top, .bh-footer-bottom, .bh-footer-mark { position: relative; z-index: 1; }

@media (max-width: 1024px) {
	.bh-inst2-grid, .bh-res2-grid { grid-template-columns: 1fr; }
	.bh-res2-card { min-height: 300px; }
	.bh-tile img { height: 240px !important; }
}
.bh-page .bh-tile img { padding: 0 !important; height: 320px !important; background: #e9e8e4 !important; mix-blend-mode: normal; }
.bh-tile { background: #e9e8e4 !important; }
.bh-arcs-foot { opacity: 0.4 !important; }

/* =====================================================================
   v10 (2026-10-26): silk + bokeh hero, helmet seal, two light sections, arcs only in
   certificates / institutions / footer, faint gold wave lines, new order.
   ===================================================================== */
/* hero */
.bh-hero { background: radial-gradient(90% 70% at 50% 110%, #0f3a24 0%, rgba(15, 58, 36, 0) 60%), linear-gradient(180deg, #08160e 0%, #0d2417 55%, #0a1c12 100%) !important; }
.bh-hero::before { opacity: 0.12 !important; }
.bh-waves-w { position: absolute !important; inset: 0 !important; z-index: 0 !important; pointer-events: none; }
.bh-waves-w .elementor-widget-container, .bh-waves { position: absolute; inset: 0; }
.bh-waves svg { width: 100%; height: 100%; display: block; }
.bh-wave { transform-box: fill-box; transform-origin: center; }
.bh-motion .bh-wave-1 { animation: bh-silk 22s ease-in-out infinite alternate; }
.bh-motion .bh-wave-2 { animation: bh-silk 28s ease-in-out -6s infinite alternate-reverse; }
.bh-motion .bh-wave-3 { animation: bh-silk 34s ease-in-out -12s infinite alternate; }
@keyframes bh-silk { from { transform: translate3d(-4%, 0, 0) scaleY(1); } to { transform: translate3d(4%, -3%, 0) scaleY(1.25); } }
.bh-seal { width: 74px; height: 74px; margin: 0 auto 6px; border-radius: 50%; display: grid; place-items: center; background: radial-gradient(circle at 35% 30%, #1d4530, #0a1a11 72%); box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.65), 0 0 0 7px rgba(210, 169, 79, 0.08), 0 18px 40px -18px rgba(0, 0, 0, 0.8); }
.bh-seal img { width: 50px; height: 50px; object-fit: contain; filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.5)); }

/* fewer arcs: rings only in certificates, institutions, footer */
.bh-standard-bg::after { background: linear-gradient(90deg, rgba(8, 20, 13, 0.98) 0%, rgba(8, 20, 13, 0.94) 52%, rgba(8, 20, 13, 0.72) 100%) !important; }
.bh-pillars::after, .bh-process2::after, .bh-assays2::after { content: none !important; }

/* faint gold wave lines */
.bh-lines-w { position: absolute !important; inset: 0 !important; z-index: 0 !important; pointer-events: none; }
.bh-lines-w .elementor-widget-container { position: absolute; inset: 0; }
.bh-lines { position: absolute; left: 0; right: 0; top: 10%; width: 100%; height: 80%; opacity: 0.07; }
.bh-standard .bh-lines { z-index: 0; }
.bh-standard-inner, .bh-process2 > .bh-wrap { position: relative; z-index: 1; }
.bh-motion .bh-lines g { animation: bh-drift 30s ease-in-out infinite alternate; }
@keyframes bh-drift { from { transform: translateX(-2%); } to { transform: translateX(2%); } }

/* facts: everything on one line */
.bh-facts b.bh-fact-sm { font-size: clamp(1.9rem, 2.6vw, 2.6rem) !important; line-height: 1.25 !important; padding-top: 6px; }

/* light section 1: signature compounds */
.bh-showcase { background: #f5f0e4 !important; color: var(--bh-text) !important; }
.bh-showcase .bh-h2 .elementor-heading-title { color: var(--bh-ink) !important; }
.bh-showcase .bh-eyebrow .elementor-heading-title { color: #94701f !important; }
.bh-showcase .bh-pt-tabs button { background: #fff !important; border-color: rgba(148, 112, 31, 0.3) !important; color: #3b4a40 !important; }
.bh-showcase .bh-pt-tabs button:hover { border-color: #b68b33 !important; color: var(--bh-ink) !important; }
.bh-showcase .bh-pt-tabs button[aria-selected="true"] { background: #12271b !important; border-color: #12271b !important; color: #f4e6bf !important; }
.bh-showcase .bh-pt-tabs button sup { color: #a87d26 !important; }
.bh-showcase .bh-pt-tabs button[aria-selected="true"] sup { color: #d9b257 !important; }
.bh-showcase .bh-pt-card { background: #fff !important; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04), 0 18px 40px -30px rgba(18, 39, 27, 0.35) !important; }
.bh-showcase .bh-pt-card:hover { box-shadow: 0 0 0 1.5px #b68b33, 0 34px 60px -30px rgba(18, 39, 27, 0.45) !important; }
.bh-showcase .bh-pt-img { background: #f3f2ef !important; }
.bh-showcase .bh-pt-card > i { border-color: #b68b33 !important; color: #94701f !important; }
.bh-showcase .bh-pt-card:hover > i { background: #12271b !important; border-color: #12271b !important; color: #e3c06e !important; }
.bh-showcase a.bh-b-ghost { color: #12271b !important; box-shadow: inset 0 0 0 1.5px #12271b !important; }
.bh-showcase a.bh-b-ghost:hover { background: #12271b !important; color: #f4e6bf !important; }

/* light section 2: certificates (paper on ivory, gold rings) */
.bh-certs { background: radial-gradient(70% 90% at 25% 50%, #fbf7ee 0%, #efe7d5 100%) !important; color: var(--bh-text) !important; }
.bh-certs .bh-h2 .elementor-heading-title { color: var(--bh-ink) !important; }
.bh-certs .bh-eyebrow .elementor-heading-title { color: #94701f !important; }
.bh-certs .bh-lead, .bh-certs .bh-lead p { color: #4c5a51 !important; }
.bh-arcs-cert circle.bh-arc-green { stroke: #ffffff; opacity: 0.6; }
.bh-arcs-cert circle.bh-arc-line { stroke: rgba(148, 112, 31, 0.35); }
.bh-cert-card { box-shadow: 0 50px 90px -40px rgba(18, 39, 27, 0.45), 0 0 0 1px rgba(148, 112, 31, 0.35) !important; }

/* why becker: helmet is the hero of the section */
.bh-page .bh-pillars::before { opacity: 0.14 !important; width: min(48vw, 700px) !important; }
.bh-seal { margin-bottom: 26px !important; }
.bh-arcs-cert circle.bh-arc-green { stroke: #e7dcc4 !important; opacity: 1 !important; }

/* =====================================================================
   v11 (2026-10-26): modern type (Plus Jakarta Sans headings, Inter text; Cinzel only for the
   hero inscription), consistent spacing, light Beyond purity + Resources, dark Certificates.
   ===================================================================== */
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 200 800; font-display: swap; src: url("fonts/plus-jakarta-sans-latin-wght-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 100 900; font-display: swap; src: url("fonts/inter-latin-wght-normal.woff2") format("woff2"); }
:root { --bh-display: "Plus Jakarta Sans", "Inter", system-ui, sans-serif; --bh-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif; --bh-pad: clamp(104px, 11vw, 168px); }
.bh-page, .bh-header, .bh-footer { font-family: var(--bh-sans) !important; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.bh-page .elementor-heading-title, .bh-footer .elementor-heading-title { font-family: var(--bh-display) !important; }
.bh-page .bh-section { padding-block: var(--bh-pad) !important; }

/* headings */
.bh-page .bh-h2 .elementor-heading-title { font-weight: 600 !important; font-size: clamp(2.1rem, 3.5vw, 3.4rem) !important; letter-spacing: -0.032em !important; line-height: 1.1 !important; }
.bh-page .bh-eyebrow .elementor-heading-title, .bh-page .bh-kicker .elementor-heading-title, .bh-footer .bh-foot-title .elementor-heading-title {
	font-family: var(--bh-display) !important; font-size: 13.5px !important; font-weight: 700 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; line-height: 1.3 !important;
}
.bh-page .bh-eyebrow { margin-bottom: 18px !important; }
.bh-page .bh-kicker .elementor-heading-title { font-size: 13px !important; letter-spacing: 0.18em !important; }
.bh-lead, .bh-lead p, .bh-page .bh-lead p { font-family: var(--bh-sans) !important; font-size: 17.5px !important; line-height: 1.75 !important; letter-spacing: -0.005em; }
.bh-page h3, .bh-pt-name, .bh-med h3, .bh-inst-list h3, .bh-res2-card h3, .bh-pillar .elementor-heading-title, .bh-tile-name, .bh-step-title .elementor-heading-title { font-family: var(--bh-display) !important; font-weight: 600 !important; letter-spacing: -0.02em !important; }
.bh-pt-name { font-size: 17px !important; line-height: 1.3 !important; }
.bh-med h3 { font-size: 20px !important; margin: 28px 0 10px !important; }
.bh-inst-list h3 { font-size: 20px !important; }
.bh-pillar .elementor-heading-title { font-size: 20px !important; }
.bh-res2-card h3 { font-size: 24px !important; }
.bh-facts b, .bh-chip b { font-family: var(--bh-display) !important; font-weight: 600 !important; letter-spacing: -0.03em; }
.bh-inst-list li > span { font: 600 15px/1 var(--bh-display) !important; }
.bh-footer .bh-foot-intro .elementor-heading-title { font-weight: 600 !important; letter-spacing: -0.025em !important; font-size: 30px !important; line-height: 1.2 !important; }
.bh-nav .elementor-nav-menu--main .elementor-item { font-family: var(--bh-sans) !important; letter-spacing: 0.08em !important; font-size: 12px !important; }
.bh-hero h1.elementor-heading-title { font-family: var(--bh-caps) !important; }
.bh-hero .bh-lead, .bh-hero .bh-lead p { font-size: 18px !important; }

/* hero: taller */
.bh-hero { min-height: max(100svh, 880px) !important; }
.bh-hero-grid { padding-top: calc(var(--bh-header-h) + 12vh) !important; padding-bottom: 20vh !important; }

/* our standard: no photo; statement left, facts right */
.bh-standard { background: radial-gradient(70% 90% at 85% 50%, #183c29 0%, #0b1a12 70%) !important; }
.bh-standard-inner { display: grid !important; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); column-gap: clamp(48px, 7vw, 120px) !important; align-items: center; }
.bh-standard-inner > .elementor-element { grid-column: 1; }
.bh-standard-inner > .bh-facts-w { grid-column: 2; grid-row: 1 / span 4; align-self: center; }
.bh-standard .bh-h2 { max-width: none !important; }
.bh-standard .bh-ctas { margin-top: 40px !important; }
.bh-page .bh-facts { display: flex !important; flex-direction: column; margin: 0 !important; padding: 8px 36px !important; max-width: none; background: rgba(255, 255, 255, 0.03) !important; border: 1px solid rgba(210, 169, 79, 0.25) !important; border-radius: 10px; }
.bh-page .bh-facts > div { padding: 30px 0 !important; border: 0 !important; margin: 0 !important; }
.bh-page .bh-facts > div + div { border-top: 1px solid rgba(210, 169, 79, 0.18) !important; }
.bh-page .bh-facts b, .bh-page .bh-facts b.bh-fact-sm { font-size: clamp(2.2rem, 3vw, 2.9rem) !important; line-height: 1.05 !important; padding: 0 !important; }
.bh-page .bh-facts span { font-size: 15px !important; margin-top: 10px !important; }

/* certificates: dark again */
.bh-certs { background: radial-gradient(70% 90% at 25% 50%, #1d4330 0%, #0b1a12 72%) !important; color: var(--bh-ivory) !important; }
.bh-certs .bh-h2 .elementor-heading-title { color: var(--bh-ivory) !important; }
.bh-certs .bh-eyebrow .elementor-heading-title { color: #d9b257 !important; }
.bh-certs .bh-lead, .bh-certs .bh-lead p { color: rgba(247, 241, 228, 0.78) !important; }
.bh-arcs-cert circle.bh-arc-green { stroke: #123b25 !important; }
.bh-arcs-cert circle.bh-arc-line { stroke: rgba(207, 162, 70, 0.28) !important; }

/* beyond purity: light */
.bh-assays2 { background: #f5f0e5 !important; color: var(--bh-text) !important; }
.bh-assays2::before { opacity: 0.6 !important; background-image: linear-gradient(rgba(148, 112, 31, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(148, 112, 31, 0.08) 1px, transparent 1px) !important; }
.bh-assays2 .bh-h2 .elementor-heading-title { color: var(--bh-ink) !important; }
.bh-assays2 .bh-eyebrow .elementor-heading-title { color: #94701f !important; }
.bh-assays2 .bh-lead, .bh-assays2 .bh-lead p { color: #4c5a51 !important; }
.bh-meds { gap: 20px !important; }
.bh-meds .bh-med { background: #fff !important; border: 1px solid rgba(18, 39, 27, 0.08) !important; border-radius: 12px !important; padding: 44px 26px 38px !important; box-shadow: 0 24px 50px -36px rgba(18, 39, 27, 0.35); counter-increment: assay; }
.bh-meds { counter-reset: assay; }
.bh-meds .bh-med::before { content: "0" counter(assay); position: absolute; top: 18px; right: 22px; font: 600 13px/1 var(--bh-display); color: #b68b33; letter-spacing: 0.06em; }
.bh-meds .bh-med:hover { background: #fff !important; border-color: #b68b33 !important; transform: translateY(-8px); box-shadow: 0 40px 70px -40px rgba(18, 39, 27, 0.5); }
.bh-meds .bh-med h3 { color: var(--bh-ink) !important; }
.bh-meds .bh-med p { color: #56645a !important; }
.bh-assays2 .bh-med-ring { width: 104px !important; height: 104px !important; }

/* resources: light bento */
.bh-res2 { background: #efe8d8 !important; color: var(--bh-text) !important; }
.bh-res2 .bh-h2 .elementor-heading-title { color: var(--bh-ink) !important; }
.bh-res2 .bh-eyebrow .elementor-heading-title { color: #94701f !important; }
.bh-res2-grid { grid-template-columns: 1.2fr 1fr !important; grid-template-rows: auto auto; gap: 20px !important; }
.bh-res2-card { background: #fffdf8 !important; border: 1px solid rgba(18, 39, 27, 0.08) !important; color: var(--bh-text) !important; min-height: 250px !important; padding: 34px 34px 32px !important; box-shadow: 0 24px 50px -38px rgba(18, 39, 27, 0.4); }
.bh-res2-card:first-child { grid-row: span 2; min-height: 520px !important; background: radial-gradient(90% 80% at 85% 10%, #1f4a33 0%, #0e2117 70%) !important; color: var(--bh-ivory) !important; border-color: rgba(210, 169, 79, 0.3) !important; }
.bh-res2-card:first-child::after { content: ""; position: absolute; right: -90px; top: -90px; width: 380px; height: 380px; border-radius: 50%; box-shadow: inset 0 0 0 6px rgba(210, 169, 79, 0.55), 0 0 0 26px rgba(18, 59, 37, 0.9), 0 0 0 30px rgba(210, 169, 79, 0.35); z-index: -1; transition: transform 1s var(--bh-ease-out); }
.bh-res2-card:first-child:hover::after { transform: scale(1.06); }
.bh-res2-card h3 { color: var(--bh-ink) !important; padding-top: 48px !important; }
.bh-res2-card p { color: #56645a !important; }
.bh-res2-card:first-child h3 { color: var(--bh-ivory) !important; font-size: 34px !important; padding-top: 0 !important; }
.bh-res2-card:first-child p { color: rgba(247, 241, 228, 0.76) !important; font-size: 17px !important; max-width: 24em; }
.bh-res2-icon { width: 60px !important; height: 60px !important; background: #f3ecdb !important; color: #94701f !important; border-color: #c9a24f !important; }
.bh-res2-card:first-child .bh-res2-icon { width: 76px !important; height: 76px !important; background: radial-gradient(circle at 35% 30%, #275a3f, #0d1d14) !important; color: #e3c06e !important; }
.bh-res2-card:hover { transform: translateY(-8px); border-color: #b68b33 !important; box-shadow: 0 40px 70px -40px rgba(18, 39, 27, 0.5) !important; }
.bh-res2-card:hover .bh-res2-icon { background: #12271b !important; color: #e3c06e !important; }
.bh-res2-cta { color: #94701f !important; }
.bh-res2-card:first-child .bh-res2-cta { color: #e3c06e !important; }

/* institutions: more air */
.bh-inst2-grid { gap: clamp(56px, 8vw, 130px) !important; }
.bh-inst-list { padding: 14px !important; }
.bh-inst-list li { padding: 30px 28px !important; gap: 24px !important; }
.bh-inst2 .bh-lead { margin: 26px 0 44px !important; }

/* footer: breathable */
.bh-footer { padding-top: clamp(110px, 10vw, 160px) !important; }
.bh-footer-top { gap: clamp(40px, 5vw, 80px) !important; padding-bottom: 100px !important; }
.bh-foot-col li { margin-bottom: 16px !important; font-size: 15px !important; }
.bh-foot-col .bh-foot-title .elementor-heading-title { margin-bottom: 26px !important; }
.bh-foot-intro .bh-lead, .bh-foot-intro .bh-lead p { font-size: 15.5px !important; line-height: 1.8 !important; color: rgba(247, 241, 228, 0.7) !important; }
.bh-foot-brand { margin-bottom: 40px !important; gap: 26px !important; }
.bh-foot-social { margin-top: 34px !important; }
.bh-footer-mark { margin-top: 20px; }
.bh-footer-bottom { padding: 32px 0 38px !important; font-size: 13px !important; }

@media (max-width: 1024px) {
	.bh-standard-inner { grid-template-columns: 1fr; }
	.bh-standard-inner > .bh-facts-w { grid-column: 1; grid-row: auto; margin-top: 48px; }
	.bh-res2-grid { grid-template-columns: 1fr !important; }
	.bh-res2-card:first-child { grid-row: auto; min-height: 380px !important; }
}
.bh-header .bh-brand .elementor-heading-title, .bh-footer .bh-footer-mark .elementor-heading-title { font-family: var(--bh-caps) !important; font-weight: 600 !important; }
.bh-footer .bh-footer-mark .elementor-heading-title { font-weight: 500 !important; }

/* =====================================================================
   v12 (2026-10-26): seamless section flow, new cursor, refined hovers.
   ===================================================================== */
/* ---------- flow 1: hero → our standard (one continuous green) ---------- */
.bh-hero { background: radial-gradient(90% 70% at 50% 110%, rgba(15, 58, 36, 0.9) 0%, rgba(15, 58, 36, 0) 60%), linear-gradient(180deg, #08160e 0%, #0d2417 55%, #0d2216 100%) !important; }
.bh-hero::before, .bh-hero::after { -webkit-mask-image: linear-gradient(180deg, #000 70%, transparent); mask-image: linear-gradient(180deg, #000 70%, transparent); }
.bh-standard { background: radial-gradient(60% 70% at 85% 55%, rgba(31, 74, 50, 0.55) 0%, rgba(31, 74, 50, 0) 70%), linear-gradient(180deg, #0d2216 0%, #0c1f15 60%, #0b1a12 100%) !important; box-shadow: none !important; }
.bh-standard::before { content: ""; position: absolute; left: 50%; top: 0; width: 1px; height: 90px; background: linear-gradient(rgba(210, 169, 79, 0.6), transparent); }

/* ---------- flow 2: certificates → why becker → institutions ---------- */
.bh-certs, .bh-pillars, .bh-inst2 { box-shadow: none !important; border: 0 !important; }
.bh-certs { background: radial-gradient(60% 70% at 25% 45%, rgba(37, 84, 58, 0.6) 0%, rgba(37, 84, 58, 0) 70%), linear-gradient(180deg, #0b1a12 0%, #0f2419 100%) !important; padding-bottom: calc(var(--bh-pad) * 0.6) !important; }
.bh-pillars { background: radial-gradient(55% 60% at 82% 50%, rgba(37, 84, 58, 0.55) 0%, rgba(37, 84, 58, 0) 72%), linear-gradient(180deg, #0f2419 0%, #11281c 100%) !important; padding-block: calc(var(--bh-pad) * 0.6) !important; }
.bh-pillars::after { content: none !important; }
.bh-inst2 { background: radial-gradient(60% 70% at 20% 50%, rgba(37, 84, 58, 0.45) 0%, rgba(37, 84, 58, 0) 70%), linear-gradient(180deg, #11281c 0%, #0c1d14 100%) !important; padding-top: calc(var(--bh-pad) * 0.6) !important; }
/* a single gold thread runs down through the three */
.bh-pillars::after, .bh-inst2::before { content: ""; position: absolute; left: 50%; top: 0; width: 1px; height: 70px; background: linear-gradient(rgba(210, 169, 79, 0.55), transparent); z-index: 0; }
.bh-pillars::before { -webkit-mask-image: radial-gradient(closest-side, #000 60%, transparent); mask-image: radial-gradient(closest-side, #000 60%, transparent); }
.bh-arcs-cert { -webkit-mask-image: linear-gradient(180deg, #000 75%, transparent); mask-image: linear-gradient(180deg, #000 75%, transparent); }
.bh-arcs-inst { -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 30%, #000 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 30%, #000 100%); }
.bh-res2 { box-shadow: none !important; }

/* ---------- cursor ---------- */
.bh-cursor-dot { width: 7px !important; height: 7px !important; margin: -3.5px 0 0 -3.5px !important; background: #f0d48a !important; box-shadow: 0 0 10px 2px rgba(240, 212, 138, 0.55); transition: opacity 0.3s, width 0.3s, height 0.3s, margin 0.3s !important; }
.bh-cursor-ring { width: 44px !important; height: 44px !important; margin: -22px 0 0 -22px !important; border: 0 !important; background: none !important; display: block !important; }
.bh-cr { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid rgba(232, 200, 120, 0.75); box-shadow: 0 0 18px -6px rgba(232, 200, 120, 0.6); transition: transform 0.5s var(--bh-ease-out), background-color 0.4s, border-color 0.4s, box-shadow 0.4s; }
.bh-cr span { font: 600 11px/1 var(--bh-sans); letter-spacing: 0.06em; color: #0e1f15; opacity: 0; transform: scale(0.6); transition: opacity 0.3s, transform 0.4s var(--bh-ease-out); white-space: nowrap; }
.bh-cr span::after { content: " \2192"; }
.bh-cursor-ring.is-hover .bh-cr { transform: scale(1.55); background: rgba(232, 200, 120, 0.12); border-color: rgba(240, 212, 138, 0.95); }
.bh-cursor-ring.has-label .bh-cr { transform: scale(2.1); background: linear-gradient(135deg, #f4dc98, #d2a94f); border-color: transparent; box-shadow: 0 10px 30px -8px rgba(0, 0, 0, 0.5); }
.bh-cursor-ring.has-label .bh-cr span { opacity: 1; transform: scale(0.48); }
.bh-cursor-ring.is-text .bh-cr { transform: scale(0.4); opacity: 0.4; }
.bh-cursor-ring.is-down .bh-cr { transform: scale(0.82); }
.bh-cursor-ring.is-hover.is-down .bh-cr { transform: scale(1.3); }
html:has(.bh-cursor-ring.has-label) .bh-cursor-dot, html:has(.bh-cursor-ring.is-hover) .bh-cursor-dot { opacity: 0 !important; }

/* ---------- buttons: one calm, consistent hover ---------- */
.bh-page .bh-btn .elementor-button, .bh-page a.bh-b { position: relative; overflow: hidden !important; isolation: isolate; background-size: 100% 100% !important; transition: transform 0.5s var(--bh-ease-out), box-shadow 0.5s var(--bh-ease-out), color 0.35s, background-color 0.35s !important; }
.bh-page .bh-btn .elementor-button::before, .bh-page a.bh-b::before { content: "" !important; position: absolute; inset: 0; z-index: -1; background: linear-gradient(105deg, transparent 35%, rgba(255, 250, 230, 0.55) 50%, transparent 65%) !important; transform: translateX(-120%) !important; transition: transform 0.9s var(--bh-ease-out) !important; }
.bh-page .bh-btn:not(.bh-btn-ghost) .elementor-button:hover, .bh-page a.bh-b:not(.bh-b-ghost):hover { background: var(--bh-metal) !important; background-size: 100% 100% !important; background-position: 0 0 !important; transform: translate3d(0, -2px, 0) !important; }
.bh-page .bh-btn .elementor-button:hover::before, .bh-page a.bh-b:hover::before { transform: translateX(120%) !important; }
.bh-page .bh-btn-ghost .elementor-button:hover::before, .bh-page a.bh-b-ghost:hover::before { transform: translateX(-120%) !important; }
.bh-page .bh-btn-ghost .elementor-button, .bh-page a.bh-b-ghost { background: linear-gradient(var(--bh-gold-solid), var(--bh-gold-solid)) left / 0% 100% no-repeat !important; transition: background-size 0.55s var(--bh-ease-out), color 0.4s, transform 0.5s var(--bh-ease-out), box-shadow 0.5s !important; }
.bh-page .bh-btn-ghost .elementor-button:hover, .bh-page a.bh-b-ghost:hover { background: linear-gradient(var(--bh-gold-solid), var(--bh-gold-solid)) left / 100% 100% no-repeat !important; color: #0e1f15 !important; transform: translate3d(0, -2px, 0) !important; }
.bh-showcase a.bh-b-ghost { background: linear-gradient(#12271b, #12271b) left / 0% 100% no-repeat !important; }
.bh-showcase a.bh-b-ghost:hover { background: linear-gradient(#12271b, #12271b) left / 100% 100% no-repeat !important; color: #f4e6bf !important; }

/* ---------- resources: refined hover ---------- */
.bh-res2-card { transition: transform 0.7s var(--bh-ease-out), box-shadow 0.7s var(--bh-ease-out), border-color 0.5s !important; }
.bh-res2-card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, #e9cd84, #c9a24f); transform: scaleX(0); transform-origin: left; transition: transform 0.7s var(--bh-ease-out); z-index: 2; }
.bh-res2-card:hover { transform: translateY(-6px) !important; border-color: rgba(182, 139, 51, 0.6) !important; box-shadow: 0 34px 60px -36px rgba(18, 39, 27, 0.45) !important; }
.bh-res2-card:hover::before { transform: scaleX(1); }
.bh-res2-icon { transition: background-color 0.5s var(--bh-ease-out), color 0.5s, transform 0.6s var(--bh-ease-out) !important; }
.bh-res2-card:hover .bh-res2-icon { transform: rotate(-8deg) scale(1.06); }
.bh-res2-cta { padding-bottom: 4px; background: linear-gradient(currentColor, currentColor) 0 100% / 0% 1px no-repeat; transition: background-size 0.6s var(--bh-ease-out); }
.bh-res2-card:hover .bh-res2-cta { background-size: 100% 1px; }
.bh-res2-card:first-child:hover { box-shadow: 0 40px 70px -36px rgba(8, 20, 13, 0.75) !important; }
.bh-waves, .bh-mol-stage { -webkit-mask-image: linear-gradient(180deg, #000 55%, transparent 98%); mask-image: linear-gradient(180deg, #000 55%, transparent 98%); }
.bh-hero { background: linear-gradient(180deg, #08160e 0%, #0d2417 50%, #0d2216 100%) !important; }
.bh-hero > .bh-hero-grid::after { content: none; }
.bh-res2-cta { align-self: flex-start; }

/* =====================================================================
   INNER PAGES (2026-10-26): page hero, split, light/dark bands, cards, timeline, note, FAQ, contact, CTA band.
   ===================================================================== */
.bh-phero { position: relative; overflow: hidden; isolation: isolate; color: var(--bh-ivory); background: linear-gradient(180deg, #08160e 0%, #0d2417 60%, #0d2216 100%); }
.bh-phero .bh-waves-w, .bh-phero .bh-mol-w { position: absolute !important; inset: 0 !important; z-index: 0 !important; pointer-events: none; }
.bh-phero .bh-mol-stage { position: absolute; inset: 0; }
.bh-phero .bh-mol-stage canvas { position: absolute; inset: 0; width: 100% !important; height: 100% !important; }
.bh-phero-inner { position: relative; z-index: 2; padding-top: calc(var(--bh-header-h) + clamp(70px, 10vh, 120px)) !important; padding-bottom: clamp(90px, 12vh, 140px) !important; max-width: 920px; text-align: center; margin-inline: auto !important; }
.bh-phero-inner .elementor-heading-title, .bh-phero-inner p { text-align: center !important; }
.bh-crumbs { display: flex; justify-content: center; gap: 10px; font: 500 13px/1 var(--bh-sans); color: rgba(247, 241, 228, 0.55); margin-bottom: 28px; }
.bh-crumbs a { color: rgba(247, 241, 228, 0.75); transition: color 0.3s; }
.bh-crumbs a:hover { color: #e3c06e; }
.bh-phero-title .elementor-heading-title { font-family: var(--bh-display) !important; font-weight: 600 !important; font-size: clamp(2.6rem, 5vw, 4.6rem) !important; letter-spacing: -0.035em !important; line-height: 1.04 !important; color: #f7f1e4; margin: 6px 0 22px !important; }
.bh-phero .bh-lead, .bh-phero .bh-lead p { color: rgba(247, 241, 228, 0.78) !important; max-width: 38em; margin-inline: auto; }

.bh-dark2 { position: relative; background: linear-gradient(180deg, #0d2216 0%, #0b1a12 100%) !important; color: var(--bh-ivory); }
.bh-dark2 .bh-h2 .elementor-heading-title, .bh-dark2 h3 { color: var(--bh-ivory) !important; }
.bh-dark2 .bh-lead, .bh-dark2 .bh-lead p { color: rgba(247, 241, 228, 0.78) !important; }
.bh-dark2 + .bh-dark2 { background: linear-gradient(180deg, #0b1a12 0%, #0d2216 100%) !important; }
.bh-light { background: #f5f0e5 !important; color: var(--bh-text); }
.bh-light .bh-h2 .elementor-heading-title { color: var(--bh-ink) !important; }
.bh-light .bh-eyebrow .elementor-heading-title { color: #94701f !important; }
.bh-light .bh-lead, .bh-light .bh-lead p { color: #4c5a51 !important; }

/* split */
.bh-split2 { display: grid !important; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: clamp(48px, 7vw, 120px) !important; align-items: center; }
.bh-split2 .bh-lead { margin-top: 24px; }
.bh-split2-side .bh-ctas { margin-top: 26px !important; }
.bh-quote { position: relative; padding: 48px 44px 42px; border-radius: 12px; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(210, 169, 79, 0.3); }
.bh-quote-mark { position: absolute; top: -8px; left: 34px; font: 600 90px/1 var(--bh-display); color: #d2a94f; }
.bh-quote p { font: 500 clamp(1.4rem, 2vw, 1.8rem)/1.4 var(--bh-display); letter-spacing: -0.02em; color: #f7f1e4; margin: 18px 0 26px; }
.bh-quote img { width: 54px; height: 54px; object-fit: contain; }

/* cards */
.bh-cardgrid { display: grid; gap: 20px; }
.bh-cols-1 { grid-template-columns: 1fr; }
.bh-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bh-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bh-icard { position: relative; padding: 34px 32px 32px; border-radius: 12px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); box-shadow: 0 24px 50px -38px rgba(18, 39, 27, 0.4); transition: transform 0.6s var(--bh-ease-out), border-color 0.5s, box-shadow 0.6s; overflow: hidden; }
.bh-icard::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, #e9cd84, #c9a24f); transform: scaleX(0); transform-origin: left; transition: transform 0.7s var(--bh-ease-out); }
.bh-icard:hover { transform: translateY(-6px); border-color: rgba(182, 139, 51, 0.5); box-shadow: 0 34px 60px -36px rgba(18, 39, 27, 0.45); }
.bh-icard:hover::before { transform: scaleX(1); }
.bh-icard-ico { display: inline-flex; width: 54px; height: 54px; border-radius: 50%; align-items: center; justify-content: center; background: #f3ecdb; border: 1.5px solid #c9a24f; color: #94701f; margin-bottom: 22px; transition: background 0.5s, color 0.5s; }
.bh-icard:hover .bh-icard-ico { background: #12271b; color: #e3c06e; }
.bh-icard-ico svg, .bh-info svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.bh-icard-k { display: block; font: 700 12px/1 var(--bh-display); letter-spacing: 0.12em; text-transform: uppercase; color: #a87d26; margin-bottom: 10px; }
.bh-icard h3 { margin: 0 0 10px; font-size: 21px !important; color: var(--bh-ink) !important; }
.bh-icard p { margin: 0; color: #56645a; font-size: 15.5px; line-height: 1.7; }
.bh-dark2 .bh-icard { background: rgba(255, 255, 255, 0.04); border-color: rgba(210, 169, 79, 0.22); box-shadow: none; }
.bh-dark2 .bh-icard h3 { color: var(--bh-ivory) !important; }
.bh-dark2 .bh-icard p { color: rgba(247, 241, 228, 0.72); }
.bh-dark2 .bh-icard-ico { background: rgba(210, 169, 79, 0.1); color: #e3c06e; }
.bh-dark2 .bh-icard:hover .bh-icard-ico { background: #d2a94f; color: #0e1f15; }
.bh-fine { margin-top: 22px; font-size: 13.5px; color: #6b766e; text-align: center; }
.bh-fine a { color: #94701f; text-decoration: underline; text-underline-offset: 3px; }

/* timeline */
.bh-timeline { list-style: none; margin: 0 auto; padding: 0; max-width: 900px; position: relative; }
.bh-timeline::before { content: ""; position: absolute; left: 31px; top: 20px; bottom: 20px; width: 1px; background: linear-gradient(rgba(210, 169, 79, 0.7), rgba(210, 169, 79, 0.15)); }
.bh-timeline li { position: relative; display: flex; gap: 32px; padding: 0 0 44px; }
.bh-timeline li:last-child { padding-bottom: 0; }
.bh-tl-n { flex: none; position: relative; z-index: 1; width: 64px; height: 64px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font: 600 17px/1 var(--bh-display); color: #e3c06e; background: radial-gradient(circle at 35% 30%, #1f4430, #0d1d14 70%); box-shadow: inset 0 0 0 1.5px #d2a94f, 0 20px 40px -24px rgba(0, 0, 0, 0.9); }
.bh-tl-place { font: 700 12px/1 var(--bh-display); letter-spacing: 0.12em; text-transform: uppercase; color: #d9b257; }
.bh-timeline h3 { margin: 10px 0 10px; font-size: 24px !important; }
.bh-timeline p { margin: 0; color: rgba(247, 241, 228, 0.74); line-height: 1.75; font-size: 16px; }

/* note */
.bh-note { max-width: 900px; margin: 0 auto; padding: 46px 48px; border-radius: 12px; background: #fff; border: 1px solid rgba(182, 139, 51, 0.35); border-left: 4px solid #c9a24f; }
.bh-note h2 { margin: 0 0 14px; font: 600 26px/1.2 var(--bh-display); letter-spacing: -0.02em; color: var(--bh-ink); }
.bh-note p { margin: 0; color: #4c5a51; line-height: 1.8; font-size: 16.5px; }

/* stats */
.bh-stats3 { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 56px; border: 1px solid rgba(182, 139, 51, 0.3); border-radius: 12px; background: #fff; }
.bh-stats3 > div { padding: 34px 32px; }
.bh-stats3 > div + div { border-left: 1px solid rgba(182, 139, 51, 0.2); }
.bh-stats3 b { display: block; font: 600 clamp(1.9rem, 2.8vw, 2.6rem)/1 var(--bh-display); letter-spacing: -0.03em; color: #94701f; }
.bh-stats3 span { display: block; margin-top: 12px; color: #4c5a51; font-size: 15px; }

/* faq on inner pages */
.bh-faq-narrow { max-width: 900px; margin: 0 auto; }
.bh-faq-item summary { font-family: var(--bh-display) !important; font-weight: 600 !important; font-size: 20px !important; letter-spacing: -0.015em; }

/* contact */
.bh-contact { display: grid !important; grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.65fr); gap: clamp(32px, 5vw, 70px) !important; align-items: start; }
.bh-form { padding: 44px; border-radius: 14px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); box-shadow: 0 30px 60px -44px rgba(18, 39, 27, 0.45); display: flex; flex-direction: column; gap: 20px; }
.bh-fields2 { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.bh-field { display: flex; flex-direction: column; gap: 9px; }
.bh-field > span { font: 600 13.5px/1 var(--bh-display); color: var(--bh-ink); }
.bh-field > span em { font-style: normal; font-weight: 500; color: #7b857e; }
.bh-field input, .bh-field select, .bh-field textarea { width: 100%; font: 400 16px/1.5 var(--bh-sans); color: var(--bh-ink); background: #faf8f3; border: 1px solid rgba(18, 39, 27, 0.14); border-radius: 8px; padding: 14px 16px; transition: border-color 0.3s, box-shadow 0.3s, background 0.3s; outline: 0; }
.bh-field input:focus, .bh-field select:focus, .bh-field textarea:focus { border-color: #c9a24f; background: #fff; box-shadow: 0 0 0 4px rgba(201, 162, 79, 0.15); }
.bh-hp { position: absolute !important; left: -9999px; }
.bh-page .bh-submit { align-self: flex-start; border: 0 !important; cursor: pointer; }
.bh-form-msg { margin: 0; font-size: 15px; min-height: 1px; }
.bh-form-msg.is-ok { color: #2c6b45; }
.bh-form-msg.is-err { color: #a8402c; }
.bh-contact-side { position: sticky !important; top: 120px; padding: 40px 36px !important; border-radius: 14px; background: radial-gradient(90% 80% at 85% 10%, #1f4a33 0%, #0e2117 70%); color: var(--bh-ivory); }
.bh-side-title { margin: 0 0 26px; font: 600 24px/1.2 var(--bh-display); letter-spacing: -0.02em; color: #f7f1e4; }
.bh-info { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 24px; }
.bh-info li { display: flex; gap: 16px; align-items: flex-start; font-size: 15.5px; color: rgba(247, 241, 228, 0.86); }
.bh-info li > svg { flex: none; width: 44px; height: 44px; padding: 10px; border-radius: 50%; border: 1.5px solid #d2a94f; color: #e3c06e; }
.bh-info span { display: block; font: 700 12px/1 var(--bh-display); letter-spacing: 0.12em; text-transform: uppercase; color: #d9b257; margin-bottom: 7px; }
.bh-info a { color: #f7f1e4; border-bottom: 1px solid rgba(210, 169, 79, 0.5); transition: color 0.3s; }
.bh-info a:hover { color: #e3c06e; }

/* CTA band */
.bh-ctaband { position: relative; overflow: hidden; isolation: isolate; background: radial-gradient(70% 90% at 20% 50%, #1d4330 0%, #0b1a12 72%) !important; color: var(--bh-ivory); }
.bh-band-arcs { position: absolute !important; inset: 0 !important; z-index: -1 !important; pointer-events: none; }
.bh-band-arcs .elementor-widget-container { height: 100%; }
.bh-arcs-band { position: absolute; inset: 0; opacity: 0.8; }
.bh-ctaband-inner { display: flex !important; flex-direction: row !important; align-items: flex-end; justify-content: space-between; gap: 40px; }
.bh-ctaband .bh-h2 .elementor-heading-title { color: var(--bh-ivory) !important; }
.bh-ctaband .bh-lead, .bh-ctaband .bh-lead p { color: rgba(247, 241, 228, 0.78) !important; margin-top: 16px; }
.bh-ctaband-copy { max-width: 640px; }

@media (max-width: 1024px) {
	.bh-split2, .bh-contact { grid-template-columns: 1fr; }
	.bh-cols-3 { grid-template-columns: 1fr 1fr; }
	.bh-ctaband-inner { flex-direction: column !important; align-items: flex-start; }
	.bh-contact-side { position: relative !important; top: 0; }
}
@media (max-width: 640px) {
	.bh-cols-2, .bh-cols-3, .bh-fields2, .bh-stats3 { grid-template-columns: 1fr; }
	.bh-stats3 > div + div { border-left: 0; border-top: 1px solid rgba(182, 139, 51, 0.2); }
	.bh-form, .bh-note { padding: 28px 22px; }
	.bh-timeline li { gap: 20px; }
}
.bh-page button.bh-b { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: var(--bh-btn-h); padding: 0 34px; border-radius: 3px; border: 0; cursor: pointer; font: 600 15px/1 var(--bh-sans); color: #0e1f15; background: var(--bh-metal); box-shadow: 0 1px 0 rgba(255, 245, 210, 0.7) inset, 0 12px 30px -14px rgba(184, 135, 42, 0.8); transition: transform 0.5s var(--bh-ease-out), box-shadow 0.5s var(--bh-ease-out), opacity 0.3s; }
.bh-page button.bh-b::after { content: "\2192"; transition: transform 0.45s var(--bh-ease-out); }
.bh-page button.bh-b:hover { transform: translate3d(0, -2px, 0); box-shadow: 0 1px 0 rgba(255, 245, 210, 0.8) inset, 0 18px 36px -14px rgba(184, 135, 42, 0.95); }
.bh-page button.bh-b:hover::after { transform: translateX(5px); }
.bh-page button.bh-b:disabled { opacity: 0.6; cursor: default; transform: none; }
.bh-page .bh-contact-side { border-radius: 14px !important; overflow: hidden; }

/* =====================================================================
   PERFORMANCE (2026-10-27): only transform/opacity animate; no animated SVG, no live blur, no blend modes.
   ===================================================================== */
/* silk: soft CSS gradient blobs (no SVG blur filter), drifting on the compositor */
.bh-waves { position: absolute; inset: 0; overflow: hidden; contain: strict; }
.bh-silk { position: absolute; display: block; border-radius: 50%; will-change: transform; pointer-events: none; }
.bh-silk-1 { left: -20%; top: 48%; width: 140%; height: 42%; background: radial-gradient(50% 50% at 50% 50%, rgba(46, 132, 86, 0.42) 0%, rgba(46, 132, 86, 0.16) 45%, rgba(46, 132, 86, 0) 72%); transform: rotate(-6deg); }
.bh-silk-2 { left: -10%; top: 10%; width: 120%; height: 30%; background: radial-gradient(50% 50% at 50% 50%, rgba(46, 132, 86, 0.26) 0%, rgba(46, 132, 86, 0.08) 50%, rgba(46, 132, 86, 0) 72%); transform: rotate(4deg); }
.bh-silk-3 { left: -15%; top: 78%; width: 130%; height: 40%; background: radial-gradient(50% 50% at 50% 50%, rgba(36, 112, 72, 0.4) 0%, rgba(36, 112, 72, 0.12) 50%, rgba(36, 112, 72, 0) 72%); transform: rotate(-3deg); }
.bh-motion .bh-silk-1 { animation: bh-silk2 24s ease-in-out infinite alternate; }
.bh-motion .bh-silk-2 { animation: bh-silk2 30s ease-in-out -8s infinite alternate-reverse; }
.bh-motion .bh-silk-3 { animation: bh-silk2 36s ease-in-out -14s infinite alternate; }
@keyframes bh-silk2 { from { transform: translate3d(-5%, 0, 0) rotate(-5deg) scaleY(1); } to { transform: translate3d(5%, -4%, 0) rotate(2deg) scaleY(1.2); } }
.bh-wave, .bh-waves svg { display: none !important; }

/* hero: drop grain overlay (blend mode) and the scroll-linked fade mask */
.bh-hero::before { content: none !important; }
.bh-hero::before, .bh-hero::after, .bh-waves, .bh-mol-stage { -webkit-mask-image: none !important; mask-image: none !important; }
.bh-hero::after { background: linear-gradient(180deg, rgba(13, 34, 22, 0) 70%, #0d2216 100%) !important; }
.bh-mol-stage canvas, .bh-dots-stage canvas { position: absolute; inset: 0; width: 100% !important; height: 100% !important; }
.bh-hero-copy { will-change: auto !important; }

/* our standard: static lines, no glass blur */
.bh-motion .bh-lines g { animation: none !important; }
.bh-page .bh-facts, .bh-pillar, .bh-inst-list, .bh-chip { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
.bh-page .bh-facts { background: rgba(255, 255, 255, 0.035) !important; }
.bh-inst-list { background: rgba(8, 20, 13, 0.7) !important; }
.bh-pillar { background: rgba(12, 27, 18, 0.72) !important; }

/* no CSS filters on large art; no blend modes */
.bh-arcs-hero, .bh-arcs-cert, .bh-foot-logo img, .bh-seal img { filter: none !important; }
.bh-page .bh-pillars::before { mix-blend-mode: normal !important; }
.bh-mol-w { mix-blend-mode: normal !important; }
.bh-pt-img img, .bh-card-media img { mix-blend-mode: normal !important; }

/* isolate heavy sections so off-screen work is skipped */
.bh-section, .bh-footer { contain: layout paint; }
.bh-hero, .bh-phero { contain: layout paint; }
/* perf 2: static silk (no animated giant layers), no :has() cursor rule */
.bh-silk { will-change: auto !important; animation: none !important; }
html:has(.bh-cursor-ring.has-label) .bh-cursor-dot, html:has(.bh-cursor-ring.is-hover) .bh-cursor-dot { opacity: 1 !important; }
.bh-cursor-on .bh-cursor-dot.is-hidden { opacity: 0 !important; }
.bh-cursor-dot, .bh-cursor-ring { will-change: transform; }
.bh-motion .bh-hero-copy { transform: none !important; }

/* =====================================================================
   NAV v2 (2026-10-27): cleaner, premium. Taller bar, sentence-case links, gold hairline, no blur.
   ===================================================================== */
:root { --bh-header-h: 88px; }
.bh-header { background: linear-gradient(180deg, rgba(6, 16, 10, 0.55), rgba(6, 16, 10, 0)) !important; }
.bh-header::after { background: linear-gradient(90deg, transparent, rgba(210, 169, 79, 0.28), transparent) !important; }
.bh-header.is-solid { background: rgba(10, 24, 16, 0.96) !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; box-shadow: 0 10px 30px -18px rgba(0, 0, 0, 0.7); }
.bh-header.is-solid::after { background: linear-gradient(90deg, transparent, rgba(210, 169, 79, 0.45), transparent) !important; }
.bh-brand .elementor-widget-image img { width: 40px !important; height: 40px !important; }
.bh-brand .elementor-heading-title { font-size: 16px !important; letter-spacing: 0.3em !important; }
.bh-nav .elementor-nav-menu--main .elementor-item { font-family: var(--bh-sans) !important; font-size: 14.5px !important; font-weight: 500 !important; letter-spacing: 0.005em !important; text-transform: none !important; color: rgba(247, 241, 228, 0.82) !important; padding: 12px 18px !important; transition: color 0.3s !important; }
.bh-nav .elementor-nav-menu--main .elementor-item:hover, .bh-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { color: #f7f1e4 !important; }
.bh-nav .elementor-nav-menu--main .elementor-item::after { left: 50% !important; right: auto !important; width: 4px; height: 4px !important; bottom: 2px !important; border-radius: 50%; background: #d9b257 !important; transform: translateX(-50%) scale(0) !important; transition: transform 0.4s var(--bh-ease-out) !important; }
.bh-nav .elementor-nav-menu--main .elementor-item:hover::after, .bh-nav .elementor-nav-menu--main .elementor-item.elementor-item-active::after { transform: translateX(-50%) scale(1) !important; }
.bh-nav .sub-arrow { opacity: 0.6; margin-left: 4px; }
.bh-nav .elementor-nav-menu--main .sub-menu { background: #0e2117 !important; border: 1px solid rgba(210, 169, 79, 0.25) !important; border-radius: 12px !important; padding: 10px !important; box-shadow: 0 30px 60px -24px rgba(0, 0, 0, 0.8) !important; margin-top: 6px !important; }
.bh-nav .elementor-nav-menu--main .sub-menu .elementor-sub-item { color: rgba(247, 241, 228, 0.82) !important; font: 500 14px/1.2 var(--bh-sans) !important; padding: 11px 14px !important; border-radius: 8px; text-transform: none !important; }
.bh-nav .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover { background: rgba(210, 169, 79, 0.12) !important; color: #f0d48a !important; }
.bh-actions { gap: 4px !important; }
.bh-icon .elementor-icon, .bh-cart .elementor-menu-cart__toggle .elementor-button { width: 44px !important; height: 44px !important; border-radius: 50% !important; border: 1px solid rgba(210, 169, 79, 0.3) !important; display: inline-flex !important; align-items: center; justify-content: center; padding: 0 !important; transition: border-color 0.3s, background 0.3s !important; }
.bh-icon .elementor-icon:hover, .bh-cart .elementor-menu-cart__toggle .elementor-button:hover { border-color: #d2a94f !important; background: rgba(210, 169, 79, 0.1) !important; }
.bh-icon .elementor-icon svg, .bh-cart .elementor-button-icon svg { width: 17px !important; height: 17px !important; }
.bh-cart .elementor-button-icon-qty { top: -6px !important; right: -6px !important; }

/* =====================================================================
   NAV v3 (2026-10-27): logo · floating capsule of links · icons + gold CTA. Shrinks to a slimmer bar on scroll.
   ===================================================================== */
:root { --bh-header-h: 96px; }
.bh-header { background: none !important; box-shadow: none !important; transition: transform 0.6s var(--bh-ease-out) !important; }
.bh-header::after { content: none !important; }
.bh-header-row { height: var(--bh-header-h) !important; transition: height 0.5s var(--bh-ease-out); }
.bh-header.is-solid { background: none !important; box-shadow: none !important; }
.bh-header.is-solid .bh-header-row { height: 76px !important; }
/* capsule */
.bh-nav .elementor-nav-menu--main { padding: 6px !important; border-radius: 999px; background: rgba(9, 22, 14, 0.72); border: 1px solid rgba(210, 169, 79, 0.22); box-shadow: 0 10px 40px -20px rgba(0, 0, 0, 0.8), inset 0 1px 0 rgba(255, 255, 255, 0.04); transition: background 0.4s, border-color 0.4s; }
.bh-header.is-solid .bh-nav .elementor-nav-menu--main { background: rgba(9, 22, 14, 0.94); border-color: rgba(210, 169, 79, 0.32); }
.bh-nav .elementor-nav-menu--main .elementor-item { font: 500 14px/1 var(--bh-sans) !important; letter-spacing: 0 !important; text-transform: none !important; color: rgba(247, 241, 228, 0.78) !important; padding: 11px 18px !important; border-radius: 999px; transition: color 0.3s, background-color 0.3s !important; }
.bh-nav .elementor-nav-menu--main .elementor-item::after { content: none !important; }
.bh-nav .elementor-nav-menu--main .elementor-item:hover { color: #fff !important; background: rgba(255, 255, 255, 0.06) !important; }
.bh-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { color: #0e1f15 !important; background: #d2a94f !important; }
.bh-nav .elementor-nav-menu--main .elementor-item.elementor-item-active .sub-arrow { color: #0e1f15; }
.bh-nav .sub-arrow { opacity: 0.55; margin-left: 2px; }
.bh-nav .sub-arrow svg { width: 8px !important; }
/* brand */
.bh-brand .elementor-widget-image img { width: 42px !important; height: 42px !important; }
/* right side: quiet icons + gold CTA */
.bh-actions { gap: 6px !important; }
.bh-icon .elementor-icon, .bh-cart .elementor-menu-cart__toggle .elementor-button { width: 42px !important; height: 42px !important; border: 0 !important; background: transparent !important; color: rgba(247, 241, 228, 0.85) !important; }
.bh-icon .elementor-icon:hover, .bh-cart .elementor-menu-cart__toggle .elementor-button:hover { background: rgba(255, 255, 255, 0.06) !important; color: #fff !important; }
.bh-cart .elementor-button-icon-qty { top: 2px !important; right: 2px !important; min-width: 16px !important; height: 16px !important; line-height: 16px !important; font-size: 9.5px !important; }
.bh-navcta-w { margin-left: 8px; }
.bh-navcta { display: inline-flex; align-items: center; height: 44px; padding: 0 22px; border-radius: 999px; font: 600 14px/1 var(--bh-sans); color: #0e1f15 !important; background: linear-gradient(135deg, #f0d48a 0%, #d2a94f 55%, #b8893a 100%); box-shadow: 0 8px 24px -12px rgba(210, 169, 79, 0.8); transition: transform 0.4s var(--bh-ease-out), box-shadow 0.4s; }
.bh-navcta:hover { transform: translateY(-1px); box-shadow: 0 12px 30px -12px rgba(210, 169, 79, 1); }
@media (max-width: 1024px) {
	.bh-navcta-w { display: none !important; }
	.bh-nav .elementor-nav-menu--main { background: none; border: 0; box-shadow: none; }
	.bh-nav .elementor-menu-toggle { width: 42px; height: 42px; border-radius: 50% !important; border: 1px solid rgba(210, 169, 79, 0.35) !important; }
	.bh-nav .elementor-nav-menu--dropdown { background: #0e2117 !important; border: 1px solid rgba(210, 169, 79, 0.25); }
	.bh-nav .elementor-nav-menu--dropdown a { color: rgba(247, 241, 228, 0.85) !important; border-color: rgba(210, 169, 79, 0.12) !important; font: 500 16px/1.2 var(--bh-sans) !important; }
}

/* =====================================================================
   SIGNATURE COMPOUNDS v3: no counts, image-led cards, clean name/price
   ===================================================================== */
.bh-pt-tabs button { padding: 12px 22px !important; font: 500 14.5px/1 var(--bh-sans) !important; }
.bh-pt-grid { gap: 28px 22px !important; }
.bh-showcase .bh-pt-card, .bh-pt-card { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; overflow: visible !important; }
.bh-showcase .bh-pt-card:hover { box-shadow: none !important; transform: none !important; }
.bh-pt-img { position: relative; aspect-ratio: 1 / 1 !important; border-radius: 14px; overflow: hidden; background: #ececea !important; box-shadow: 0 1px 0 rgba(18, 39, 27, 0.04), 0 22px 44px -32px rgba(18, 39, 27, 0.45); transition: box-shadow 0.6s var(--bh-ease-out), transform 0.6s var(--bh-ease-out); }
.bh-pt-img img { width: 100% !important; height: 100% !important; object-fit: cover !important; padding: 0 !important; transition: transform 1.1s var(--bh-ease-out) !important; }
.bh-pt-img::after { content: "View \2192"; position: absolute; left: 50%; bottom: 16px; transform: translate(-50%, 12px); opacity: 0; padding: 10px 18px; border-radius: 999px; background: #12271b; color: #f0d48a; font: 600 13px/1 var(--bh-sans); transition: opacity 0.4s, transform 0.5s var(--bh-ease-out); white-space: nowrap; }
.bh-pt-card:hover .bh-pt-img { transform: translateY(-6px); box-shadow: 0 0 0 1.5px #c9a24f, 0 34px 60px -32px rgba(18, 39, 27, 0.55); }
.bh-pt-card:hover .bh-pt-img img { transform: scale(1.05) !important; }
.bh-pt-card:hover .bh-pt-img::after { opacity: 1; transform: translate(-50%, 0); }
.bh-pt-body { display: flex !important; flex-direction: row !important; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 18px 4px 0 !important; }
.bh-pt-name { font: 600 16.5px/1.3 var(--bh-display) !important; letter-spacing: -0.015em !important; color: var(--bh-ink) !important; display: flex; flex-direction: column; gap: 4px; }
.bh-pt-name em { font: 400 13.5px/1.3 var(--bh-sans); font-style: normal; color: #6b766e; letter-spacing: 0; }
.bh-pt-price { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 3px; font: 600 15.5px/1.2 var(--bh-display) !important; color: #12271b !important; }
.bh-pt-price small { font: 500 11px/1 var(--bh-sans); letter-spacing: 0.08em; text-transform: uppercase; color: #a87d26; }
.bh-pt-price small:empty { display: none; }
.bh-pt-card > i { display: none !important; }
@media (max-width: 600px) {
	.bh-pt-body { flex-direction: column !important; gap: 6px; }
	.bh-pt-price { align-items: flex-start; flex-direction: row; gap: 6px; }
	.bh-pt-img::after { display: none; }
}
.bh-pt-img::after { content: none !important; }
.bh-cart .elementor-menu-cart__toggle .elementor-button { position: relative; overflow: visible !important; }
.bh-cart .elementor-button-icon { position: relative; display: inline-flex !important; color: rgba(247, 241, 228, 0.85) !important; }
.bh-cart .elementor-button-icon svg, .bh-cart .elementor-button-icon i { color: rgba(247, 241, 228, 0.85) !important; fill: currentColor !important; width: 18px !important; height: 18px !important; font-size: 18px !important; }
.bh-cart .elementor-button-icon-qty { position: absolute !important; top: -7px !important; right: -9px !important; left: auto !important; min-width: 15px !important; height: 15px !important; line-height: 15px !important; padding: 0 3px !important; font-size: 9px !important; border-radius: 99px !important; }
.bh-cart .elementor-button-icon-qty[data-counter="0"] { display: none !important; }
.bh-header.is-solid { background: linear-gradient(180deg, rgba(8, 20, 13, 0.97) 0%, rgba(8, 20, 13, 0.92) 100%) !important; box-shadow: 0 1px 0 rgba(210, 169, 79, 0.18), 0 18px 40px -24px rgba(0, 0, 0, 0.8) !important; }
.bh-header.is-solid { background: #0a1810 !important; }

/* ---------- institutions: tiers + apply ---------- */
.bh-tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
.bh-tier { position: relative; display: flex; flex-direction: column; padding: 40px 34px 34px; border-radius: 16px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); box-shadow: 0 24px 50px -38px rgba(18, 39, 27, 0.4); transition: transform 0.6s var(--bh-ease-out), box-shadow 0.6s; }
.bh-tier:hover { transform: translateY(-6px); box-shadow: 0 40px 70px -40px rgba(18, 39, 27, 0.5); }
.bh-tier.is-pop { background: radial-gradient(90% 70% at 80% 0%, #1f4a33 0%, #0e2117 70%); border-color: rgba(210, 169, 79, 0.5); color: var(--bh-ivory); }
.bh-tier-badge { position: absolute; top: -13px; left: 34px; padding: 7px 14px; border-radius: 999px; background: linear-gradient(135deg, #f0d48a, #d2a94f); color: #0e1f15; font: 700 11.5px/1 var(--bh-display); letter-spacing: 0.06em; text-transform: uppercase; }
.bh-tier h3 { margin: 0; font-size: 28px !important; color: var(--bh-ink) !important; }
.bh-tier.is-pop h3 { color: #f7f1e4 !important; }
.bh-tier-who { margin: 8px 0 24px; color: #5f6b63; font-size: 15px; }
.bh-tier.is-pop .bh-tier-who { color: rgba(247, 241, 228, 0.72); }
.bh-tier-vol { padding: 20px 0; border-top: 1px solid rgba(18, 39, 27, 0.1); border-bottom: 1px solid rgba(18, 39, 27, 0.1); }
.bh-tier.is-pop .bh-tier-vol { border-color: rgba(210, 169, 79, 0.25); }
.bh-tier-vol b { display: block; font: 600 26px/1.1 var(--bh-display); letter-spacing: -0.03em; color: #94701f; }
.bh-tier.is-pop .bh-tier-vol b { color: #e3c06e; }
.bh-tier-vol span { display: block; margin-top: 6px; font-size: 14.5px; color: #4c5a51; }
.bh-tier.is-pop .bh-tier-vol span { color: rgba(247, 241, 228, 0.8); }
.bh-tier ul { list-style: none; margin: 22px 0 30px; padding: 0; display: flex; flex-direction: column; gap: 12px; flex: 1; }
.bh-tier li { position: relative; padding-left: 28px; font-size: 15px; color: #3b4a40; line-height: 1.5; }
.bh-tier.is-pop li { color: rgba(247, 241, 228, 0.86); }
.bh-tier li::before { content: ""; position: absolute; left: 0; top: 4px; width: 16px; height: 16px; border-radius: 50%; background: #f3ecdb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2L11.5 5.6' fill='none' stroke='%2394701f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% no-repeat; }
.bh-tier.is-pop li::before { background-color: rgba(210, 169, 79, 0.18); }
.bh-tier .bh-b { align-self: stretch; }
.bh-light .bh-tier a.bh-b-ghost { color: #12271b !important; box-shadow: inset 0 0 0 1.5px #12271b !important; background: linear-gradient(#12271b, #12271b) left / 0% 100% no-repeat !important; }
.bh-light .bh-tier a.bh-b-ghost:hover { color: #f4e6bf !important; background: linear-gradient(#12271b, #12271b) left / 100% 100% no-repeat !important; }
.bh-apply { scroll-margin-top: 90px; }
.bh-apply .bh-contact { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr) !important; }
.bh-apply-copy { position: sticky !important; top: 130px; }
.bh-apply-copy .bh-lead { margin-top: 22px; }
.bh-form-fine { margin: 0; font-size: 13.5px; color: #6b766e; }

/* ---------- terms ---------- */
.bh-legal-grid { display: grid !important; grid-template-columns: 280px minmax(0, 1fr); gap: clamp(40px, 6vw, 90px) !important; align-items: start; }
.bh-toc-w { position: sticky !important; top: 120px; }
.bh-toc { padding: 28px 26px; border-radius: 14px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); }
.bh-toc p { margin: 0 0 14px; font: 700 12px/1 var(--bh-display); letter-spacing: 0.12em; text-transform: uppercase; color: #94701f; }
.bh-toc ol { list-style: none; margin: 0; padding: 0; counter-reset: toc; display: flex; flex-direction: column; gap: 2px; }
.bh-toc li { counter-increment: toc; }
.bh-toc a { display: flex; gap: 10px; padding: 7px 8px; border-radius: 6px; font-size: 14px; color: #3b4a40; transition: background 0.3s, color 0.3s; }
.bh-toc a::before { content: counter(toc, decimal-leading-zero); font: 600 12px/1.6 var(--bh-display); color: #b68b33; }
.bh-toc a:hover { background: #f3ecdb; color: var(--bh-ink); }
.bh-legal { max-width: 760px; }
.bh-legal section { padding: 0 0 40px; margin-bottom: 40px; border-bottom: 1px solid rgba(18, 39, 27, 0.1); scroll-margin-top: 110px; }
.bh-legal section:last-child { border-bottom: 0; }
.bh-legal h2 { display: flex; align-items: baseline; gap: 14px; margin: 0 0 18px; font: 600 24px/1.25 var(--bh-display); letter-spacing: -0.02em; color: var(--bh-ink); }
.bh-legal h2 span { font: 600 14px/1 var(--bh-display); color: #b68b33; }
.bh-legal p { margin: 0 0 14px; font-size: 16.5px; line-height: 1.8; color: #3f4c43; }
@media (max-width: 1024px) {
	.bh-tiers { grid-template-columns: 1fr; max-width: 520px; margin: 0 auto; }
	.bh-apply .bh-contact, .bh-legal-grid { grid-template-columns: 1fr !important; }
	.bh-apply-copy, .bh-toc-w { position: relative !important; top: 0; }
}

/* =====================================================================
   TOOLS PAGES (2026-10-27): calculator, certificate library, journal, article
   ===================================================================== */
/* calculator */
.bh-calc { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); gap: 24px; align-items: start; }
.bh-calc-inputs { display: flex; flex-direction: column; gap: 18px; }
.bh-calc-q { margin: 0; padding: 28px 28px 24px; border: 1px solid rgba(18, 39, 27, 0.08); border-radius: 14px; background: #fff; box-shadow: 0 20px 44px -36px rgba(18, 39, 27, 0.4); }
.bh-calc-q legend { float: left; width: 100%; margin-bottom: 16px; font: 600 18px/1.2 var(--bh-display); letter-spacing: -0.02em; color: var(--bh-ink); }
.bh-chips { clear: both; display: flex; flex-wrap: wrap; gap: 8px; }
.bh-chips button { padding: 10px 15px; border-radius: 999px; border: 1px solid rgba(18, 39, 27, 0.14); background: #faf8f3; font: 500 14px/1 var(--bh-sans); color: var(--bh-ink); cursor: pointer; transition: background 0.25s, color 0.25s, border-color 0.25s; font-variant-numeric: tabular-nums; }
.bh-chips button:hover { border-color: #b68b33; }
.bh-chips button[aria-pressed="true"] { background: #12271b; border-color: #12271b; color: #f0d48a; }
.bh-calc-custom { display: flex; align-items: center; gap: 12px; margin-top: 16px; }
.bh-calc-custom span { font: 600 13px/1 var(--bh-display); color: #5f6b63; }
.bh-calc-custom input { width: 140px; padding: 10px 14px; border-radius: 8px; border: 1px solid rgba(18, 39, 27, 0.14); background: #faf8f3; font: 500 15px/1 var(--bh-sans); color: var(--bh-ink); outline: 0; transition: border-color 0.3s, box-shadow 0.3s; }
.bh-calc-custom input:focus { border-color: #c9a24f; box-shadow: 0 0 0 4px rgba(201, 162, 79, 0.15); }
.bh-calc-custom em { font-style: normal; font-size: 14px; color: #5f6b63; }
.bh-calc-out { position: sticky; top: 110px; padding: 34px 32px 30px; border-radius: 16px; background: radial-gradient(90% 70% at 80% 0%, #1f4a33 0%, #0b1a12 72%); color: var(--bh-ivory); box-shadow: 0 40px 80px -50px rgba(0, 0, 0, 0.9); }
.bh-calc-k { margin: 0; font: 700 12px/1 var(--bh-display); letter-spacing: 0.12em; text-transform: uppercase; color: #d9b257; }
.bh-calc-draw { margin: 12px 0 26px; font: 600 clamp(2.2rem, 3.6vw, 3.2rem)/1 var(--bh-display); letter-spacing: -0.03em; color: #f7f1e4; }
.bh-calc-draw b { color: #f0d48a; font-weight: 600; font-variant-numeric: tabular-nums; }
.bh-syringe { display: flex; align-items: center; height: 46px; }
.bh-syr-barrel { position: relative; flex: 1; height: 34px; border-radius: 6px; border: 1.5px solid rgba(247, 241, 228, 0.4); background: rgba(255, 255, 255, 0.04); overflow: hidden; }
.bh-syr-barrel > i { position: absolute; inset: 2px; border-radius: 4px; background: linear-gradient(90deg, #b8893a, #f0d48a); transform-origin: left; transform: scaleX(0); transition: transform 0.9s var(--bh-ease-out); }
.bh-syr-ticks i { position: absolute; top: 0; bottom: 0; width: 1px; background: rgba(247, 241, 228, 0.25); }
.bh-syr-ticks b { position: absolute; top: 38px; left: 50%; transform: translateX(-50%); font: 500 10.5px/1 var(--bh-sans); color: rgba(247, 241, 228, 0.55); }
.bh-syr-barrel { overflow: visible; }
.bh-syr-plunger { width: 40px; height: 12px; margin-left: 4px; border-radius: 3px; background: rgba(247, 241, 228, 0.3); }
.bh-syr-note { margin: 22px 0 22px; font-size: 12.5px; color: rgba(247, 241, 228, 0.55); }
.is-over .bh-syr-barrel > i { background: linear-gradient(90deg, #a8402c, #e08a6c); }
.bh-calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin: 0; border-radius: 12px; overflow: hidden; background: rgba(210, 169, 79, 0.2); }
.bh-calc-grid > div { padding: 20px 20px 18px; background: #0f2419; }
.bh-calc-grid dt { font: 700 11px/1 var(--bh-display); letter-spacing: 0.1em; text-transform: uppercase; color: rgba(247, 241, 228, 0.55); }
.bh-calc-grid dd { margin: 10px 0 6px; font: 600 22px/1 var(--bh-display); color: #f7f1e4; font-variant-numeric: tabular-nums; }
.bh-calc-grid small { font-size: 12.5px; color: rgba(247, 241, 228, 0.6); }
.bh-calc-steps-btn { margin-top: 22px; background: none; border: 0; padding: 0 0 4px; font: 600 14.5px/1 var(--bh-sans); color: #f0d48a; cursor: pointer; border-bottom: 1px solid rgba(240, 212, 138, 0.5); }
.bh-calc-steps { margin: 22px 0 0; padding: 0 0 0 20px; display: flex; flex-direction: column; gap: 16px; }
.bh-calc-steps li { color: rgba(247, 241, 228, 0.85); font-size: 14px; }
.bh-calc-steps h3 { margin: 0 0 4px; font-size: 15px !important; color: #f7f1e4 !important; }
.bh-calc-steps p { margin: 2px 0; font-variant-numeric: tabular-nums; }
.bh-calc-steps .f { color: rgba(247, 241, 228, 0.55); font-size: 13px; }
.bh-calc-steps b { color: #f0d48a; }
.is-empty .bh-calc-grid, .is-empty .bh-calc-steps-btn { opacity: 0.35; }

/* certificate library */
.bh-coa-search { position: relative; max-width: 720px; margin: 0 auto 40px; }
.bh-coa-search svg { position: absolute; left: 22px; top: 50%; width: 20px; height: 20px; transform: translateY(-50%); fill: none; stroke: #94701f; stroke-width: 1.8; stroke-linecap: round; }
.bh-coa-search input { width: 100%; height: 62px; padding: 0 22px 0 56px; border-radius: 999px; border: 1px solid rgba(18, 39, 27, 0.14); background: #fff; font: 400 16px/1 var(--bh-sans); color: var(--bh-ink); outline: 0; box-shadow: 0 20px 44px -34px rgba(18, 39, 27, 0.4); transition: border-color 0.3s, box-shadow 0.3s; }
.bh-coa-search input:focus { border-color: #c9a24f; box-shadow: 0 0 0 5px rgba(201, 162, 79, 0.14); }
.bh-coa-list-w [data-coa-count] { text-align: center; font: 600 13px/1 var(--bh-display) !important; letter-spacing: 0.1em; text-transform: uppercase; color: #94701f !important; margin: 0 0 22px !important; }
.bh-coa-list-w [data-coa-list] { list-style: none; margin: 0 auto; padding: 0; max-width: 980px; display: flex; flex-direction: column; gap: 10px; border: 0 !important; }
.bh-coa-list-w [data-coa-row] { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 18px !important; padding: 18px 20px 18px 22px !important; border: 1px solid rgba(18, 39, 27, 0.08) !important; border-radius: 12px; background: #fff; transition: border-color 0.3s, transform 0.5s var(--bh-ease-out), box-shadow 0.5s; }
.bh-coa-list-w [data-coa-row]:hover { border-color: rgba(182, 139, 51, 0.6) !important; transform: translateY(-2px); box-shadow: 0 20px 40px -30px rgba(18, 39, 27, 0.45); }
.bh-coa-list-w [data-coa-row][hidden] { display: none !important; }
.bh-coa-list-w [data-coa-row] > div { flex: 1; display: flex; align-items: center; gap: 16px; min-width: 0; }
.bh-coa-list-w [data-coa-row] svg.lucide-file-check2 { width: 40px !important; height: 40px !important; flex: none; padding: 9px; border-radius: 50%; background: #f3ecdb; color: #94701f; stroke: currentColor; margin: 0 !important; }
.bh-coa-list-w [data-coa-row] p { margin: 0 !important; }
.bh-coa-list-w [data-coa-row] .font-display { font: 600 17px/1.3 var(--bh-display) !important; color: var(--bh-ink); }
.bh-coa-list-w [data-coa-row] .font-display span { color: #6b766e; font-weight: 500; }
.bh-coa-list-w [data-coa-row] .label-mono { font: 500 13px/1.4 var(--bh-sans) !important; color: #5f6b63; margin-top: 4px !important; letter-spacing: 0 !important; text-transform: none !important; }
.bh-coa-list-w [data-bgl-doc] { flex: none; display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 18px; border-radius: 999px; border: 1.5px solid #12271b; background: transparent; font: 600 13.5px/1 var(--bh-sans); color: #12271b; cursor: pointer; text-transform: none !important; letter-spacing: 0 !important; transition: background 0.3s, color 0.3s; }
.bh-coa-list-w [data-bgl-doc]:hover { background: #12271b; color: #f0d48a; }
.bh-coa-list-w [data-bgl-doc] svg { width: 15px !important; height: 15px !important; }
.bh-coa-list-w [data-coa-empty] { text-align: center; padding: 40px 0; color: #5f6b63; }

/* journal */
.bh-posts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.bh-post { position: relative; display: flex; flex-direction: column; min-height: 300px; padding: 32px 30px 28px; border-radius: 14px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); color: var(--bh-ink) !important; box-shadow: 0 22px 46px -38px rgba(18, 39, 27, 0.4); transition: transform 0.6s var(--bh-ease-out), border-color 0.4s, box-shadow 0.6s; overflow: hidden; }
.bh-post::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, #e9cd84, #c9a24f); transform: scaleX(0); transform-origin: left; transition: transform 0.7s var(--bh-ease-out); }
.bh-post:hover { transform: translateY(-6px); border-color: rgba(182, 139, 51, 0.5); box-shadow: 0 34px 60px -36px rgba(18, 39, 27, 0.5); }
.bh-post:hover::before { transform: scaleX(1); }
.bh-post.is-feature { grid-column: span 3; min-height: 340px; padding: 48px 46px 42px; background: radial-gradient(90% 90% at 85% 10%, #1f4a33 0%, #0b1a12 72%); color: var(--bh-ivory) !important; border-color: rgba(210, 169, 79, 0.3); }
.bh-post-meta { display: flex; gap: 14px; font: 600 12.5px/1 var(--bh-display); letter-spacing: 0.04em; color: #94701f; }
.bh-post.is-feature .bh-post-meta { color: #d9b257; }
.bh-post h3 { margin: 22px 0 12px; font-size: 22px !important; line-height: 1.25 !important; color: var(--bh-ink) !important; }
.bh-post.is-feature h3 { font-size: clamp(1.9rem, 3vw, 2.6rem) !important; color: #f7f1e4 !important; max-width: 20em; letter-spacing: -0.03em !important; }
.bh-post p { margin: 0; color: #56645a; font-size: 15.5px; line-height: 1.7; }
.bh-post.is-feature p { color: rgba(247, 241, 228, 0.78); font-size: 17px; max-width: 40em; }
.bh-post-cta { margin-top: auto; padding-top: 26px; font: 600 14.5px/1 var(--bh-sans); color: #94701f; display: inline-flex; gap: 10px; }
.bh-post-cta::after { content: "\2192"; transition: transform 0.45s var(--bh-ease-out); }
.bh-post:hover .bh-post-cta::after { transform: translateX(6px); }
.bh-post.is-feature .bh-post-cta { color: #f0d48a; }

/* article */
.bh-art-meta { margin: 0 0 18px; font: 600 13px/1 var(--bh-display); letter-spacing: 0.06em; color: #d9b257; text-align: center; }
.bh-art-title { margin: 0 auto 22px; max-width: 18em; font: 600 clamp(2.3rem, 4.4vw, 4rem)/1.08 var(--bh-display); letter-spacing: -0.035em; color: #f7f1e4; text-align: center; }
.bh-article { max-width: 760px !important; font: 400 18px/1.85 var(--bh-sans); color: #2f3d34; }
.bh-article h2, .bh-article h3 { font-family: var(--bh-display); font-weight: 600; letter-spacing: -0.025em; color: var(--bh-ink); line-height: 1.2; margin: 2.2em 0 0.7em; }
.bh-article h2 { font-size: 30px; } .bh-article h3 { font-size: 23px; }
.bh-article p { margin: 0 0 1.3em; }
.bh-article ul, .bh-article ol { padding-left: 1.3em; margin: 0 0 1.4em; }
.bh-article li { margin-bottom: 0.5em; }
.bh-article a { color: #94701f; text-decoration: underline; text-underline-offset: 3px; }
.bh-article blockquote { margin: 1.8em 0; padding: 4px 0 4px 26px; border-left: 3px solid #c9a24f; font: 500 22px/1.5 var(--bh-display); color: var(--bh-ink); }
.bh-art-back { max-width: 760px !important; margin-top: 50px !important; }

@media (max-width: 1024px) {
	.bh-calc { grid-template-columns: 1fr; }
	.bh-calc-out { position: relative; top: 0; }
	.bh-posts { grid-template-columns: 1fr 1fr; }
	.bh-post.is-feature { grid-column: span 2; }
}
@media (max-width: 640px) {
	.bh-posts { grid-template-columns: 1fr; }
	.bh-post.is-feature { grid-column: auto; padding: 32px 26px; }
	.bh-coa-list-w [data-coa-row] { flex-direction: column !important; align-items: stretch !important; }
	.bh-coa-list-w [data-bgl-doc] { justify-content: center; }
	.bh-calc-q, .bh-calc-out { padding: 24px 20px; }
}
.bh-light a.bh-b-ghost { color: #12271b !important; box-shadow: inset 0 0 0 1.5px #12271b !important; background: linear-gradient(#12271b, #12271b) left / 0% 100% no-repeat !important; }
.bh-light a.bh-b-ghost:hover { color: #f4e6bf !important; background: linear-gradient(#12271b, #12271b) left / 100% 100% no-repeat !important; }

/* =====================================================================
   PRODUCT CARD v4 (2026-10-27): one consistent card — photo, name, subtitle, price row with arrow.
   ===================================================================== */
.bh-pt-grid { gap: 22px !important; align-items: stretch; }
.bh-showcase .bh-pt-card, .bh-pt-card { display: flex !important; flex-direction: column; height: 100%; background: #fff !important; border: 1px solid rgba(18, 39, 27, 0.08) !important; border-radius: 16px !important; overflow: hidden !important; box-shadow: 0 1px 0 rgba(18, 39, 27, 0.03), 0 22px 44px -36px rgba(18, 39, 27, 0.45) !important; transition: transform 0.6s var(--bh-ease-out), box-shadow 0.6s var(--bh-ease-out), border-color 0.4s !important; }
.bh-showcase .bh-pt-card:hover, .bh-pt-card:hover { transform: translateY(-6px) !important; border-color: rgba(182, 139, 51, 0.55) !important; box-shadow: 0 36px 64px -36px rgba(18, 39, 27, 0.55) !important; }
.bh-pt-img { aspect-ratio: 1 / 0.92 !important; border-radius: 0 !important; box-shadow: none !important; background: #ececea !important; transform: none !important; }
.bh-pt-card:hover .bh-pt-img { transform: none !important; box-shadow: none !important; }
.bh-pt-card:hover .bh-pt-img img { transform: scale(1.05) !important; }
.bh-pt-body { flex: 1; display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 0 !important; padding: 20px 22px 20px !important; border-top: 1px solid rgba(18, 39, 27, 0.06); }
.bh-pt-name { flex: 1; min-height: 46px; font: 600 17px/1.3 var(--bh-display) !important; gap: 4px !important; }
.bh-pt-name em { font: 400 13.5px/1.35 var(--bh-sans) !important; color: #6b766e !important; }
.bh-pt-foot { display: flex; align-items: center; justify-content: space-between; margin-top: 16px; padding-top: 14px; border-top: 1px solid rgba(18, 39, 27, 0.08); }
.bh-pt-price { flex-direction: row !important; align-items: baseline !important; gap: 6px !important; font: 600 16px/1 var(--bh-display) !important; color: var(--bh-ink) !important; }
.bh-pt-price small { font: 500 12.5px/1 var(--bh-sans) !important; letter-spacing: 0 !important; text-transform: none !important; color: #6b766e !important; }
.bh-pt-foot > i { display: inline-flex !important; width: 36px; height: 36px; border-radius: 50%; align-items: center; justify-content: center; font-style: normal; font-size: 15px; border: 1.5px solid rgba(182, 139, 51, 0.6); color: #94701f; transition: background 0.4s, color 0.4s, border-color 0.4s, transform 0.5s var(--bh-ease-out); }
.bh-pt-card:hover .bh-pt-foot > i { background: #12271b; border-color: #12271b; color: #f0d48a; transform: translateX(3px); }
@media (max-width: 600px) {
	.bh-pt-body { padding: 14px 14px 14px !important; }
	.bh-pt-name { font-size: 15px !important; min-height: 40px; }
	.bh-pt-foot { margin-top: 10px; padding-top: 10px; }
	.bh-pt-foot > i { width: 30px; height: 30px; font-size: 13px; }
	.bh-pt-price { font-size: 14.5px !important; flex-wrap: wrap; }
}

/* =====================================================================
   SHELL (2026-10-27): theme-template pages (shop, product, cart, checkout, account, certificates, scan, 404)
   inside the redesign header/footer, re-themed through the theme's own variables.
   ===================================================================== */
body.bh-shell {
	--wp--preset--font-family--display: "Plus Jakarta Sans", "Inter", system-ui, sans-serif;
	--wp--preset--font-family--sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
	--wp--preset--font-family--mono: "Inter", system-ui, sans-serif;
	font-family: "Inter", system-ui, sans-serif;
	-webkit-font-smoothing: antialiased;
}
body.bh-shell .bgl-tw { --font-display: "Plus Jakarta Sans", "Inter", system-ui, sans-serif; --font-sans: "Inter", system-ui, sans-serif; --font-mono: "Inter", system-ui, sans-serif; }
body.bh-shell h1, body.bh-shell h2, body.bh-shell h3, body.bh-shell .font-display, body.bh-shell .wp-block-heading { font-family: "Plus Jakarta Sans", "Inter", system-ui, sans-serif !important; font-weight: 600 !important; letter-spacing: -0.025em !important; }
body.bh-shell .label-mono, body.bh-shell .font-mono { font-family: "Inter", system-ui, sans-serif !important; letter-spacing: 0.06em; }
/* header/footer from the redesign */
body.bh-shell .bh-shell-header { position: relative; height: 0; }
body.bh-shell .bh-header { background: #0a1810 !important; box-shadow: 0 1px 0 rgba(210, 169, 79, 0.18) !important; }
body.bh-shell main, body.bh-shell .wp-site-blocks > main { padding-top: var(--bh-header-h); }
body.bh-shell .bgl-site-header, body.bh-shell .bgl-site-ticker { position: static !important; display: contents; }
body.bh-shell .bh-shell-footer .bh-footer { margin-top: 0; }
body.bh-shell .wp-site-blocks { padding: 0 !important; }
/* the mini-cart block in the redesign header */
.bh-minicart-w .elementor-shortcode { display: flex; align-items: center; }
.bh-minicart .wc-block-mini-cart__button { width: 42px; height: 42px; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; color: rgba(247, 241, 228, 0.85) !important; background: transparent !important; transition: background 0.3s, color 0.3s; }
.bh-minicart .wc-block-mini-cart__button:hover { background: rgba(255, 255, 255, 0.06) !important; color: #fff !important; }
.bh-minicart .wc-block-mini-cart__icon { width: 20px !important; height: 20px !important; }
.bh-minicart .wc-block-mini-cart__badge { background: #d2a94f !important; color: #0e1f15 !important; font: 700 9.5px/1 var(--bh-sans) !important; min-width: 16px; height: 16px; border: 0 !important; }
.bh-minicart .wc-block-mini-cart__amount { display: none !important; }
body.bh-shell, body.bh-shell:has(.bh-page) { background: var(--wp--preset--color--background, #0d1f15) !important; color: var(--wp--preset--color--foreground) !important; }
body.bh-shell .bh-page { background: transparent; }

/* =====================================================================
   POLISH (2026-10-27): inner-page backgrounds, metallic gold everywhere, smaller cursor label.
   ===================================================================== */
:root {
	--bh-metal-btn: linear-gradient(135deg, #f7e7b4 0%, #e2c072 22%, #b98a33 48%, #e6c779 70%, #a97b28 100%);
	--bh-metal-ring: linear-gradient(135deg, #f4dfa0, #c49235 35%, #f7e6b0 55%, #a87b24 85%);
}
/* cursor: smaller "View" disc */
.bh-cursor-ring.has-label .bh-cr { transform: scale(1.55) !important; background: var(--bh-metal-btn) !important; }
.bh-cursor-ring.has-label .bh-cr span { transform: scale(0.62) !important; font-size: 11.5px; }

/* backgrounds: light bands get warmth + a faint gold glow, dark bands a green glow + one quiet gold arc */
.bh-light { background: radial-gradient(55% 45% at 100% 0%, rgba(201, 162, 79, 0.11), rgba(201, 162, 79, 0) 70%), radial-gradient(50% 45% at 0% 100%, rgba(30, 80, 52, 0.07), rgba(30, 80, 52, 0) 70%), #f6f1e6 !important; }
.bh-light + .bh-light { background: radial-gradient(50% 45% at 0% 0%, rgba(201, 162, 79, 0.09), rgba(201, 162, 79, 0) 70%), #f3eddf !important; }
.bh-dark2 { overflow: hidden; isolation: isolate; background: radial-gradient(60% 70% at 15% 40%, rgba(37, 84, 58, 0.55), rgba(37, 84, 58, 0) 70%), linear-gradient(180deg, #0d2216 0%, #0a1810 100%) !important; }
.bh-dark2::before { content: ""; position: absolute; z-index: -1; right: -220px; top: -220px; width: 560px; height: 560px; border-radius: 50%; border: 1px solid rgba(210, 169, 79, 0.18); box-shadow: inset 0 0 0 26px rgba(18, 59, 37, 0.55), inset 0 0 0 30px rgba(210, 169, 79, 0.28), 0 0 0 40px rgba(210, 169, 79, 0.05); pointer-events: none; }
.bh-phero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; z-index: 2; background: linear-gradient(90deg, transparent, rgba(210, 169, 79, 0.45), transparent); }
.bh-phero { background: radial-gradient(70% 90% at 50% 120%, rgba(31, 92, 60, 0.75), rgba(31, 92, 60, 0) 65%), linear-gradient(180deg, #08160e 0%, #0d2417 70%, #0f2a1b 100%) !important; }
.bh-ctaband { background: radial-gradient(70% 90% at 20% 50%, #1e4632 0%, #0b1a12 72%) !important; }

/* metallic gold: solid buttons + CTA pill + submit */
.bh-page .bh-btn:not(.bh-btn-ghost) .elementor-button, .bh-page a.bh-b:not(.bh-b-ghost), .bh-page button.bh-b, .bh-navcta { background: var(--bh-metal-btn) !important; background-size: 100% 100% !important; color: #10200f !important; box-shadow: inset 0 1px 0 rgba(255, 248, 220, 0.75), inset 0 -1px 0 rgba(110, 78, 18, 0.35), 0 10px 26px -14px rgba(169, 123, 40, 0.85) !important; }
.bh-page .bh-btn:not(.bh-btn-ghost) .elementor-button:hover, .bh-page a.bh-b:not(.bh-b-ghost):hover, .bh-page button.bh-b:hover, .bh-navcta:hover { background: var(--bh-metal-btn) !important; filter: brightness(1.06) saturate(1.05); }
/* metallic rings on round icons and arrows (gradient border via padding-box/border-box) */
.bh-icard-ico, .bh-tl-n, .bh-info li > svg, .bh-pillar-icon, .bh-res2-icon, .bh-inst-list li > span, .bh-pt-foot > i, .bh-car-btn, .bh-page .bh-cat-arrow, .bh-faq-item summary i, .bh-med-ring {
	border: 1.5px solid transparent !important;
	background-origin: border-box !important; background-clip: padding-box, border-box !important;
}
.bh-icard-ico, .bh-res2-icon { background-image: linear-gradient(#f5eedc, #f5eedc), var(--bh-metal-ring) !important; }
.bh-dark2 .bh-icard-ico { background-image: linear-gradient(#142c1f, #142c1f), var(--bh-metal-ring) !important; }
.bh-tl-n, .bh-pillar-icon, .bh-inst-list li > span { background-image: radial-gradient(circle at 35% 30%, #1f4430, #0d1d14 70%), var(--bh-metal-ring) !important; box-shadow: 0 16px 34px -22px rgba(0, 0, 0, 0.9) !important; }
.bh-info li > svg { background-image: linear-gradient(#123021, #123021), var(--bh-metal-ring) !important; }
.bh-pt-foot > i { background-image: linear-gradient(#fff, #fff), var(--bh-metal-ring) !important; }
.bh-faq-item summary i, .bh-car-btn, .bh-page .bh-cat-arrow { background-image: linear-gradient(#0f2419, #0f2419), var(--bh-metal-ring) !important; }
.bh-icard:hover .bh-icard-ico, .bh-res2-card:hover .bh-res2-icon, .bh-pt-card:hover .bh-pt-foot > i, .bh-faq-item[open] summary i, .bh-car-btn:hover:not(:disabled), .bh-inst-list li:hover > span { background-image: var(--bh-metal-btn), var(--bh-metal-ring) !important; color: #10200f !important; }
.bh-med-ring { background-image: radial-gradient(circle at 35% 30%, #1f4430, #0d1d14 70%), var(--bh-metal-ring) !important; }

/* shell (shop) pages: metallic primary buttons */
body.bh-shell .bg-primary, body.bh-shell .wp-element-button, body.bh-shell .wc-block-components-button:not(.is-link), body.bh-shell button[type="submit"].bg-primary, body.bh-shell .single_add_to_cart_button, body.bh-shell #place_order, body.bh-shell .checkout-button { background: var(--bh-metal-btn) !important; color: #10200f !important; border-color: transparent !important; box-shadow: inset 0 1px 0 rgba(255, 248, 220, 0.75), 0 10px 26px -14px rgba(169, 123, 40, 0.85) !important; }
body.bh-shell .bg-primary:hover, body.bh-shell .wp-element-button:hover, body.bh-shell .single_add_to_cart_button:hover, body.bh-shell #place_order:hover { filter: brightness(1.06); }
/* tap targets ≥ 40px on touch screens */
@media (pointer: coarse) {
	.bgl-check { position: relative; }
	.bgl-check::after { content: ""; position: absolute; inset: -12px; }
	.bgl-search__clear { min-width: 40px; min-height: 40px; }
	.bh-foot-col a { display: inline-block; padding: 8px 0; }
	.bh-foot-col li { margin-bottom: 4px !important; }
	.wc-block-mini-cart__drawer .wc-block-components-button { min-width: 40px; min-height: 40px; }
}

/* shop cards match the homepage product card; product-page Add to Cart is metallic */
body.bh-shell .bgl-pdp__add { background: var(--bh-metal-btn) !important; color: #10200f !important; border: 0 !important; box-shadow: inset 0 1px 0 rgba(255, 248, 220, 0.75), 0 12px 28px -14px rgba(169, 123, 40, 0.9) !important; font-family: "Inter", sans-serif !important; font-weight: 600 !important; letter-spacing: 0 !important; transition: filter 0.3s, transform 0.4s var(--bh-ease-out) !important; }
body.bh-shell .bgl-pdp__add:hover { filter: brightness(1.06); transform: translateY(-1px); }
body.bh-shell .bgl-card { background: #fff !important; border: 1px solid rgba(210, 169, 79, 0.18) !important; border-radius: 16px !important; overflow: hidden; box-shadow: 0 22px 44px -36px rgba(0, 0, 0, 0.8) !important; transition: transform 0.6s var(--bh-ease-out), box-shadow 0.6s, border-color 0.4s !important; }
body.bh-shell .bgl-card:hover { transform: translateY(-6px) !important; border-color: rgba(210, 169, 79, 0.6) !important; box-shadow: 0 36px 64px -36px rgba(0, 0, 0, 0.9) !important; }
body.bh-shell .bgl-card__media { background: #ececea !important; padding: 0 !important; border-radius: 0 !important; }
body.bh-shell .bgl-card__img, body.bh-shell .bgl-card__img img { border-radius: 0 !important; }
body.bh-shell .bgl-card__purity { background: rgba(255, 255, 255, 0.92) !important; color: #5f6b63 !important; border-radius: 999px !important; font: 600 10.5px/1 "Inter", sans-serif !important; letter-spacing: 0.04em !important; }
body.bh-shell .bgl-card__body { background: #fff !important; padding: 18px 20px 16px !important; }
body.bh-shell .bgl-card__name { font: 600 17px/1.3 "Plus Jakarta Sans", sans-serif !important; text-transform: none !important; letter-spacing: -0.015em !important; color: #0b1a12 !important; }
body.bh-shell .bgl-card__badge { font: 400 13.5px/1.35 "Inter", sans-serif !important; color: #6b766e !important; text-transform: none !important; letter-spacing: 0 !important; }
body.bh-shell .bgl-card__foot { border-top: 1px solid rgba(18, 39, 27, 0.08); margin-top: 14px !important; padding-top: 12px !important; }
body.bh-shell .bgl-card__price { font: 600 16px/1 "Plus Jakarta Sans", sans-serif !important; color: #0b1a12 !important; }
body.bh-shell .bgl-card__coa { font: 500 11px/1 "Inter", sans-serif !important; color: #94701f !important; }
body.bh-shell .bgl-card__add { background: #12271b !important; color: #f0d48a !important; font: 600 13.5px/1 "Inter", sans-serif !important; letter-spacing: 0.02em !important; text-transform: none !important; border: 0 !important; border-radius: 0 !important; transition: background 0.3s !important; }
body.bh-shell .bgl-card__add:hover { background: #1b3a29 !important; }
body.bh-shell h2.font-display, body.bh-shell .bgl-pdp h2 { text-transform: none !important; }

/* ===== v13 — nav dropdown, CTA panel → footer, staff login ===== */
/* dropdown: every state stays dark with light text (Elementor adds .highlighted / active / focus states) */
.bh-nav .sub-menu a.elementor-sub-item,
.bh-nav .sub-menu a.elementor-sub-item.highlighted,
.bh-nav .sub-menu a.elementor-sub-item.elementor-item-active,
.bh-nav .sub-menu a.elementor-sub-item:focus { background: transparent !important; color: rgba(247, 241, 228, 0.86) !important; }
.bh-nav .sub-menu a.elementor-sub-item:hover,
.bh-nav .sub-menu a.elementor-sub-item:focus-visible { background: rgba(210, 169, 79, 0.14) !important; color: #f0d48a !important; }
.bh-nav .sub-menu a.elementor-sub-item.elementor-item-active { color: #f0d48a !important; }
.bh-nav .elementor-nav-menu--dropdown a:hover,
.bh-nav .elementor-nav-menu--dropdown a:focus,
.bh-nav .elementor-nav-menu--dropdown a.highlighted,
.bh-nav .elementor-nav-menu--dropdown a.elementor-item-active { background: rgba(210, 169, 79, 0.14) !important; color: #f0d48a !important; }

/* closing CTA: a contained panel straddling the page and the footer, so the two read as one ending */
.bh-ctaband { --bh-band-top: #0a1810; background: linear-gradient(180deg, var(--bh-band-top) 0 50%, #08130d 50% 100%) !important; padding-block: clamp(70px, 8vw, 110px) 0 !important; overflow: visible !important; contain: none !important; }
.bh-light + .bh-ctaband { --bh-band-top: #f4eee1; }
.bh-ctaband > .bh-ctaband-inner { position: relative; isolation: isolate; overflow: hidden; border-radius: 28px; padding: clamp(40px, 5vw, 72px) clamp(28px, 5vw, 76px) !important; background: radial-gradient(80% 120% at 0% 0%, #1f4a34 0%, #12291c 45%, #0c1d14 100%) !important; box-shadow: 0 40px 80px -40px rgba(0, 0, 0, 0.65); }
.bh-ctaband > .bh-ctaband-inner::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1px; background: linear-gradient(135deg, rgba(227, 192, 110, 0.65), rgba(227, 192, 110, 0.08) 40%, rgba(227, 192, 110, 0.4)); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }
.bh-ctaband > .bh-ctaband-inner::after { content: ""; position: absolute; right: -120px; top: -160px; width: 420px; height: 420px; border-radius: 50%; z-index: -1; background: radial-gradient(circle, rgba(210, 169, 79, 0.22), rgba(210, 169, 79, 0) 65%); pointer-events: none; }
.bh-band-arcs { display: none !important; }
/* footer continues the CTA's base colour, no seam line */
.bh-footer::before { display: none !important; }
.bh-footer { background: var(--bh-rings), radial-gradient(70% 80% at 90% 100%, #163322 0%, #08130d 60%) !important; }
.bh-ctaband + .bh-footer, .bh-ctaband ~ * .bh-footer { padding-top: clamp(80px, 8vw, 120px) !important; }

/* footer bottom bar: staff login sits apart, on its own, right */
.bh-footer-bottom { align-items: center !important; }
.bh-staff-w { margin-left: auto !important; }
a.bh-staff { display: inline-flex; align-items: center; gap: 9px; padding: 9px 16px 9px 14px; border-radius: 999px; font: 600 12.5px/1 var(--bh-sans); letter-spacing: 0.06em; text-transform: uppercase; color: #e9cf8a !important; background: rgba(210, 169, 79, 0.06); box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.45); transition: background 0.3s, color 0.3s, box-shadow 0.3s; }
a.bh-staff:hover { background: rgba(210, 169, 79, 0.16); color: #f7e2a6 !important; box-shadow: inset 0 0 0 1px rgba(227, 192, 110, 0.85); }
@media (max-width: 760px) { .bh-staff-w { margin-left: 0 !important; width: 100%; } }
.bh-ctaband { margin-bottom: -2px !important; padding-top: clamp(40px, 5vw, 70px) !important; }
.bh-footer { background-color: #08130d !important; }
.bh-ctaband .bh-ctas { flex: 0 0 auto !important; width: auto !important; justify-content: flex-end !important; align-self: center; }
.bh-ctaband > .bh-ctaband-inner { align-items: center !important; }
@media (max-width: 1024px) { .bh-ctaband .bh-ctas { justify-content: flex-start !important; align-self: flex-start; } }

/* ===== v13 — FAQ: fixed width, smooth (JS) open/close, one-flow FAQ page ===== */
.bh-faq-narrow, .bh-faq-narrow > .elementor-widget-container, .bh-faq, .bh-faq-item { width: 100% !important; }
.bh-faq-narrow { max-width: 860px !important; margin-inline: auto !important; align-self: center !important; }
.bh-faq-item { display: block; }
.bh-faq-item.is-closing summary i { background-image: linear-gradient(#0f2419, #0f2419), var(--bh-metal-ring) !important; transform: none; }
.bh-faq-item.is-closing summary i::before, .bh-faq-item.is-closing summary i::after { background: var(--bh-gold-2); }
.bh-faq-item.is-closing summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.bh-faq-item.is-closing .bh-faq-a { opacity: 0; transition: opacity 0.25s; }
.bh-faq-item summary span { flex: 1; min-width: 0; }
.bh-faq-a p { max-width: 62ch; }

.bh-faqx { background: linear-gradient(180deg, #0d2216 0%, #0b1c13 40%, #0a1810 100%) !important; color: var(--bh-ivory); padding-top: clamp(30px, 4vw, 60px) !important; }
.bh-faqx-grid { display: grid !important; grid-template-columns: 270px minmax(0, 1fr); gap: clamp(40px, 6vw, 110px) !important; align-items: start; }
.bh-faqx-side { position: sticky !important; top: 120px; }
.bh-faqx-nav p { margin: 0 0 18px; font: 600 12.5px/1 var(--bh-sans); letter-spacing: 0.16em; text-transform: uppercase; color: #d9b257; }
.bh-faqx-nav a { display: flex; align-items: center; gap: 14px; padding: 13px 0; border-top: 1px solid rgba(210, 169, 79, 0.14); color: rgba(247, 241, 228, 0.6); font: 500 15px/1.3 var(--bh-sans); transition: color 0.3s; }
.bh-faqx-nav a span { width: 30px; font: 500 13px/1 var(--bh-caps); color: rgba(217, 178, 87, 0.55); transition: color 0.3s; }
.bh-faqx-nav a em { margin-left: auto; font-style: normal; font-size: 12px; color: rgba(247, 241, 228, 0.35); }
.bh-faqx-nav a:hover, .bh-faqx-nav a.is-on { color: #f7f1e4; }
.bh-faqx-nav a.is-on span { color: #e9cf8a; }
.bh-faqx-nav a.is-on { box-shadow: inset 2px 0 0 #d2a94f; padding-left: 14px; }
.bh-faqx-nav a { transition: color 0.3s, padding 0.4s var(--bh-ease-out), box-shadow 0.4s; }
.bh-faqx-help { margin-top: 30px; padding: 22px; border-radius: 16px; background: rgba(255, 255, 255, 0.03); box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.2); }
.bh-faqx-help b { display: block; font: 600 16px/1.3 var(--bh-display); color: #f7f1e4; margin-bottom: 8px; }
.bh-faqx-help a { padding: 0; border: 0; color: #e9cf8a; font-weight: 600; box-shadow: none !important; }
.bh-faqx-group { scroll-margin-top: 110px; }
.bh-faqx-group + .bh-faqx-group { margin-top: clamp(60px, 7vw, 100px); }
.bh-faqx-group h2 { display: flex; align-items: baseline; gap: 18px; margin: 0 0 22px; font: 600 clamp(1.6rem, 2.4vw, 2.1rem)/1.15 var(--bh-display); letter-spacing: -0.025em; color: #f7f1e4; }
.bh-faqx-group h2 span { font: 500 0.75em/1 var(--bh-caps); color: #d2a94f; letter-spacing: 0.04em; }
.bh-faqx .bh-faq-item summary { padding: 24px 0 !important; }
@media (max-width: 900px) {
	.bh-faqx-grid { grid-template-columns: 1fr; }
	.bh-faqx-side { position: relative !important; top: 0; }
	.bh-faqx-nav { display: flex; flex-wrap: wrap; gap: 8px; }
	.bh-faqx-nav p, .bh-faqx-help { width: 100%; }
	.bh-faqx-nav a { border: 0; padding: 9px 14px !important; border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.25) !important; font-size: 14px; }
	.bh-faqx-nav a em, .bh-faqx-help { display: none; }
	.bh-faqx-nav a span { width: auto; }
}
.bh-page.bh-inner { background-color: #0a1810; }
.bh-phero:has(+ .bh-faqx)::after { display: none; }
.bh-ctaband .bh-ctas { margin-left: auto !important; }

/* ===== v13 — ABOUT ===== */
/* manifesto: words light up as you scroll */
.bh-manifesto { background: linear-gradient(180deg, #0d2216 0%, #0a1810 100%) !important; color: var(--bh-ivory); }
.bh-manifesto-inner { max-width: 1100px; margin-inline: auto !important; text-align: center; }
.bh-manifesto-inner .bh-eyebrow .elementor-heading-title { text-align: center; }
.bh-manifesto-text { margin: 26px 0 0; font: 600 clamp(1.9rem, 3.9vw, 3.6rem)/1.22 var(--bh-display); letter-spacing: -0.03em; text-wrap: balance; }
.bh-manifesto-text span { color: rgba(247, 241, 228, 0.16); transition: color 0.5s ease; }
.bh-manifesto-text span.is-lit { color: #f7f1e4; }
.bh-manifesto-text span.is-lit:nth-child(n+30):nth-child(-n+32) { color: #e3c06e; }

/* the Becker code: cards stack as you scroll (sticky, no JS) */
.bh-code { display: grid; gap: 28px; margin-top: 60px; }
.bh-code-card { position: sticky; top: calc(110px + var(--i) * 22px); display: grid; grid-template-columns: minmax(180px, 0.42fr) minmax(0, 1fr); gap: clamp(30px, 5vw, 80px); align-items: center; min-height: 380px; padding: clamp(36px, 5vw, 64px); border-radius: 26px; color: var(--bh-ivory); background: radial-gradient(90% 120% at 0% 0%, #1d4430 0%, #10261a 50%, #0b1a12 100%); box-shadow: 0 -1px 0 rgba(227, 192, 110, 0.35) inset, 0 40px 80px -40px rgba(8, 20, 13, 0.7); overflow: hidden; }
.bh-code-card::after { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1px; background: linear-gradient(140deg, rgba(227, 192, 110, 0.6), rgba(227, 192, 110, 0.06) 45%, rgba(227, 192, 110, 0.3)); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }
.bh-code-num span { display: block; font: 500 clamp(5rem, 11vw, 9.5rem)/0.9 var(--bh-caps); background: linear-gradient(160deg, #fbeab8 0%, #d9b257 35%, #8a6420 70%, #e9cf86 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bh-code-num em { display: block; margin-top: 18px; font: 600 13px/1 var(--bh-sans); font-style: normal; letter-spacing: 0.22em; text-transform: uppercase; color: #d9b257; }
.bh-code-body h3 { margin: 0 0 16px; font: 600 clamp(1.7rem, 2.8vw, 2.5rem)/1.12 var(--bh-display) !important; letter-spacing: -0.03em; color: #f7f1e4 !important; }
.bh-code-body p { margin: 0 0 24px; max-width: 40em; color: rgba(247, 241, 228, 0.74); font-size: 16.5px; line-height: 1.75; }
.bh-code-body ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.bh-code-body li { padding: 9px 16px; border-radius: 999px; font-size: 14px; color: #f0dca4; background: rgba(210, 169, 79, 0.08); box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.3); }

/* journey: three stops, the gold line fills on scroll */
.bh-journey { --p: 0; position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; margin-top: 70px; }
.bh-journey-line { position: absolute; left: 16.66%; right: 16.66%; top: 13px; height: 2px; background: rgba(210, 169, 79, 0.18); }
.bh-journey-line i { position: absolute; inset: 0; background: linear-gradient(90deg, #b8872e, #fbeab8, #d2a94f); transform-origin: left; transform: scaleX(var(--p)); }
.bh-journey-stop { position: relative; text-align: center; padding: 0 10px; }
.bh-journey-dot { display: block; width: 28px; height: 28px; margin: 0 auto 30px; border-radius: 50%; background: #0d2216; box-shadow: inset 0 0 0 2px rgba(210, 169, 79, 0.4); transition: box-shadow 0.6s, background 0.6s; position: relative; }
.bh-journey-stop.is-on .bh-journey-dot { background: radial-gradient(circle, #fbeab8 0 4px, #d2a94f 5px 7px, #0d2216 8px); box-shadow: inset 0 0 0 2px #e3c06e, 0 0 0 8px rgba(210, 169, 79, 0.1); }
.bh-journey-stop b { display: block; font: 600 12.5px/1 var(--bh-sans); letter-spacing: 0.16em; text-transform: uppercase; color: #d9b257; }
.bh-journey-stop h3 { margin: 14px 0 10px; font: 600 26px/1.2 var(--bh-display) !important; letter-spacing: -0.02em; }
.bh-journey-stop p { margin: 0 auto; max-width: 22em; color: rgba(247, 241, 228, 0.7); line-height: 1.7; }
.bh-center-ctas { justify-content: center !important; margin-top: 56px !important; }

/* numbers */
.bh-numbers-sec { padding-block: clamp(70px, 8vw, 110px) 0 !important; }
.bh-numbers { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(148, 112, 31, 0.3); border-bottom: 1px solid rgba(148, 112, 31, 0.3); }
.bh-numbers > div { padding: 40px 28px; }
.bh-numbers > div + div { border-left: 1px solid rgba(148, 112, 31, 0.2); }
.bh-numbers b { display: block; font: 600 clamp(2.6rem, 4.6vw, 4.2rem)/1 var(--bh-display); letter-spacing: -0.04em; color: #12271b; }
.bh-numbers span { display: block; margin-top: 14px; color: #5b675f; font-size: 15px; }

/* who we work with */
.bh-who { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; margin-top: 56px; }
.bh-who-tile { padding: 30px 24px; border-radius: 18px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); transition: transform 0.6s var(--bh-ease-out), box-shadow 0.6s, border-color 0.5s; }
.bh-who-tile:hover { transform: translateY(-6px); border-color: rgba(182, 139, 51, 0.5); box-shadow: 0 30px 60px -36px rgba(18, 39, 27, 0.45); }
.bh-who-tile h3 { margin: 0 0 10px; font: 600 19px/1.25 var(--bh-display) !important; color: var(--bh-ink) !important; letter-spacing: -0.015em; }
.bh-who-tile p { margin: 0; font-size: 14.5px; line-height: 1.65; color: #56645a; }

/* pledge */
.bh-pledge-box { position: relative; margin: 0 auto; max-width: 980px; text-align: center; }
.bh-pledge-box img { display: block; width: 92px; height: 92px; object-fit: contain; margin: 0 auto 34px; filter: drop-shadow(0 18px 30px rgba(0, 0, 0, 0.5)); }
.bh-pledge-box blockquote { margin: 0; font: 600 clamp(1.8rem, 3.6vw, 3.2rem)/1.22 var(--bh-display); letter-spacing: -0.03em; color: #f7f1e4; text-wrap: balance; }
.bh-pledge-box figcaption { margin-top: 30px; font: 500 14px/1 var(--bh-caps); letter-spacing: 0.24em; text-transform: uppercase; color: #d9b257; }

@media (max-width: 1100px) { .bh-who { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 860px) {
	.bh-code-card { grid-template-columns: 1fr; min-height: 0; top: calc(90px + var(--i) * 14px); }
	.bh-code-num span { font-size: 4.2rem; }
	.bh-journey { grid-template-columns: 1fr; gap: 46px; }
	.bh-journey-line { left: 50%; right: auto; top: 14px; bottom: 60px; width: 2px; height: auto; }
	.bh-journey-line i { transform-origin: top; transform: scaleY(var(--p)); }
	.bh-journey-stop { background: #0c1e14; padding: 0 0 6px; }
	.bh-numbers { grid-template-columns: 1fr 1fr; }
	.bh-numbers > div:nth-child(3) { border-left: 0; }
	.bh-numbers > div:nth-child(n+3) { border-top: 1px solid rgba(148, 112, 31, 0.2); }
	.bh-who { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px) { .bh-who { grid-template-columns: 1fr; } .bh-numbers > div { padding: 28px 16px; } }

/* ===== v13 — CONTACT ===== */
.bh-routes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 56px; }
.bh-route { position: relative; padding: 36px 32px 34px; border-radius: 20px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); box-shadow: 0 24px 50px -40px rgba(18, 39, 27, 0.4); transition: transform 0.6s var(--bh-ease-out), border-color 0.5s, box-shadow 0.6s; }
.bh-route:hover { transform: translateY(-6px); border-color: rgba(182, 139, 51, 0.5); box-shadow: 0 34px 60px -36px rgba(18, 39, 27, 0.45); }
.bh-route-n { position: absolute; top: 30px; right: 32px; font: 500 14px/1 var(--bh-caps); letter-spacing: 0.12em; color: rgba(148, 112, 31, 0.6); }
.bh-route h3 { margin: 0 0 10px; font: 600 22px/1.2 var(--bh-display) !important; letter-spacing: -0.02em; color: var(--bh-ink) !important; }
.bh-route p { margin: 0; color: #56645a; font-size: 15.5px; line-height: 1.7; }
.bh-route .bh-route-k { margin: 22px 0 10px; padding-top: 20px; border-top: 1px solid rgba(18, 39, 27, 0.08); font: 600 12px/1 var(--bh-sans); letter-spacing: 0.14em; text-transform: uppercase; color: #94701f; }
.bh-route ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.bh-route li { position: relative; padding-left: 22px; font-size: 14.5px; color: #3f4c44; }
.bh-route li::before { content: ""; position: absolute; left: 0; top: 0.62em; width: 10px; height: 1.5px; background: #c9a24f; }
.bh-contact-sec { padding-top: 0 !important; }
.bh-form-title { margin: 0 0 8px; font: 600 clamp(1.7rem, 2.6vw, 2.2rem)/1.15 var(--bh-display); letter-spacing: -0.03em; color: var(--bh-ink); }
.bh-form-sub { margin: 0 0 26px; color: #5b675f; font-size: 15px; }
.bh-next { margin-top: 34px; padding-top: 30px; border-top: 1px solid rgba(210, 169, 79, 0.2); }
.bh-next .bh-side-title { font-size: 20px; margin-bottom: 18px; }
.bh-next ol { list-style: none; margin: 0; padding: 0; counter-reset: n; display: grid; gap: 16px; }
.bh-next li { counter-increment: n; position: relative; padding-left: 44px; color: rgba(247, 241, 228, 0.68); font-size: 14.5px; line-height: 1.6; }
.bh-next li::before { content: counter(n); position: absolute; left: 0; top: 0; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; font: 600 13px/1 var(--bh-sans); color: #e3c06e; box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.5); }
.bh-next b { display: block; color: #f7f1e4; font-weight: 600; margin-bottom: 2px; }
@media (max-width: 900px) { .bh-routes { grid-template-columns: 1fr; } }

/* ===== v13 — QUALITY: certificate anatomy + filling timeline ===== */
.bh-anat { display: grid !important; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(40px, 6vw, 100px) !important; align-items: center; }
.bh-anat-notes { list-style: none; margin: 34px 0 0; padding: 0; display: grid; gap: 22px; }
.bh-anat-notes li { display: flex; gap: 18px; }
.bh-anat-notes li > span, .bh-pin { flex: none; width: 30px; height: 30px; border-radius: 50%; display: inline-grid; place-items: center; font: 600 13px/1 var(--bh-sans); font-style: normal; color: #10200f; background: var(--bh-metal-btn, linear-gradient(135deg, #f3d98f, #b8872e)); box-shadow: 0 6px 14px -6px rgba(148, 112, 31, 0.7); }
.bh-anat-notes h3 { margin: 2px 0 6px; font: 600 19px/1.25 var(--bh-display) !important; color: var(--bh-ink) !important; letter-spacing: -0.015em; }
.bh-anat-notes p { margin: 0; color: #56645a; font-size: 15px; line-height: 1.65; }
.bh-anat-doc { position: relative; display: block; padding: 34px 34px 28px; border-radius: 18px; background: #fffdf8; color: #1b2a21; border: 1px solid rgba(148, 112, 31, 0.25); box-shadow: 0 50px 90px -50px rgba(18, 39, 27, 0.55), 0 0 0 10px rgba(255, 255, 255, 0.5); transform: rotate(-1.2deg); transition: transform 0.7s var(--bh-ease-out), box-shadow 0.7s; }
.bh-anat-doc:hover { transform: rotate(0) translateY(-6px); }
.bh-anat-head { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: 16px; border-bottom: 2px solid #12271b; }
.bh-anat-head b { font: 600 20px/1.2 var(--bh-display); letter-spacing: -0.02em; }
.bh-anat-head span { font: 600 11px/1 var(--bh-caps); letter-spacing: 0.18em; text-transform: uppercase; color: #94701f; }
.bh-anat-meta { position: relative; display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 14px; padding: 16px 0; border-bottom: 1px solid rgba(18, 39, 27, 0.1); font-size: 14px; font-weight: 600; }
.bh-anat-meta small { display: block; margin-bottom: 4px; font: 600 10.5px/1 var(--bh-sans); letter-spacing: 0.14em; text-transform: uppercase; color: #7b857e; }
.bh-anat-table { width: 100%; border-collapse: collapse; margin-top: 6px; font-size: 13.5px; }
.bh-anat-table th, .bh-anat-table td { text-align: left; padding: 10px 6px; border-bottom: 1px solid rgba(18, 39, 27, 0.07); }
.bh-anat-table thead th { font: 600 10.5px/1 var(--bh-sans); letter-spacing: 0.14em; text-transform: uppercase; color: #7b857e; }
.bh-anat-table tbody th { font-weight: 600; }
.bh-anat-table td:last-child { font-weight: 600; color: #1d5a3a; }
.bh-anat-foot { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-top: 16px; font-size: 13px; color: #56645a; }
.bh-anat-ok { padding: 6px 12px; border-radius: 999px; background: #e7f1ea; color: #1d5a3a; font-weight: 600; }
.bh-pin { position: absolute; width: 26px; height: 26px; font-size: 12px; }
.bh-anat-meta .bh-pin { left: -48px; top: 16px; }
.bh-pin-2 { left: -13px; top: 172px; }
.bh-pin-3 { left: -13px; top: 254px; }
.bh-pin-4 { left: -13px; top: 296px; }
.bh-anat-foot .bh-pin { left: -48px; top: 14px; }
.bh-anat-cap { margin: 26px 0 0; text-align: center; font-size: 14px; color: #5b675f; }
.bh-anat-cap a { color: #94701f; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.bh-timeline[data-bh-line] { --p: 0; }
.bh-timeline[data-bh-line]::after { content: ""; position: absolute; left: 31px; top: 20px; bottom: 20px; width: 2px; margin-left: -0.5px; background: linear-gradient(#fbeab8, #d2a94f); transform-origin: top; transform: scaleY(var(--p)); }
.bh-timeline[data-bh-line] .bh-tl-n { z-index: 2; transition: box-shadow 0.6s, color 0.6s; }
.bh-timeline[data-bh-line] li.is-on .bh-tl-n { color: #10200f; background: var(--bh-metal-btn, #d2a94f) !important; box-shadow: 0 0 0 8px rgba(210, 169, 79, 0.12); }
@media (max-width: 900px) {
	.bh-anat { grid-template-columns: 1fr; }
	.bh-pin-2, .bh-pin-3, .bh-pin-4 { display: none; }
	.bh-anat-meta .bh-pin, .bh-anat-foot .bh-pin { display: none; }
	.bh-anat-doc { padding: 24px 20px; transform: none; }
	.bh-anat-meta { grid-template-columns: 1fr 1fr; }
}
.bh-contact-in { margin-top: clamp(70px, 8vw, 110px) !important; }
.bh-anat-table tbody th { position: relative; }
.bh-pin.bh-pin-row { left: -47px; top: 50%; transform: translateY(-50%); }
@media (max-width: 900px) { .bh-pin.bh-pin-row { display: none; } }

/* ===== v13 — JOURNAL + ARTICLES ===== */
.bh-cover { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 210px; padding: 26px 28px; overflow: hidden; color: #f7f1e4; background: radial-gradient(120% 90% at 100% 0%, #285c40 0%, #12291c 45%, #0a1810 100%); }
.bh-cover::before { content: ""; position: absolute; right: -90px; top: -90px; width: 300px; height: 300px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(227, 192, 110, 0.35), 0 0 0 26px rgba(227, 192, 110, 0.04), 0 0 0 27px rgba(227, 192, 110, 0.22); transition: transform 1s var(--bh-ease-out); }
.bh-cover::after { content: ""; position: absolute; inset: 0; background: var(--bh-helmet) right 22px bottom 18px / 54px no-repeat; opacity: 0.18; }
.bh-cover em { font: 500 13px/1 var(--bh-caps); font-style: normal; letter-spacing: 0.2em; color: #d9b257; }
.bh-cover b { font: 500 clamp(3.6rem, 6vw, 5rem)/1 var(--bh-caps); background: linear-gradient(160deg, #fbeab8 0%, #d9b257 40%, #8a6420 75%, #e9cf86 100%); -webkit-background-clip: text; background-clip: text; color: transparent; margin-top: 6px; }
.bh-cover > span { margin-top: 10px; font: 600 11.5px/1 var(--bh-sans); letter-spacing: 0.18em; text-transform: uppercase; color: rgba(247, 241, 228, 0.6); }
.bh-post:hover .bh-cover::before { transform: scale(1.08) rotate(8deg); }

.bh-posts .bh-post { padding: 0 !important; min-height: 0; overflow: hidden; border-radius: 20px; background: #fff !important; color: var(--bh-ink) !important; border-color: rgba(18, 39, 27, 0.08) !important; }
.bh-post-body { display: flex; flex-direction: column; flex: 1; padding: 26px 28px 28px; }
.bh-post-meta { flex-wrap: wrap; gap: 10px 14px !important; font: 500 13px/1 var(--bh-sans) !important; color: #7b857e !important; letter-spacing: 0 !important; }
.bh-post-cat { color: #94701f; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; font-size: 11.5px; }
.bh-posts .bh-post h3 { margin: 16px 0 10px; font: 600 21px/1.25 var(--bh-display) !important; letter-spacing: -0.02em !important; color: var(--bh-ink) !important; }
.bh-posts .bh-post p { color: #56645a !important; font-size: 15px !important; }
.bh-posts .bh-post .bh-post-cta { color: #94701f !important; }
.bh-posts .bh-post.is-feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-column: 1 / -1; }
.bh-post.is-feature .bh-cover { min-height: 400px; padding: 44px; }
.bh-post.is-feature .bh-cover b { font-size: clamp(6rem, 11vw, 9rem); }
.bh-post.is-feature .bh-post-body { justify-content: center; padding: clamp(32px, 4vw, 60px); }
.bh-posts .bh-post.is-feature h3 { font-size: clamp(1.8rem, 2.8vw, 2.5rem) !important; letter-spacing: -0.03em !important; }
.bh-posts .bh-post.is-feature p { font-size: 16.5px !important; }
.bh-posts .bh-post.is-feature .bh-post-cta { margin-top: 30px; padding-top: 0; }
.bh-posts-2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }

.bh-progress { position: fixed; left: 0; right: 0; top: 0; height: 3px; z-index: 10000; pointer-events: none; }
.bh-progress i { display: block; height: 100%; background: linear-gradient(90deg, #b8872e, #fbeab8, #d2a94f); transform-origin: left; transform: scaleX(0); }
.bh-art-issue { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 0 0 18px; font: 600 12.5px/1 var(--bh-sans); letter-spacing: 0.18em; text-transform: uppercase; color: #d9b257; }
.bh-art-issue i { width: 28px; height: 1px; background: rgba(217, 178, 87, 0.6); }
.bh-art-hero .bh-art-title { margin: 0 0 22px; font: 600 clamp(2.3rem, 4.4vw, 4rem)/1.08 var(--bh-display); letter-spacing: -0.035em; color: #f7f1e4; text-wrap: balance; }
.bh-art-grid { display: grid !important; grid-template-columns: 220px minmax(0, 760px); justify-content: center; gap: clamp(40px, 6vw, 90px); }
.bh-art-side { position: sticky; top: 120px; align-self: start; }
.bh-art-side dl { margin: 0; display: grid; gap: 18px; }
.bh-art-side dt { font: 600 11px/1 var(--bh-sans); letter-spacing: 0.16em; text-transform: uppercase; color: #94701f; margin-bottom: 6px; }
.bh-art-side dd { margin: 0; font-size: 15px; color: var(--bh-ink); font-weight: 500; }
.bh-art-side dl > div { padding-bottom: 16px; border-bottom: 1px solid rgba(18, 39, 27, 0.1); }
.bh-art-all { display: inline-block; margin-top: 24px; font-weight: 600; font-size: 14.5px; color: #94701f; }
.bh-article { max-width: none !important; margin: 0 !important; }
.bh-article > p:first-of-type::first-letter { float: left; margin: 0.06em 0.12em 0 0; font: 500 4.4em/0.8 var(--bh-caps); color: #a87d26; }
.bh-art-note { margin-top: 2.6em !important; padding-top: 1.4em; border-top: 1px solid rgba(18, 39, 27, 0.12); font-size: 14px !important; color: #7b857e; }
.bh-art-more { padding-top: 0 !important; }
.bh-art-more-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 30px; padding-top: 60px; border-top: 1px solid rgba(18, 39, 27, 0.1); }
.bh-art-more-head h2 { margin: 0; font: 600 clamp(1.7rem, 2.6vw, 2.2rem)/1.15 var(--bh-display); letter-spacing: -0.03em; color: var(--bh-ink); }
.bh-art-more-head a { color: #94701f; font-weight: 600; }
.bh-art-cta-title { margin: 0; font: 600 clamp(1.9rem, 3.2vw, 2.8rem)/1.1 var(--bh-display); letter-spacing: -0.03em; color: #f7f1e4; }
.bh-art-cta-text { margin: 16px 0 0; color: rgba(247, 241, 228, 0.78); }
.bh-ctaband .bh-ctas a.bh-b { white-space: nowrap; }
@media (max-width: 900px) {
	.bh-posts .bh-post.is-feature { grid-template-columns: 1fr; }
	.bh-post.is-feature .bh-cover { min-height: 240px; padding: 28px; }
	.bh-art-grid { grid-template-columns: 1fr; }
	.bh-art-side { position: relative; top: 0; }
	.bh-art-side dl { grid-template-columns: 1fr 1fr; }
	.bh-posts-2 { grid-template-columns: 1fr !important; }
}
/* sub-pixel seams between stacked sections (the page base colour showed through as a hairline) */
.bh-inner > .bh-section + .bh-section, .bh-inner > .e-con > .bh-section + .bh-section, .bh-section + .bh-section { margin-top: -1px !important; }
.bh-light + .bh-ctaband { --bh-band-top: #f6f1e6; }

/* ===== v13 — CERTIFICATE LIBRARY: grouped grid ===== */
.bh-cg-bar { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; margin: 30px 0 34px; }
.bh-cg-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.bh-cg-filters button { appearance: none; border: 0; cursor: pointer; padding: 10px 18px; border-radius: 999px; font: 600 13.5px/1 var(--bh-sans); color: #2f3d34; background: #fff; box-shadow: inset 0 0 0 1px rgba(18, 39, 27, 0.12); transition: background 0.3s, color 0.3s, box-shadow 0.3s; }
.bh-cg-filters button:hover { box-shadow: inset 0 0 0 1px #c9a24f; }
.bh-cg-filters button.is-on { background: #12271b; color: #f0d48a; box-shadow: none; }
.bh-cg-count { margin: 0; font-size: 14px; color: #6b766e; }
.bh-cg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; }
.bh-cg-card { display: flex; flex-direction: column; border-radius: 20px; overflow: hidden; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); box-shadow: 0 24px 50px -42px rgba(18, 39, 27, 0.45); transition: transform 0.6s var(--bh-ease-out), box-shadow 0.6s, border-color 0.5s; }
.bh-cg-card[hidden] { display: none; }
.bh-cg-card:hover { transform: translateY(-5px); border-color: rgba(182, 139, 51, 0.45); box-shadow: 0 34px 60px -38px rgba(18, 39, 27, 0.5); }
.bh-cg-top { position: relative; display: block; aspect-ratio: 4 / 3; background: radial-gradient(80% 80% at 50% 40%, #fbf8f1, #efe8d8); overflow: hidden; }
.bh-cg-img img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: contain; padding: 18px; transition: transform 0.8s var(--bh-ease-out); }
.bh-cg-card:hover .bh-cg-img img { transform: scale(1.05); }
.bh-cg-badge { position: absolute; left: 14px; top: 14px; padding: 7px 11px; border-radius: 999px; font: 700 11.5px/1 var(--bh-sans); letter-spacing: 0.04em; color: #10200f; background: var(--bh-metal-btn, linear-gradient(135deg, #f3d98f, #c49235)); box-shadow: 0 8px 16px -8px rgba(148, 112, 31, 0.7); }
.bh-cg-body { display: flex; flex-direction: column; flex: 1; padding: 20px 22px 22px; }
.bh-cg-cat { font: 600 11px/1 var(--bh-sans); letter-spacing: 0.14em; text-transform: uppercase; color: #94701f; }
.bh-cg-body h3 { margin: 10px 0 4px; font: 600 19px/1.25 var(--bh-display) !important; letter-spacing: -0.015em; }
.bh-cg-body h3 a { color: var(--bh-ink); }
.bh-cg-k { margin: 0 0 14px; font-size: 13.5px; color: #7b857e; }
.bh-cg-lots { margin-top: auto; display: flex; flex-direction: column; gap: 6px; }
.bh-cg-lot { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; background: #f7f3ea; font-size: 13px; color: #2f3d34; transition: background 0.3s, box-shadow 0.3s; }
.bh-cg-lot span { font-weight: 600; color: var(--bh-ink); }
.bh-cg-lot b { font-weight: 500; font-family: ui-monospace, "SFMono-Regular", Menlo, monospace; font-size: 12px; color: #5b675f; }
.bh-cg-lot::after { content: "\2192"; color: #94701f; transition: transform 0.4s var(--bh-ease-out); }
.bh-cg-lot b { margin-left: auto; }
.bh-cg-lot:hover { background: #12271b; }
.bh-cg-lot:hover span { color: #f7f1e4; }
.bh-cg-lot:hover b { color: #e3c06e; }
.bh-cg-lot:hover::after { color: #e3c06e; transform: translateX(3px); }
.bh-cg-lot.is-match { box-shadow: inset 0 0 0 1.5px #c9a24f; background: #fbf3dc; }
.bh-cg-empty { padding: 40px 0; text-align: center; color: #5b675f; }
@media (max-width: 640px) { .bh-cg-filters { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; margin-inline: -16px; padding-inline: 16px; scrollbar-width: none; } .bh-cg-filters button { flex: none; } }

/* ===== v13 — CALCULATOR: one clean input panel, working collapsed ===== */
.bh-calc-steps[hidden] { display: none !important; }
.bh-calc-inputs { gap: 0 !important; align-self: start; padding: 10px 34px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); box-shadow: 0 30px 60px -44px rgba(18, 39, 27, 0.45); }
.bh-calc-q { display: grid !important; grid-template-columns: 130px minmax(0, 1fr); align-items: center; gap: 18px; padding: 26px 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
.bh-calc-q + .bh-calc-q { border-top: 1px solid rgba(18, 39, 27, 0.08) !important; }
.bh-calc-q legend { float: left; width: auto; margin: 0 !important; padding: 0; font: 600 13px/1.2 var(--bh-sans) !important; letter-spacing: 0.12em; text-transform: uppercase; color: #94701f !important; }
.bh-calc-q .bh-chips { clear: none; }
.bh-chips button { padding: 11px 16px !important; }
.bh-calc-custom { margin: 0 !important; gap: 6px !important; padding: 0 14px 0 4px; border-radius: 999px; border: 1px dashed rgba(18, 39, 27, 0.25); background: #faf8f3; }
.bh-calc-custom input { width: 74px !important; padding: 10px 6px 10px 12px !important; border: 0 !important; background: transparent !important; box-shadow: none !important; font-size: 14px !important; }
.bh-calc-custom:focus-within { border-color: #c9a24f; border-style: solid; box-shadow: 0 0 0 4px rgba(201, 162, 79, 0.15); }
.bh-calc-custom em { font-size: 13px !important; }
.bh-calc-steps-btn { display: inline-flex; align-items: center; gap: 8px; }
.bh-calc-steps-btn::after { content: "+"; font-size: 16px; line-height: 1; }
.bh-calc-steps-btn[aria-expanded="true"]::after { content: "\2212"; }
@media (max-width: 640px) {
	.bh-calc-inputs { padding: 4px 20px; }
	.bh-calc-q { grid-template-columns: 1fr; gap: 12px; padding: 20px 0 !important; }
}

/* ===== v13 — PRODUCT PAGE: premium layout (CSS only; markup and behaviour unchanged) ===== */
body.bh-shell.single-product .bgl-pdp { max-width: 1240px; margin-inline: auto; padding-inline: clamp(16px, 3vw, 32px); }
body.bh-shell.single-product .bgl-pdp__crumbs { position: relative; padding-top: 18px; }
/* top: soft green silk glow behind the product */
body.bh-shell.single-product .bgl-pdp__top { position: relative; isolation: isolate; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important; gap: clamp(36px, 5vw, 80px) !important; padding: 26px 0 clamp(70px, 8vw, 110px); align-items: start; }
body.bh-shell.single-product .bgl-pdp__top::before { content: ""; position: absolute; z-index: -1; left: 50%; top: -260px; bottom: 0; width: 100vw; transform: translateX(-50%); pointer-events: none; background: radial-gradient(45% 55% at 25% 40%, rgba(46, 104, 72, 0.45), rgba(46, 104, 72, 0) 70%), radial-gradient(35% 45% at 85% 10%, rgba(210, 169, 79, 0.09), rgba(210, 169, 79, 0) 70%); }
body.bh-shell.single-product .bgl-pdp__media { position: sticky !important; top: 110px; }
body.bh-shell.single-product .bgl-pdp__frame { position: relative; border-radius: 28px !important; overflow: hidden; background: radial-gradient(75% 70% at 50% 40%, #fffdf8 0%, #f1ead9 70%, #e6dcc4 100%) !important; border: 0 !important; box-shadow: 0 0 0 1px rgba(227, 192, 110, 0.35), 0 60px 100px -50px rgba(0, 0, 0, 0.75) !important; aspect-ratio: 1 / 1; }
body.bh-shell.single-product .bgl-pdp__img { width: 100% !important; height: 100% !important; object-fit: contain !important; padding: 7%; mix-blend-mode: multiply; }

body.bh-shell.single-product .bgl-pdp__title { font: 600 clamp(2.4rem, 4vw, 3.5rem)/1.04 var(--bh-display) !important; letter-spacing: -0.035em !important; color: #f7f1e4 !important; margin: 0 0 14px !important; }
body.bh-shell.single-product .bgl-pdp__badge { background: transparent !important; color: #e9cf8a !important; border: 0 !important; box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.5); border-radius: 999px !important; padding: 7px 13px !important; font: 600 11px/1 var(--bh-sans) !important; letter-spacing: 0.12em !important; }
body.bh-shell.single-product .bgl-pdp__lead { color: rgba(247, 241, 228, 0.75) !important; font-size: 16.5px !important; line-height: 1.7 !important; margin: 18px 0 !important; }
body.bh-shell.single-product .bgl-pdp__chips { gap: 8px !important; }
body.bh-shell.single-product .bgl-pdp__chip { background: rgba(255, 255, 255, 0.04) !important; color: rgba(247, 241, 228, 0.85) !important; border: 0 !important; box-shadow: inset 0 0 0 1px rgba(247, 241, 228, 0.14); border-radius: 999px !important; }
body.bh-shell.single-product .bgl-pdp__price { display: flex; align-items: baseline; gap: 10px; margin: 26px 0 18px !important; padding-top: 24px; border-top: 1px solid rgba(210, 169, 79, 0.18); }
body.bh-shell.single-product .bgl-pdp__price > span:first-child { font: 600 clamp(2.4rem, 3.6vw, 3rem)/1 var(--bh-display) !important; letter-spacing: -0.03em; color: #f7f1e4 !important; }
body.bh-shell.single-product .bgl-pdp__unit { color: rgba(247, 241, 228, 0.5) !important; font-size: 14px !important; }
/* volume pricing: dark glass */
body.bh-shell.single-product .bgl-pdp__tiers { border-radius: 18px !important; overflow: hidden; background: rgba(255, 255, 255, 0.03) !important; border: 0 !important; box-shadow: inset 0 0 0 1px rgba(210, 169, 79, 0.25); }
body.bh-shell.single-product .bgl-pdp__tiershead { background: rgba(210, 169, 79, 0.08) !important; color: #e9cf8a !important; border: 0 !important; padding: 14px 18px !important; }
body.bh-shell.single-product .bgl-pdp__tiershead span:last-child { color: rgba(247, 241, 228, 0.5) !important; }
body.bh-shell.single-product .bgl-pdp__tiers table { background: transparent !important; }
body.bh-shell.single-product .bgl-pdp__tiers th, body.bh-shell.single-product .bgl-pdp__tiers td { background: transparent !important; color: rgba(247, 241, 228, 0.82) !important; border-color: rgba(210, 169, 79, 0.12) !important; padding: 12px 18px !important; }
body.bh-shell.single-product .bgl-pdp__tiers th { color: rgba(247, 241, 228, 0.45) !important; font-size: 11px !important; letter-spacing: 0.14em !important; }
body.bh-shell.single-product .bgl-pdp__tiers td:last-child { color: #e9cf8a !important; font-weight: 600; }
body.bh-shell.single-product .bgl-pdp__tiernote { background: transparent !important; color: rgba(247, 241, 228, 0.55) !important; border-top: 1px solid rgba(210, 169, 79, 0.12) !important; padding: 12px 18px !important; margin: 0 !important; }
body.bh-shell.single-product .bgl-pdp__qty { background: transparent !important; border: 0 !important; box-shadow: inset 0 0 0 1px rgba(247, 241, 228, 0.2); border-radius: 999px !important; color: #f7f1e4 !important; }
body.bh-shell.single-product .bgl-pdp__qty button { color: #f7f1e4 !important; background: transparent !important; }
body.bh-shell.single-product .bgl-pdp__sku { color: rgba(247, 241, 228, 0.45) !important; }
body.bh-shell.single-product .bgl-pdp__add { border-radius: 999px !important; min-height: 58px; font: 700 15px/1 var(--bh-sans) !important; letter-spacing: 0.04em; }
/* guarantee + notes */
body.bh-shell.single-product .bgl-pdp__guarantee { position: relative; margin-top: 22px !important; padding: 22px 24px !important; border-radius: 18px !important; background: radial-gradient(90% 120% at 0% 0%, rgba(46, 104, 72, 0.5), rgba(14, 33, 23, 0.6)) !important; border: 0 !important; box-shadow: inset 0 0 0 1px rgba(227, 192, 110, 0.4); }
body.bh-shell.single-product .bgl-pdp__gtitle { color: #f0d48a !important; font: 600 16px/1.3 var(--bh-display) !important; }
body.bh-shell.single-product .bgl-pdp__gtext { color: rgba(247, 241, 228, 0.75) !important; }
body.bh-shell.single-product .bgl-pdp__notes { margin: 22px 0 0 !important; padding: 0 !important; display: grid; gap: 10px; }
body.bh-shell.single-product .bgl-pdp__notes li { color: rgba(247, 241, 228, 0.66) !important; font-size: 14px !important; }
body.bh-shell.single-product .bgl-pdp__notes a { color: #e9cf8a !important; }
body.bh-shell.single-product .bgl-pdp__ruo { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 16px 0 0 !important; margin-top: 18px !important; border-top: 1px solid rgba(210, 169, 79, 0.15) !important; border-radius: 0 !important; color: rgba(247, 241, 228, 0.45) !important; font-size: 11.5px !important; letter-spacing: 0.12em; }

/* lower half: one ivory band (tabs, documents, related) */
body.bh-shell.single-product .bgl-tabs, body.bh-shell.single-product .bgl-docs, body.bh-shell.single-product .bgl-related { position: relative; background: #f5efe2; box-shadow: 33vw 0 0 #f5efe2, -33vw 0 0 #f5efe2, 66vw 0 0 #f5efe2, -66vw 0 0 #f5efe2, 100vw 0 0 #f5efe2, -100vw 0 0 #f5efe2; color: #2f3d34; } /* full-bleed via side shadows: no clip-path, so the fixed COA preview is not trapped */
body.bh-shell.single-product .bgl-tabs { padding: clamp(60px, 7vw, 90px) 0 30px !important; margin: 0 !important; }
body.bh-shell.single-product .bgl-tabs__list { display: flex !important; justify-content: center; gap: 6px !important; background: transparent !important; border: 0 !important; border-bottom: 1px solid rgba(18, 39, 27, 0.12) !important; border-radius: 0 !important; padding: 0 !important; margin-bottom: 44px !important; }
body.bh-shell.single-product .bgl-tabs__tab { background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; padding: 16px 20px !important; font: 600 14.5px/1 var(--bh-sans) !important; color: #6b766e !important; position: relative; }
body.bh-shell.single-product .bgl-tabs__tab[aria-selected="true"] { color: var(--bh-ink) !important; }
body.bh-shell.single-product .bgl-tabs__tab[aria-selected="true"]::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: -1px; height: 2px; background: linear-gradient(90deg, #b8872e, #e9cf86, #b8872e); }
body.bh-shell.single-product .bgl-tabs__panel { max-width: 820px; margin-inline: auto !important; color: #3f4c44 !important; font-size: 16.5px; line-height: 1.8; }
body.bh-shell.single-product .bgl-tabs__panel h3 { font: 600 22px/1.25 var(--bh-display) !important; letter-spacing: -0.02em; color: var(--bh-ink) !important; margin: 1.8em 0 0.5em !important; }
body.bh-shell.single-product .bgl-tabs__panel h3:first-child { margin-top: 0 !important; }
body.bh-shell.single-product .bgl-tabs__panel p, body.bh-shell.single-product .bgl-tabs__panel li { color: #3f4c44 !important; }
body.bh-shell.single-product .bgl-tabs__panel a { color: #94701f !important; }
body.bh-shell.single-product .bgl-identifiers, body.bh-shell.single-product .bgl-specs { background: #fff !important; border: 1px solid rgba(18, 39, 27, 0.08) !important; border-radius: 16px !important; overflow: hidden; }
body.bh-shell.single-product .bgl-identifiers > div, body.bh-shell.single-product .bgl-specs > div { border-color: rgba(18, 39, 27, 0.07) !important; background: transparent !important; }
body.bh-shell.single-product .bgl-identifiers dt, body.bh-shell.single-product .bgl-specs dt { color: #94701f !important; }
body.bh-shell.single-product .bgl-identifiers dd, body.bh-shell.single-product .bgl-specs dd { color: var(--bh-ink) !important; }
body.bh-shell.single-product .bgl-identifiers-note { color: #7b857e !important; }
body.bh-shell.single-product .bgl-ruo-note { background: transparent !important; border: 0 !important; border-left: 3px solid #c9a24f !important; border-radius: 0 !important; padding: 4px 0 4px 18px !important; color: #6b766e !important; }
body.bh-shell.single-product .bgl-label { background: #12271b !important; border-radius: 18px !important; border: 0 !important; color: #f7f1e4 !important; }
body.bh-shell.single-product .bgl-label * { color: inherit; }
body.bh-shell.single-product .bgl-docs { padding: 30px 0 clamp(50px, 6vw, 80px) !important; margin: 0 !important; }
body.bh-shell.single-product .bgl-docs__title, body.bh-shell.single-product .bgl-related__title { color: var(--bh-ink) !important; font: 600 clamp(1.8rem, 2.8vw, 2.4rem)/1.15 var(--bh-display) !important; letter-spacing: -0.03em !important; }
body.bh-shell.single-product .bgl-docs__eyebrow, body.bh-shell.single-product .bgl-docs__eyebrow span { color: #94701f !important; }
body.bh-shell.single-product .bgl-docs__intro { color: #56645a !important; }
body.bh-shell.single-product .bgl-doc { background: #fff !important; border: 1px solid rgba(18, 39, 27, 0.08) !important; border-radius: 16px !important; padding: 20px 22px !important; color: var(--bh-ink) !important; box-shadow: 0 20px 40px -34px rgba(18, 39, 27, 0.45); transition: transform 0.5s var(--bh-ease-out), border-color 0.4s !important; }
body.bh-shell.single-product .bgl-doc:hover { transform: translateY(-3px); border-color: rgba(182, 139, 51, 0.5) !important; }
body.bh-shell.single-product .bgl-doc__text span { color: var(--bh-ink) !important; }
body.bh-shell.single-product .bgl-doc__text span + span { color: #7b857e !important; }
body.bh-shell.single-product .bgl-doc__tag { background: #12271b !important; color: #f0d48a !important; border-radius: 8px !important; }
body.bh-shell.single-product .bgl-related { padding: 10px 0 clamp(80px, 9vw, 120px) !important; margin: 0 !important; }
body.bh-shell.single-product .bgl-related .bgl-card { border-radius: 20px !important; overflow: hidden; background: #fff !important; border: 1px solid rgba(18, 39, 27, 0.08) !important; box-shadow: 0 24px 50px -40px rgba(18, 39, 27, 0.45) !important; }
body.bh-shell.single-product .bgl-related .bgl-card__media { background: radial-gradient(80% 80% at 50% 40%, #fbf8f1, #efe8d8) !important; }
body.bh-shell.single-product .bgl-related .bgl-card__name { color: var(--bh-ink) !important; font: 600 18px/1.25 var(--bh-display) !important; }
body.bh-shell.single-product .bgl-related .bgl-card__price { color: var(--bh-ink) !important; }
body.bh-shell.single-product .bgl-related .bgl-card__badge, body.bh-shell.single-product .bgl-related .bgl-card__coa { color: #7b857e !important; }
body.bh-shell.single-product .bgl-related .bgl-card__add { margin: 0 16px 16px !important; width: calc(100% - 32px) !important; border-radius: 999px !important; background: transparent !important; color: #12271b !important; box-shadow: inset 0 0 0 1.5px #12271b !important; border: 0 !important; transition: background 0.3s, color 0.3s !important; }
body.bh-shell.single-product .bgl-related .bgl-card__add:hover { background: #12271b !important; color: #f0d48a !important; }
@media (max-width: 900px) {
	body.bh-shell.single-product .bgl-pdp__top { grid-template-columns: 1fr !important; }
	body.bh-shell.single-product .bgl-pdp__media { position: relative !important; top: 0; }
	body.bh-shell.single-product .bgl-tabs__list { justify-content: flex-start; overflow-x: auto; scrollbar-width: none; }
	body.bh-shell.single-product .bgl-tabs__tab { flex: none; }
}
body.bh-shell.single-product .bgl-docs, body.bh-shell.single-product .bgl-related { margin-top: -1px !important; }

/* ===== v14 — page endings: no CTA band, one ivory, one footer rhythm ===== */
.bh-light, .bh-light + .bh-light { background: radial-gradient(60% 420px at 100% 0%, rgba(201, 162, 79, 0.10), rgba(201, 162, 79, 0) 100%) no-repeat, #f5efe2 !important; }
.bh-light + .bh-light { background: #f5efe2 !important; }
.bh-footer { padding-top: clamp(84px, 8vw, 110px) !important; border-top: 1px solid rgba(210, 169, 79, 0.16); background: radial-gradient(60% 70% at 92% 100%, #143020 0%, #08130d 65%) !important; background-color: #08130d !important; }
.bh-footer-top { padding-bottom: clamp(60px, 6vw, 84px) !important; }
.bh-footer::after { opacity: 0.06 !important; }
.bh-ctaband { display: none !important; }
/* last section before the footer: same closing space everywhere */
.bh-inner > .e-con > .bh-section:nth-last-child(2), .bh-inner > .bh-section:nth-last-child(2) { padding-bottom: clamp(90px, 9vw, 130px) !important; }
.bh-scope { max-width: 760px; margin: 56px auto 0; text-align: center; font-size: 13.5px; line-height: 1.7; color: rgba(247, 241, 228, 0.5); }
.bh-chain-sec .bh-center-ctas { margin-top: 34px !important; }

/* ===== v14 — CERTIFICATE LIBRARY: clean grouped directory ===== */
.bh-coa-sec { padding-top: clamp(60px, 6vw, 90px) !important; }
.bh-cg { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: clamp(32px, 4vw, 64px); align-items: start; }
.bh-cg-rail { position: sticky; top: 110px; }
.bh-cg-search { position: relative; margin-bottom: 22px; }
.bh-cg-search svg { position: absolute; left: 15px; top: 50%; width: 17px; height: 17px; transform: translateY(-50%); fill: none; stroke: #7b857e; stroke-width: 1.8; stroke-linecap: round; }
.bh-cg-search input { width: 100%; padding: 13px 14px 13px 42px; border-radius: 12px; border: 1px solid rgba(18, 39, 27, 0.14); background: #fff; font: 500 14.5px/1.2 var(--bh-sans); color: var(--bh-ink); outline: 0; transition: border-color 0.3s, box-shadow 0.3s; }
.bh-cg-search input:focus { border-color: #c9a24f; box-shadow: 0 0 0 4px rgba(201, 162, 79, 0.15); }
.bh-cg-filters { display: flex; flex-direction: column; flex-wrap: nowrap !important; gap: 2px !important; }
.bh-cg-filters button { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 11px 14px !important; border-radius: 10px !important; background: transparent !important; box-shadow: none !important; text-align: left; font: 500 14.5px/1.2 var(--bh-sans) !important; color: #4c5a51 !important; }
.bh-cg-filters button em { font-style: normal; font-size: 12.5px; color: #9aa39c; }
.bh-cg-filters button:hover { background: rgba(18, 39, 27, 0.05) !important; }
.bh-cg-filters button.is-on { background: #12271b !important; color: #f7f1e4 !important; }
.bh-cg-filters button.is-on em { color: #e3c06e; }
.bh-cg-count { margin: 18px 0 0 14px; font-size: 13px; color: #7b857e; }
.bh-cg-main { display: grid; gap: 26px; }
.bh-cg-group { border-radius: 20px; background: #fff; border: 1px solid rgba(18, 39, 27, 0.08); box-shadow: 0 26px 50px -44px rgba(18, 39, 27, 0.45); overflow: hidden; }
.bh-cg-group[hidden], .bh-cg-row[hidden] { display: none !important; }
.bh-cg-group header { display: flex; justify-content: space-between; align-items: baseline; padding: 22px 28px; border-bottom: 1px solid rgba(18, 39, 27, 0.07); background: linear-gradient(180deg, #fbf8f1, #fff); }
.bh-cg-group header h2 { margin: 0; font: 600 19px/1.2 var(--bh-display); letter-spacing: -0.015em; color: var(--bh-ink); }
.bh-cg-group header span { font-size: 13px; color: #7b857e; }
.bh-cg-row { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: 20px; align-items: center; padding: 18px 28px; }
.bh-cg-row + .bh-cg-row { border-top: 1px solid rgba(18, 39, 27, 0.06); }
.bh-cg-name h3 { margin: 0 0 4px; font: 600 16.5px/1.3 var(--bh-display) !important; letter-spacing: -0.01em; color: var(--bh-ink) !important; }
.bh-cg-name span { font-size: 13px; color: #94701f; font-weight: 600; }
.bh-cg-lots { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.bh-cg-lot { display: inline-flex; align-items: center; gap: 10px; padding: 9px 14px; border-radius: 999px; background: #f6f2e8; font-size: 13px; color: #2f3d34; transition: background 0.3s, color 0.3s, box-shadow 0.3s; }
.bh-cg-lot span { font-weight: 600; color: var(--bh-ink); }
.bh-cg-lot b { font: 500 12px/1 ui-monospace, "SFMono-Regular", Menlo, monospace; color: #6b766e; }
.bh-cg-lot::after { content: "\2192"; color: #94701f; transition: transform 0.4s var(--bh-ease-out); }
.bh-cg-lot:hover { background: #12271b; }
.bh-cg-lot:hover span { color: #f7f1e4; }
.bh-cg-lot:hover b, .bh-cg-lot:hover::after { color: #e3c06e; }
.bh-cg-lot:hover::after { transform: translateX(3px); }
.bh-cg-lot.is-match { box-shadow: inset 0 0 0 1.5px #c9a24f; background: #fbf3dc; }
.bh-cg-empty { padding: 40px 0; text-align: center; color: #5b675f; }
@media (max-width: 900px) {
	.bh-cg { grid-template-columns: 1fr; }
	.bh-cg-rail { position: relative; top: 0; }
	.bh-cg-filters { flex-direction: row !important; overflow-x: auto; scrollbar-width: none; gap: 6px !important; margin-inline: -16px; padding-inline: 16px; }
	.bh-cg-filters button { flex: none; width: auto; gap: 8px; border-radius: 999px !important; box-shadow: inset 0 0 0 1px rgba(18, 39, 27, 0.12) !important; }
	.bh-cg-count { margin-left: 0; }
	.bh-cg-row { grid-template-columns: 1fr; gap: 12px; padding: 18px 20px; }
	.bh-cg-lots { justify-content: flex-start; }
	.bh-cg-group header { padding: 18px 20px; }
}

/* ===== v14 — SHOP PAGES: green band on top, ivory below, roomy cards (collections, search, product) ===== */
body.bh-shell.bh-band-page { background:
	radial-gradient(900px 420px at 18% 0, rgba(46, 104, 72, 0.55), rgba(46, 104, 72, 0) 70%) no-repeat,
	radial-gradient(700px 360px at 92% 8%, rgba(210, 169, 79, 0.10), rgba(210, 169, 79, 0) 70%) no-repeat,
	linear-gradient(180deg, #0f2419 0, #0d2016 var(--bh-band, 420px), #f5efe2 var(--bh-band, 420px)) !important; }
body.bh-shell.bh-band-page .bh-shell-footer { background: #08130d; }
/* collection header on the band */
body.bh-shell .bgl-collection { max-width: 1240px; margin-inline: auto; padding-inline: clamp(16px, 3vw, 32px); }
body.bh-shell .bgl-collection__eyebrow, body.bh-shell .bgl-collection__eyebrow span { color: #e3c06e !important; }
body.bh-shell .bgl-collection__title { color: #f7f1e4 !important; font: 600 clamp(2.6rem, 5vw, 4.4rem)/1.04 var(--bh-display) !important; letter-spacing: -0.035em !important; }
body.bh-shell .bgl-collection__tagline p { color: rgba(247, 241, 228, 0.72) !important; max-width: 46em; }
body.bh-shell.bh-band-page .bgl-colbar { margin-top: 72px !important; padding: 0 0 22px !important; border-bottom: 1px solid rgba(18, 39, 27, 0.1) !important; background: transparent !important; }
body.bh-shell.bh-band-page .bgl-colbar__count { color: #5b675f !important; }
body.bh-shell.bh-band-page .bgl-colbar__sort, body.bh-shell.bh-band-page .bgl-sort { color: var(--bh-ink) !important; }
body.bh-shell.bh-band-page .bgl-sort { background-color: #fff !important; border: 1px solid rgba(18, 39, 27, 0.14) !important; border-radius: 999px !important; padding: 10px 36px 10px 16px !important; }
body.bh-shell.bh-band-page .bgl-grid--collection { padding-bottom: clamp(90px, 9vw, 130px); }

/* the card, everywhere in the shop: roomy, white, three to a row */
body.bh-shell .bgl-grid--collection, body.bh-shell .bgl-search__results, body.bh-shell .bgl-grid--related { gap: clamp(20px, 2.4vw, 34px) !important; }
body.bh-shell .bgl-grid--collection { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; margin-top: 34px !important; }
body.bh-shell .bgl-card { display: flex !important; flex-direction: column; border-radius: 24px !important; overflow: hidden; background: #fff !important; border: 1px solid rgba(18, 39, 27, 0.07) !important; box-shadow: 0 30px 60px -46px rgba(18, 39, 27, 0.5) !important; transition: transform 0.6s var(--bh-ease-out), box-shadow 0.6s, border-color 0.5s !important; }
body.bh-shell .bgl-card:hover { transform: translateY(-6px); border-color: rgba(182, 139, 51, 0.45) !important; box-shadow: 0 44px 80px -48px rgba(18, 39, 27, 0.6) !important; }
body.bh-shell .bgl-card__media { position: relative; display: block; aspect-ratio: 4 / 4.2 !important; background: radial-gradient(70% 65% at 50% 42%, #fffdf8 0%, #f3ecdc 70%, #ebe1cb 100%) !important; overflow: hidden; }
body.bh-shell .bgl-card__img { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; object-fit: contain !important; padding: 9% !important; mix-blend-mode: multiply; transition: transform 0.9s var(--bh-ease-out) !important; }
body.bh-shell .bgl-card:hover .bgl-card__img { transform: scale(1.045) translateY(-4px); }
body.bh-shell .bgl-card__purity { position: absolute; left: 16px; top: 16px; z-index: 1; padding: 7px 12px !important; border-radius: 999px !important; font: 700 11px/1 var(--bh-sans) !important; letter-spacing: 0.06em; color: #10200f !important; background: var(--bh-metal-btn, linear-gradient(135deg, #f3d98f, #c49235)) !important; border: 0 !important; box-shadow: 0 8px 16px -8px rgba(148, 112, 31, 0.7); }
body.bh-shell .bgl-card__body { display: flex; flex-direction: column; flex: 1; padding: 22px 24px 8px !important; background: #fff !important; }
body.bh-shell .bgl-card__badge { order: -1; margin: 0 0 8px !important; font: 600 11px/1.2 var(--bh-sans) !important; letter-spacing: 0.14em !important; text-transform: uppercase; color: #94701f !important; }
body.bh-shell .bgl-card__name { color: var(--bh-ink) !important; font: 600 19px/1.28 var(--bh-display) !important; letter-spacing: -0.015em !important; text-transform: none !important; }
body.bh-shell .bgl-card__foot { display: flex !important; justify-content: space-between; align-items: baseline; margin-top: auto !important; padding: 18px 0 0 !important; border-top: 1px solid rgba(18, 39, 27, 0.07) !important; }
body.bh-shell .bgl-card__body > .bgl-card__name + * { margin-bottom: 16px; }
body.bh-shell .bgl-card__price { color: var(--bh-ink) !important; font: 600 20px/1 var(--bh-display) !important; letter-spacing: -0.02em; }
body.bh-shell .bgl-card__from { font: 500 12px/1 var(--bh-sans) !important; color: #7b857e !important; margin-right: 5px; letter-spacing: 0; }
body.bh-shell .bgl-card__coa { color: #1d5a3a !important; font: 600 11px/1 var(--bh-sans) !important; letter-spacing: 0.1em; }
body.bh-shell .bgl-card__add { margin: 14px 24px 24px !important; width: calc(100% - 48px) !important; min-height: 46px; border-radius: 999px !important; background: transparent !important; color: #12271b !important; box-shadow: inset 0 0 0 1.5px rgba(18, 39, 27, 0.8) !important; border: 0 !important; font: 600 14px/1 var(--bh-sans) !important; letter-spacing: 0.02em; transition: background 0.3s, color 0.3s !important; }
body.bh-shell .bgl-card__add:hover { background: #12271b !important; color: #f0d48a !important; }
body.bh-shell .bgl-card__add svg { stroke: currentColor; }
@media (max-width: 1024px) { body.bh-shell .bgl-grid--collection { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 560px) {
	body.bh-shell .bgl-grid--collection { grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
	body.bh-shell .bgl-card { border-radius: 16px !important; }
	body.bh-shell .bgl-card__body { padding: 14px 14px 4px !important; }
	body.bh-shell .bgl-card__name { font-size: 15.5px !important; }
	body.bh-shell .bgl-card__add { margin: 10px 14px 14px !important; width: calc(100% - 28px) !important; min-height: 40px; font-size: 12.5px !important; }
	body.bh-shell .bgl-card__purity { left: 10px; top: 10px; }
}

/* product page: green (not black) on top; details already ivory */
body.bh-shell.single-product.bh-band-page { background:
	radial-gradient(900px 600px at 22% 18%, rgba(56, 122, 86, 0.5), rgba(56, 122, 86, 0) 70%) no-repeat,
	radial-gradient(700px 500px at 90% 6%, rgba(210, 169, 79, 0.12), rgba(210, 169, 79, 0) 70%) no-repeat,
	linear-gradient(180deg, #12291c 0, #0e2117 var(--bh-band, 900px), #f5efe2 var(--bh-band, 900px)) !important; }
body.bh-shell.single-product .bgl-pdp__top::before { display: none; }
body.bh-shell.single-product .bgl-tabs { box-shadow: 33vw 0 0 #f5efe2, -33vw 0 0 #f5efe2, 66vw 0 0 #f5efe2, -66vw 0 0 #f5efe2, 100vw 0 0 #f5efe2, -100vw 0 0 #f5efe2; }
/* product photos carry their own studio background: fill the frame instead of floating a rectangle inside it */
body.bh-shell .bgl-card__img { object-fit: cover !important; padding: 0 !important; mix-blend-mode: normal; }
body.bh-shell.single-product .bgl-pdp__img { object-fit: cover !important; padding: 0 !important; mix-blend-mode: normal; }
body.bh-shell.single-product .bgl-pdp__tiers table, body.bh-shell.single-product .bgl-pdp__tiers thead, body.bh-shell.single-product .bgl-pdp__tiers tbody, body.bh-shell.single-product .bgl-pdp__tiers tr { border: 0 !important; box-shadow: none !important; outline: 0 !important; border-collapse: collapse; }
body.bh-shell.single-product .bgl-pdp__tiers th, body.bh-shell.single-product .bgl-pdp__tiers td { border: 0 !important; border-top: 1px solid rgba(210, 169, 79, 0.12) !important; }
body.bh-shell.single-product .bgl-pdp__tiers tr.is-active td { background: rgba(210, 169, 79, 0.1) !important; }
.bh-cg > * { min-width: 0; }
