
@font-face {
  font-family: 'Bodoni Moda';
  src: url('../public/fonts/bodoni-moda-variable.woff2') format('woff2');
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../public/fonts/montserrat-500.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Zodiak';
  src: url('../public/fonts/zodiak-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Ranade';
  src: url('../public/fonts/ranade-variable.woff2') format('woff2');
  font-weight: 100 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Ranade';
  src: url('../public/fonts/ranade-variable-italic.woff2') format('woff2');
  font-weight: 100 700;
  font-style: italic;
  font-display: swap;
}
:root {
  --bhg-ivory: #f9f2ec;
  --bhg-cream: #e8d8c4; 
  --bhg-ink: #111111;
  --bhg-camel: #e3bea2;
  --bhg-camel-deep: #d3a684;
  --bhg-muted: #0e0a09; 
  --bhg-bronze: #6a5753;
  --bhg-bronze-deep: #4e3f3c;
  --bhg-letter: #2b292a;
  --bhg-wall-tone: #8c7a6f; 
  --bhg-paper: #ddd5cc;
  --bhg-wall-size: 2100px; 
  --bhg-wall-img: -webkit-image-set(url('../public/brand/wall.avif?v=1') 1x, url('../public/brand/wall@2x.avif?v=1') 2x);
  --bhg-wall: var(--bhg-wall-tone) var(--bhg-wall-img) 0 0 / var(--bhg-wall-size) auto repeat;
  --bhg-line: rgb(17 17 17 / 0.12);
  --bhg-font-display: 'Montserrat', 'Ranade', system-ui, sans-serif;
  --bhg-font-body: 'Ranade', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --bhg-gutter: clamp(20px, 4.4vw, 64px);
  --bhg-header-h: 88px;
  --bhg-safe-top: env(safe-area-inset-top, 0px);
  --bhg-safe-bottom: env(safe-area-inset-bottom, 0px);
  --bhg-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (max-width: 767px) { :root { --bhg-wall-size: 1350px; --bhg-wall-img: url('../public/brand/wall.avif?v=1'); } }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  :root { --bhg-header-h: 64px; }
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-synthesis-weight: none;
  background: var(--bhg-wall);
  color: var(--bhg-ink);
  font-family: var(--bhg-font-body);
  font-size: 17px;
  line-height: 1.55;
  font-weight: 520; 
  -webkit-font-smoothing: antialiased;
}
img, video { display: block; max-width: 100%; }
html {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
img, video, svg, canvas { -webkit-user-drag: none; user-drag: none; }
input, textarea, select, [contenteditable] { -webkit-user-select: text; user-select: text; }
address, a[href^='tel:'], a[href^='mailto:'], .bhg-job__phone, .bhg-contact-copy { -webkit-user-select: text; user-select: text; -webkit-touch-callout: default; }
a { color: inherit; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.bhg-skip {
  position: absolute;
  left: 16px;
  top: -100px;
  z-index: 100;
  padding: 10px 16px;
  background: var(--bhg-ink);
  color: var(--bhg-cream);
}
.bhg-skip:focus { top: calc(16px + var(--bhg-safe-top)); }
.bhg-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 14px 28px;
  border-radius: 0;
  font-family: var(--bhg-font-display);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 0.3s var(--bhg-ease), color 0.3s var(--bhg-ease);
}
.bhg-btn--camel { background: var(--bhg-bronze); color: var(--bhg-cream); }
.bhg-btn--camel:hover { background: var(--bhg-bronze-deep); }
.bhg-btn[aria-disabled='true'] { cursor: default; }
.bhg-btn--camel[aria-disabled='true']:hover { background: var(--bhg-bronze); }
.bhg-btn--small { min-height: 40px; padding: 10px 18px; font-size: 11px; }
.bhg-header {
  --hdr-fg: var(--bhg-ink);
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  padding-top: var(--bhg-safe-top);
  color: var(--hdr-fg);
  pointer-events: none;
  transition: color 0.5s var(--bhg-ease);
}
.bhg-header__logo, .bhg-header__actions, .bhg-menu { pointer-events: auto; }
.bhg-header[data-tone='dark'] { --hdr-fg: var(--bhg-cream); }
.bhg-header__inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  height: var(--bhg-header-h);
  padding: 0 var(--bhg-gutter);
}
.bhg-header__logo { display: block; grid-column: 2; }
.bhg-header__logo img {
  height: 42px;
  width: auto;
  transition: filter 0.5s var(--bhg-ease);
}
.bhg-header[data-tone='dark'] .bhg-header__logo img { filter: brightness(0) invert(1) sepia(0.15); }
.bhg-header__actions {
  grid-column: 3;
  justify-self: end;
  display: flex;
  align-items: center;
  gap: clamp(10px, 1.4vw, 22px);
}
.bhg-header .bhg-btn--camel {
  --p: var(--bhg-header-presence, 1);
  background: color-mix(in srgb, var(--bhg-bronze) calc(var(--p) * 100%), var(--bhg-ivory));
  color: color-mix(in srgb, var(--bhg-cream) calc(var(--p) * 100%), var(--bhg-ink));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--bhg-bronze) calc(var(--p) * 100%), var(--hdr-fg));
}
.bhg-header .bhg-btn--camel:hover,
.bhg-header .bhg-btn--camel:focus-visible { background: var(--bhg-bronze-deep); color: var(--bhg-cream); box-shadow: none; }
.bhg-header[data-tone='dark'] .bhg-btn--camel { --p: 1; }
.bhg-header::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: calc(var(--bhg-header-h) + var(--bhg-safe-top) + 72px);
  background: linear-gradient(180deg, rgb(14 10 7 / 0.42), rgb(14 10 7 / 0));
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.6s var(--bhg-ease);
  z-index: -1;
}
.bhg-header[data-tone='dark']::before { opacity: calc(1 - var(--bhg-header-solid, 0)); }
.bhg-burger {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  height: 48px;
  margin-right: -6px; 
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.bhg-burger__label {
  display: block;
  height: 1.3em;
  overflow: hidden;
  font-family: var(--bhg-font-body);
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0.01em;
  text-align: right;
  font-weight: 500;
}
.bhg-burger__label span {
  display: block;
  transition: transform 0.6s cubic-bezier(0.76, 0, 0.24, 1);
}
.bhg-burger[aria-expanded='true'] .bhg-burger__label span { transform: translate3d(0, -100%, 0); }
.bhg-burger__icon {
  --knob: 48px;
  position: relative;
  display: block;
  width: var(--knob);
  height: var(--knob);
  border-radius: 50%;
  color: var(--bhg-ink);
  background:
    radial-gradient(circle at 33% 26%, #fff 0, rgb(255 255 255 / 0.9) 9%, rgb(255 253 250 / 0) 44%),
    radial-gradient(circle at 68% 78%, rgb(160 128 108 / 0.16) 0, rgb(160 128 108 / 0) 58%),
    var(--bhg-ivory);
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.9),
    inset 0 -1px 2px rgb(106 87 83 / 0.14),
    0 1px 2px rgb(58 40 30 / 0.16),
    0 10px 22px -10px rgb(58 40 30 / 0.45);
  animation: bhg-knob-in 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.35s backwards;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.45s var(--bhg-ease);
}
.bhg-burger__icon::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: conic-gradient(
    from 210deg,
    rgb(236 206 222 / 0.75),
    rgb(206 222 240 / 0.7),
    rgb(212 236 224 / 0.65),
    rgb(244 226 196 / 0.75),
    rgb(226 210 238 / 0.7),
    rgb(236 206 222 / 0.75)
  );
  -webkit-mask: radial-gradient(circle at 40% 36%, transparent 0 30%, #000 78%);
  mask: radial-gradient(circle at 40% 36%, transparent 0 30%, #000 78%);
  mix-blend-mode: multiply;
}
.bhg-burger__icon::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: var(--bhg-bronze);
  clip-path: circle(0 at 50% 50%);
  transition: clip-path 0.55s cubic-bezier(0.76, 0, 0.24, 1);
}
@keyframes bhg-knob-in { from { transform: scale(0); } }
.bhg-burger__icon i {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 1.5px;
  margin: -0.75px 0 0 -8px;
  background: currentColor;
  transform-origin: 50% 50%;
  transition: transform 0.6s cubic-bezier(0.76, 0, 0.24, 1), background-color 0.35s var(--bhg-ease) 0.1s;
}
.bhg-burger__icon i:nth-of-type(1) { transform: translate3d(0, -2.75px, 0); }
.bhg-burger__icon i:nth-of-type(2) { transform: translate3d(0, 2.75px, 0); }
.bhg-burger:hover .bhg-burger__icon::after,
.bhg-burger:focus-visible .bhg-burger__icon::after,
.bhg-burger[aria-expanded='true'] .bhg-burger__icon::after { clip-path: circle(50% at 50% 50%); }
.bhg-burger:hover .bhg-burger__icon i,
.bhg-burger:focus-visible .bhg-burger__icon i,
.bhg-burger[aria-expanded='true'] .bhg-burger__icon i { background-color: var(--bhg-cream); }
.bhg-burger:hover .bhg-burger__icon i:nth-of-type(1) { transform: translate3d(0, -3.5px, 0); }
.bhg-burger:hover .bhg-burger__icon i:nth-of-type(2) { transform: translate3d(0, 3.5px, 0); }
.bhg-burger:active .bhg-burger__icon { transform: scale(0.95); }
.bhg-burger:focus-visible { outline: none; }
.bhg-burger:focus-visible .bhg-burger__icon {
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.9),
    0 0 0 3px var(--bhg-ivory),
    0 0 0 4.5px var(--bhg-bronze);
}
.bhg-burger[aria-expanded='true'] .bhg-burger__icon i:nth-of-type(1) { transform: rotate(45deg); }
.bhg-burger[aria-expanded='true'] .bhg-burger__icon i:nth-of-type(2) { transform: rotate(-45deg); }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-burger__label { display: none; }
  .bhg-burger { margin-right: -4px; }
  .bhg-burger__icon { --knob: 44px; }
  .bhg-burger__icon i { width: 18px; height: 2px; margin: -1px 0 0 -9px; }
  .bhg-burger__icon i:nth-of-type(1) { transform: translate3d(0, -3px, 0); }
  .bhg-burger__icon i:nth-of-type(2) { transform: translate3d(0, 3px, 0); }
}
@media (hover: none) {
  .bhg-burger:hover:not([aria-expanded='true']) .bhg-burger__icon::after { clip-path: circle(0 at 50% 50%); }
  .bhg-burger:hover:not([aria-expanded='true']) .bhg-burger__icon i { background-color: currentColor; }
  .bhg-burger:hover:not([aria-expanded='true']) .bhg-burger__icon i:nth-of-type(1) { transform: translate3d(0, -2.75px, 0); }
  .bhg-burger:hover:not([aria-expanded='true']) .bhg-burger__icon i:nth-of-type(2) { transform: translate3d(0, 2.75px, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-burger__icon { animation: none; }
  .bhg-burger__icon, .bhg-burger__icon::after, .bhg-burger__icon i, .bhg-burger__label span { transition: none; }
}
.bhg-menu {
  --menu-fg: var(--bhg-ink);
  --menu-ease: cubic-bezier(0.76, 0, 0.24, 1);
  --menu-top: calc(var(--bhg-header-h) + var(--bhg-safe-top) + clamp(8px, 3svh, 36px));
  --menu-pic: 68px;
  --menu-mirror-ratio: 0.54;
  --menu-bottom: clamp(16px, 3.5svh, 48px);
  --menu-leading: 1.22;
  --menu-size: clamp(16px, min(3.5vw, calc((100svh - var(--menu-top) - 24px - var(--menu-pic) - var(--menu-bottom)) / (var(--menu-count, 9) * var(--menu-leading)))), 54px);
  position: fixed;
  inset: 0;
  z-index: -1; 
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: 1fr auto;
  padding: 0 var(--bhg-gutter);
  background: var(--bhg-paper);
  color: var(--menu-fg);
  overflow: hidden auto;
  clip-path: inset(0 0 100% 0);
}
.bhg-menu[hidden] { display: none; }
.bhg-menu.is-open { clip-path: inset(0 0 0 0); }
.bhg-menu__glass {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}
.bhg-menu__pane {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: #cfd0cb;
}
.bhg-menu__room {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 38% 50%;
  transform: scale(1.12) scaleX(-1);
  will-change: transform;
}
.bhg-menu__pane::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to right, rgb(238 237 232 / 0.5), rgb(238 237 232 / 0.34) 30%, rgb(238 237 232 / 0.34) 70%, rgb(238 237 232 / 0) 92%),
    rgb(226 227 222 / 0.48);
  box-shadow: inset 0 0 70px 10px rgb(52 46 40 / 0.28);
}
.bhg-menu__sheen {
  position: absolute;
  inset: -40px;
  z-index: 1;
  background:
    linear-gradient(118deg, rgb(255 255 255 / 0) 14%, rgb(255 255 255 / 0.3) 24%, rgb(255 255 255 / 0.06) 34%, rgb(255 255 255 / 0) 40%),
    linear-gradient(118deg, rgb(255 255 255 / 0) 58%, rgb(255 255 255 / 0.16) 66%, rgb(255 255 255 / 0) 76%);
  will-change: transform;
}
.bhg-menu__list {
  grid-column: 3 / span 5;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--menu-top) 0 24px clamp(16px, 2vw, 32px);
}
.bhg-menu__link {
  position: relative;
  font-family: 'Zodiak', var(--bhg-font-body);
  font-weight: 400;
  font-size: var(--menu-size);
  line-height: var(--menu-leading);
  white-space: nowrap;
  text-decoration: none;
  color: var(--menu-fg);
  text-shadow: 0 0 2px rgb(244 242 238 / 0.9), 0 0 14px rgb(244 242 238 / 0.85);
  opacity: 0.36;
  transition: opacity 0.45s var(--bhg-ease);
}
.bhg-menu__link.is-active { opacity: 1; }
.bhg-menu__ch {
  display: inline-block;
  transform: perspective(600px) rotateX(-92deg) translate3d(0, 0.18em, 0);
  transform-origin: 50% 100%;
  backface-visibility: hidden;
  transition: transform 0.25s var(--bhg-ease);
}
.bhg-menu.is-open .bhg-menu__ch {
  transform: none;
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
  transition-delay: calc(var(--i, 0) * 60ms + var(--j, 0) * 22ms + 420ms);
}
.bhg-menu__detail {
  grid-column: 8 / span 3;
  grid-row: 1;
  position: relative;
  padding: calc(var(--menu-top) + 0.7em) 0 0 clamp(16px, 2vw, 32px);
}
.bhg-menu__note {
  position: absolute;
  inset: auto 0 auto clamp(16px, 2vw, 32px);
  max-width: 26ch;
  opacity: 0;
  transform: translate3d(0, 10px, 0);
  transition: opacity 0.4s var(--bhg-ease), transform 0.4s var(--bhg-ease);
  pointer-events: none;
}
.bhg-menu__note.is-active { opacity: 1; transform: none; }
.bhg-menu__note strong {
  display: block;
  margin-bottom: 14px;
  font-family: var(--bhg-font-body);
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.01em;
  color: var(--bhg-muted);
}
.bhg-menu__note span { font-size: clamp(17px, 1.25vw, 20px); line-height: 1.6; color: var(--bhg-muted); }
.bhg-menu__mirror {
  grid-column: 11 / span 2;
  grid-row: 1;
  align-self: end;
  justify-self: end;
  position: relative;
  width: min(100%, calc((100svh - var(--menu-top) - var(--menu-pic) - var(--menu-bottom) - 24px) * var(--menu-mirror-ratio)));
  aspect-ratio: var(--menu-mirror-ratio);
  margin: 0 0 24px;
  overflow: hidden;
  border-radius: 50% 50% 0 0 / 27% 27% 0 0;
  background: var(--bhg-bronze-deep);
  box-shadow: 0 22px 48px rgb(30 20 12 / 0.38);
  clip-path: inset(100% 0 0 0);
  transition: clip-path 0.9s var(--menu-ease);
}
.bhg-menu.is-open .bhg-menu__mirror { clip-path: inset(-60px -60px -60px -60px); transition-delay: 0.5s; }
.bhg-menu__mirror .bhg-video-canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.bhg-menu__mirror video,
.bhg-menu__mirror img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.bhg-menu__mirror img {
  clip-path: inset(100% 0 0 0);
  transition: clip-path 0.55s var(--menu-ease) 0.5s;
}
.bhg-menu__mirror img.is-shown { clip-path: inset(0 0 0 0); transition-delay: 0s; }
.bhg-mirror-frame {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}
.bhg-menu__mirror .bhg-mirror-frame { z-index: 1000000; }
@media (min-width: 901px) {
  .bhg-menu > .bhg-mirror-frame { display: none; }
}
.bhg-menu__fly {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.bhg-menu__foot {
  grid-column: 8 / span 5;
  grid-row: 2;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 0 0 var(--menu-bottom) clamp(16px, 2vw, 32px);
  opacity: 0;
  transition: opacity 0.8s var(--bhg-ease) 0.55s;
}
.bhg-menu.is-open .bhg-menu__foot { opacity: 1; }
.bhg-menu__foot .bhg-menu__book { text-shadow: none; }
.bhg-menu__foot ul { list-style: none; margin: 0; padding: 0; }
.bhg-menu__foot .bhg-menu__social { display: flex; gap: 6px; }
.bhg-menu__social a {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  background: var(--bhg-bronze);
  color: var(--bhg-cream);
  text-shadow: none;
  transition: background-color 0.3s var(--bhg-ease);
}
.bhg-menu__social a:hover, .bhg-menu__social a:focus-visible { background: var(--bhg-bronze-deep); }
.bhg-menu__foot p {
  margin: 0;
  font-family: var(--bhg-font-body);
  font-size: 14px;
  letter-spacing: 0.01em;
  color: var(--bhg-muted);
  text-align: right;
  font-weight: 500;
}
.bhg-header::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  background: #000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.6s var(--bhg-ease);
}
.bhg-header.is-menu-open::after { opacity: 0.35; }
.bhg-header.is-menu-open { --hdr-fg: var(--bhg-ink); }
.bhg-header.is-menu-open::before { opacity: 0; }
.bhg-header.is-menu-open .bhg-header__logo img { filter: none; opacity: 1; }
.bhg-header.is-menu-open .bhg-btn--camel { --p: 1; }
@media (hover: none) {
  .bhg-menu.is-open .bhg-menu__link { opacity: 0.92; }
  .bhg-menu.is-open .bhg-menu__list.is-scrubbing .bhg-menu__link { opacity: 0.36; }
  .bhg-menu.is-open .bhg-menu__list.is-scrubbing .bhg-menu__link.is-active { opacity: 1; }
  .bhg-menu__list { touch-action: none; }
}
@media (min-width: 901px) {
  .bhg-menu, .bhg-menu.is-open { clip-path: none; background: none; }
  .bhg-menu { --menu-pane: calc(hypot(100vw, 100lvh) + 8px); }
  .bhg-menu__glass { position: fixed; }
  .bhg-menu__pane {
    inset: auto;
    left: calc(50vw - var(--menu-pane) / 2);
    top: calc(50lvh - var(--menu-pane) / 2);
    width: var(--menu-pane);
    height: var(--menu-pane);
    border-radius: 50% 50% 0 0;
    box-shadow:
      0 0 0 9px rgb(201 143 86), 0 0 0 12px rgb(138 84 42),
      0 0 0 22px rgb(201 143 86), 0 0 0 25px rgb(138 84 42),
      0 24px 70px 20px rgb(30 20 12 / 0.4);
  }
  .bhg-menu__pane::after { box-shadow: none; }
  .bhg-menu.is-open .bhg-menu__ch { transition-delay: calc(var(--i, 0) * 45ms + var(--j, 0) * 16ms + 560ms); }
  .bhg-menu.is-open .bhg-menu__mirror { transition-delay: 0.62s; }
  .bhg-menu.is-open .bhg-menu__foot { transition-delay: 0.62s; }
  .bhg-menu.is-open .bhg-menu__link { opacity: 0.92; }
  .bhg-menu.is-open .bhg-menu__list:has(.is-active) .bhg-menu__link:not(.is-active) { opacity: 0.42; }
  .bhg-menu.is-open .bhg-menu__link.is-active { opacity: 1; }
  .bhg-menu__note strong, .bhg-menu__note span { text-shadow: 0 0 2px rgb(244 242 238 / 0.9), 0 0 14px rgb(244 242 238 / 0.85); }
  .bhg-menu.is-closing .bhg-menu__foot { transition: opacity 0.2s var(--bhg-ease); }
  .bhg-menu.is-closing .bhg-menu__mirror { transition: clip-path 0.3s var(--menu-ease); }
}
@media (max-width: 900px) {
  .bhg-menu.is-open, .bhg-menu.is-closing { clip-path: inset(0 round 50vw 50vw 0 0); }
  .bhg-menu {
    --menu-top: max(calc(var(--bhg-header-h) + var(--bhg-safe-top) + clamp(8px, 3svh, 36px)), var(--menu-arch-clear, 0px));
    --menu-mirror-w: clamp(62px, 19vw, 104px);
    --menu-mirror-h: max(100px, calc(var(--menu-mirror-w) / var(--menu-mirror-ratio)));
    grid-template-rows: 1fr auto;
    padding: 0 20px;
    --menu-leading: 1.3;
    --menu-indent: clamp(28px, 11vw, 56px);
    --menu-size: clamp(16px, min(8.4vw, calc((100vw - 56px - 2 * var(--menu-frame, 27px) - var(--menu-indent)) / 8.8), calc((100svh - var(--menu-top) - 24px - var(--menu-mirror-h) - var(--menu-frame, 27px) - 20px - var(--bhg-safe-bottom)) / (var(--menu-count, 9) * var(--menu-leading)))), 44px);
  }
  .bhg-menu__list { grid-column: 1 / -1; padding-left: calc(var(--menu-frame, 27px) + var(--menu-indent)); }
  .bhg-menu__detail { display: none; }
  .bhg-header__logo { transition: transform 0.6s var(--bhg-ease); }
  .bhg-header.is-menu-open .bhg-header__logo { transform: translate3d(0, var(--menu-logo-drop, 0px), 0); }
  .bhg-menu__foot {
    grid-column: 1 / -1;
    grid-row: 2;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 12px;
    padding-left: calc(var(--menu-frame, 27px) + 4px);
    padding-bottom: calc(var(--menu-frame, 27px) + 20px + var(--bhg-safe-bottom));
  }
  .bhg-menu__foot .bhg-menu__book { padding: 12px 16px; font-size: 11px; letter-spacing: 0.12em; }
  .bhg-menu__social a { width: 44px; height: 44px; }
  .bhg-menu__mirror {
    grid-column: 1 / -1;
    grid-row: 2;
    width: var(--menu-mirror-w);
    height: auto;
    max-height: none;
    margin: 0 calc(var(--menu-frame, 27px) - 8px) calc(var(--menu-frame, 27px) + 20px + var(--bhg-safe-bottom)) 0;
  }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-header__logo img { height: 30px; }
  .bhg-header .bhg-header__book {
    --p: 1;
    position: fixed;
    left: 14px;
    bottom: calc(14px + var(--bhg-safe-bottom));
    min-height: 46px;
    padding: 0 14px;
    font-size: 11px;
    letter-spacing: 0.14em;
    visibility: hidden;
    clip-path: inset(100% 0 0 0);
    transform: translate3d(0, 12px, 0);
    transition: clip-path 0.7s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s linear 0.9s, background-color 0.3s var(--bhg-ease);
  }
  .bhg-header .bhg-header__book.is-shown {
    visibility: visible;
    clip-path: inset(0 0 0 0);
    transform: none;
    transition: clip-path 0.7s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s, background-color 0.3s var(--bhg-ease);
  }
  .bhg-header.is-menu-open .bhg-header__book.is-shown {
    visibility: hidden;
    clip-path: inset(100% 0 0 0);
    transform: translate3d(0, 12px, 0);
    transition: clip-path 0.4s var(--bhg-ease), transform 0.4s var(--bhg-ease), visibility 0s linear 0.4s;
  }
}
@media (max-width: 359px) {
  .bhg-header .bhg-header__book { padding: 0 12px; font-size: 11px; letter-spacing: 0.1em; }
  .bhg-call .bhg-call__label { padding: 0 12px; font-size: 11px; letter-spacing: 0.1em; }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-header .bhg-header__book, .bhg-header .bhg-header__book.is-shown { transform: none; transition: visibility 0s; }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-menu, .bhg-menu__link, .bhg-menu__mirror, .bhg-menu__mirror img, .bhg-menu__ch, .bhg-menu__foot, .bhg-burger span, .bhg-header::after { transition: none; }
}
.bhg-next {
  padding: clamp(80px, 12vw, 160px) var(--bhg-gutter);
}
.bhg-next__title {
  margin: 0 0 clamp(40px, 6vw, 72px);
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(30px, 4vw, 56px);
  line-height: 1.05;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.bhg-next__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 32px);
}
.bhg-next__grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 1100px; }
.bhg-tile { scroll-margin-top: calc(var(--bhg-header-h) + 24px); }
.bhg-tile img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; background: #ece2d8; }
.bhg-tile h3 {
  margin: 24px 0 6px;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(20px, 2vw, 28px);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.bhg-tile p { margin: 0; color: var(--bhg-muted); }
@media (max-width: 767px) {
  .bhg-next__grid { grid-template-columns: 1fr; gap: 48px; }
}
.bhg-footer {
  position: relative;
  z-index: 5;
  padding: clamp(56px, 8svh, 96px) var(--bhg-gutter) calc(28px + var(--bhg-safe-bottom));
  background: var(--bhg-paper);
  font-family: var(--bhg-font-display);
  font-weight: 500;
  font-size: 13px;
  line-height: 1.7;
}
.bhg-footer a { text-decoration: none; transition: color 0.3s var(--bhg-ease); }
.bhg-footer a:hover, .bhg-footer a:focus-visible { color: var(--bhg-bronze); }
.bhg-footer ul { list-style: none; margin: 0; padding: 0; }
.bhg-footer__grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) repeat(3, minmax(0, 1fr));
  gap: 48px clamp(24px, 4vw, 72px);
}
.bhg-footer__logo { display: inline-block; }
.bhg-footer__logo img { height: 56px; width: auto; }
.bhg-footer__brand p { margin: 22px 0 0; max-width: 30ch; color: var(--bhg-muted); }
.bhg-footer__social { display: flex; gap: 4px; margin: 22px 0 0 -11px !important; }
.bhg-footer__social a {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  color: var(--bhg-ink);
}
.bhg-footer__col h2 {
  margin: 0 0 12px;
  font: inherit;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bhg-ink);
}
.bhg-footer__col li + li { margin-top: 4px; }
.bhg-footer__col address { font-style: normal; }
.bhg-footer__col p { margin: 12px 0 0; color: var(--bhg-muted); }
.bhg-hours { display: grid; grid-template-columns: repeat(4, max-content); column-gap: 0.55em; }
.bhg-hours__dicht { grid-column: 2 / -1; }
.bhg-footer__col .bhg-btn { min-height: 40px; margin-top: 18px; padding: 10px 18px; font-size: 11px; }
.bhg-footer .bhg-btn:hover, .bhg-footer .bhg-btn:focus-visible { color: var(--bhg-cream); }
.bhg-footer__base {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 32px;
  margin-top: clamp(40px, 6svh, 64px);
  font-size: 12px;
  color: var(--bhg-muted);
}
.bhg-split__body p a { color: inherit; text-decoration: none; transition: color 0.3s var(--bhg-ease); }
.bhg-split__body p a:hover, .bhg-split__body p a:focus-visible { color: var(--bhg-bronze); }
.bhg-footer__base p { margin: 0; }
.bhg-footer__base ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.bhg-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.bhg-footer__brand .bhg-signature {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  width: max-content;
  margin: 10px 0 0;
  color: var(--bhg-bronze);
}
.bhg-signature span {
  font: 400 6px/1 'Bodoni Moda', 'Didot', Georgia, serif;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  padding-left: 0.32em; 
}
.bhg-signature img { display: block; width: auto; height: 8.25px; }
@media (max-width: 1279px) {
  .bhg-footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .bhg-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 1023px) {
  .bhg-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bhg-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .bhg-footer__grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .bhg-footer__logo img { height: 46px; }
}
.bhg-call { display: none; }
@media (pointer: coarse) and (max-width: 767px), (pointer: coarse) and (max-aspect-ratio: 4/5) {
  .bhg-call {
    position: fixed;
    right: 14px;
    bottom: calc(14px + var(--bhg-safe-bottom));
    z-index: 60;
    display: flex;
    height: 46px;
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
    visibility: hidden;
    clip-path: inset(100% 0 0 0);
    transform: translate3d(0, 12px, 0);
    transition: clip-path 0.7s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s linear 0.9s;
  }
  .bhg-call.is-shown {
    visibility: visible;
    clip-path: inset(0 0 0 0);
    transform: none;
    transition: clip-path 0.7s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s;
  }
  .bhg-header.is-menu-open ~ .bhg-call.is-shown {
    visibility: hidden;
    clip-path: inset(100% 0 0 0);
    transform: translate3d(0, 12px, 0);
    transition: clip-path 0.4s var(--bhg-ease), transform 0.4s var(--bhg-ease), visibility 0s linear 0.4s;
  }
  .bhg-call:focus-visible { outline: 2px solid var(--bhg-ink); outline-offset: 3px; }
  .bhg-footer { padding-bottom: calc(28px + 46px + 14px + 46px + 10px + 24px + var(--bhg-safe-bottom)); }
  .bhg-footer__brand .bhg-signature {
    position: absolute;
    left: 50%;
    bottom: calc(114px + var(--bhg-safe-bottom));
    margin: 0;
    transform: translate(-50%, 50%);
  }
  .bhg-call__mark {
    display: grid;
    place-items: center;
    width: 46px;
    background: var(--bhg-ink);
  }
  .bhg-call__mark::before {
    content: '';
    width: 20px;
    aspect-ratio: 1;
    background: var(--bhg-camel);
    -webkit-mask: url('../public/brand/phone.png') center / contain no-repeat;
    mask: url('../public/brand/phone.png') center / contain no-repeat;
  }
  .bhg-call__label {
    display: grid;
    place-items: center;
    padding: 0 14px;
    background: var(--bhg-bronze);
    color: var(--bhg-cream);
    font-family: var(--bhg-font-display);
    font-size: 11px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    transition: background-color 0.2s var(--bhg-ease);
  }
  .bhg-call:active .bhg-call__label { background: var(--bhg-bronze-deep); }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-call, .bhg-call.is-shown, .bhg-header.is-menu-open ~ .bhg-call.is-shown { transform: none; transition: visibility 0s; }
}
.bhg-top {
  --top-clip-left: -220px; 
  position: fixed;
  right: clamp(20px, 2.4vw, 40px);
  bottom: calc(clamp(34px, 2.4vw, 40px) + var(--bhg-safe-bottom)); 
  z-index: 60;
  display: block;
  padding: 0;
  border: 0;
  background: none;
  color: var(--bhg-camel);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  visibility: hidden;
  clip-path: inset(100% -40px 0 var(--top-clip-left));
  transform: translate3d(0, 12px, 0);
  transition: clip-path 0.7s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s linear 0.9s;
}
.bhg-top.is-shown {
  visibility: visible;
  clip-path: inset(-40px -40px -40px var(--top-clip-left));
  transform: none;
  transition: clip-path 0.7s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s;
}
.bhg-header.is-menu-open ~ .bhg-top.is-shown {
  visibility: hidden;
  clip-path: inset(100% -40px 0 var(--top-clip-left));
  transform: translate3d(0, 12px, 0);
  transition: clip-path 0.4s var(--bhg-ease), transform 0.4s var(--bhg-ease), visibility 0s linear 0.4s;
}
.bhg-top:focus-visible { outline: 2px solid var(--bhg-ink); outline-offset: 3px; }
.bhg-top__mark {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  background: var(--bhg-ink);
}
.bhg-top__mark svg { display: block; width: 24px; height: 24px; }
.bhg-top__label {
  position: absolute;
  top: 0;
  right: 100%;
  bottom: 0;
  display: grid;
  place-items: center;
  padding: 0 18px;
  background: var(--bhg-bronze);
  color: var(--bhg-cream);
  font-family: var(--bhg-font-display);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  white-space: nowrap;
  clip-path: inset(-4px 0 -40px 100%);
  transition: clip-path 0.45s cubic-bezier(0.76, 0, 0.24, 1), background-color 0.2s var(--bhg-ease);
}
.bhg-top:focus-visible .bhg-top__label { clip-path: inset(-4px 0 -40px -40px); }
@media (hover: hover) {
  .bhg-top:hover .bhg-top__label { clip-path: inset(-4px 0 -40px -40px); }
}
.bhg-top:active .bhg-top__label { background: var(--bhg-bronze-deep); }
@media (min-width: 768px) and (min-aspect-ratio: 4/5), (pointer: fine) {
  .bhg-footer__base { padding-right: 78px; }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-top { right: 14px; bottom: calc(14px + var(--bhg-safe-bottom)); }
  .bhg-top__mark { width: 46px; height: 46px; }
  .bhg-top__mark svg { width: 21px; height: 21px; }
  .bhg-top__label { display: none; }
}
@media (pointer: coarse) and (max-width: 767px), (pointer: coarse) and (max-aspect-ratio: 4/5) {
  .bhg-call ~ .bhg-top { bottom: calc(14px + 46px + 10px + var(--bhg-safe-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-top, .bhg-top.is-shown, .bhg-header.is-menu-open ~ .bhg-top.is-shown { transform: none; transition: visibility 0s; }
  .bhg-top__label { transition: none; }
}
.bhg-cookie {
  position: fixed;
  inset: auto 0 0;
  z-index: 110;
  width: min(442px, 100%);
  margin-inline: auto;
  padding: 16px 16px calc(16px + var(--bhg-safe-bottom));
  background: var(--bhg-paper);
  color: var(--bhg-ink);
  box-shadow: 0 -14px 36px -14px rgb(30 20 16 / 0.42);
  visibility: hidden;
  clip-path: inset(100% -60px -60px -60px);
  transform: translate3d(0, 16px, 0);
  transition: clip-path 0.7s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s linear 0.9s;
}
.bhg-cookie.is-shown {
  visibility: visible;
  clip-path: inset(-60px -60px -60px -60px);
  transform: none;
  transition: clip-path 0.7s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s;
}
.bhg-header.is-menu-open ~ .bhg-cookie.is-shown {
  visibility: hidden;
  clip-path: inset(100% -60px -60px -60px);
  transform: translate3d(0, 16px, 0);
  transition: clip-path 0.4s var(--bhg-ease), transform 0.4s var(--bhg-ease), visibility 0s linear 0.4s;
}
.bhg-cookie__title {
  margin: 0 0 4px;
  font-family: var(--bhg-font-display);
  font-size: 13px;
  line-height: 1.3;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.bhg-cookie__text {
  margin: 0;
  font-family: var(--bhg-font-body);
  font-size: 13px;
  line-height: 1.3;
  color: var(--bhg-muted);
}
.bhg-cookie__link {
  color: var(--bhg-bronze-deep);
  font-weight: 700;
  text-decoration: none;
}
.bhg-cookie__link:focus-visible { outline: 2px solid var(--bhg-ink); outline-offset: 2px; }
.bhg-cookie__option {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin-top: 8px;
  font-family: var(--bhg-font-body);
  font-size: 13px;
  line-height: 1.3;
  color: var(--bhg-muted);
  cursor: pointer;
}
.bhg-cookie__option input {
  appearance: none;
  flex: none;
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  margin: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: inset 0 0 0 1px var(--bhg-muted);
  cursor: pointer;
}
.bhg-cookie__option input::after {
  content: "";
  width: 10px;
  height: 10px;
  background: var(--bhg-bronze-deep);
  transform: scale(0);
  transition: transform 0.15s ease;
}
.bhg-cookie__option input:checked::after { transform: scale(1); }
.bhg-cookie__option input:focus-visible { outline: 2px solid var(--bhg-ink); outline-offset: 2px; }
.bhg-cookie__actions {
  display: flex;
  gap: 8px;
  margin-top: 12px;
}
.bhg-cookie__actions .bhg-btn { flex: 1 1 auto; min-height: 32px; padding: 6px 8px; font-size: 10px; letter-spacing: 0.08em; white-space: nowrap; }
.bhg-cookie-open {
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  cursor: pointer;
}
.bhg-cookie__actions :is(.bhg-btn:focus-visible) { outline: 2px solid var(--bhg-ink); outline-offset: 3px; }
.bhg-cookie__more {
  background: none;
  color: var(--bhg-ink);
  transition: background-color 0.2s var(--bhg-ease), color 0.2s var(--bhg-ease);
}
@media (hover: hover) {
  .bhg-cookie__more:hover { background: var(--bhg-bronze); color: var(--bhg-cream); }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-cookie { padding: 12px var(--bhg-gutter) calc(12px + var(--bhg-safe-bottom)); }
  .bhg-cookie__actions { gap: 6px; margin-top: 10px; }
  .bhg-cookie__actions .bhg-btn { min-height: 38px; padding: 6px; font-size: 9.5px; letter-spacing: 0.05em; }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-cookie, .bhg-cookie.is-shown, .bhg-header.is-menu-open ~ .bhg-cookie.is-shown { transform: none; transition: visibility 0s; }
}
.bhg-library { text-shadow: 0 0 6px rgb(200 184 172 / 0.9), 0 0 16px rgb(190 174 162 / 0.85), 0 0 32px rgb(178 161 148 / 0.7), 0 0 56px rgb(166 148 134 / 0.45); }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-library { text-shadow: 0 0 3px rgb(200 184 172 / 0.95), 0 0 10px rgb(186 168 154 / 0.8); }
}
.bhg-library :is(.bhg-btn, figure, figcaption, video, [class*='__play']) { text-shadow: none; }
:where(.bhg-btn--camel, .bhg-header__back, .bhg-menu__social a, .bhg-clip__sound, .bhg-fan__close, .bhg-clip__icon, .bhg-film__play-icon, .bhg-library__icon, .bhg-call__mark, .bhg-call__label, .bhg-top__mark, .bhg-top__label) {
  position: relative;
  --bhg-depth-side: rgb(46 36 33 / 0.92); 
  --bhg-depth-face:
    inset 0 1px 0 rgb(255 243 232 / 0.34),
    inset 0 12px 14px -12px rgb(255 240 226 / 0.2),
    inset 0 -10px 14px -10px rgb(20 12 10 / 0.24),
    inset 0 -1px 0 rgb(20 12 10 / 0.3);
  --bhg-depth-face-pressed:
    inset 0 1px 0 rgb(255 243 232 / 0.1),
    inset 0 12px 14px -12px rgb(20 12 10 / 0.18),
    inset 0 -10px 14px -10px rgb(20 12 10 / 0.1),
    inset 0 1px 3px rgb(20 12 10 / 0.3);
  --bhg-depth-out:
    0 1px 0 var(--bhg-depth-side),
    0 2px 0 rgb(46 36 33 / 0.3),
    0 3px 4px rgb(20 12 10 / 0.16),
    0 12px 20px -10px rgb(20 12 10 / 0.34),
    0 26px 40px -20px rgb(20 12 10 / 0.3);
  --bhg-depth-out-hover:
    0 1px 0 var(--bhg-depth-side),
    0 2px 0 rgb(46 36 33 / 0.3),
    0 4px 6px rgb(20 12 10 / 0.16),
    0 16px 26px -12px rgb(20 12 10 / 0.36),
    0 34px 50px -22px rgb(20 12 10 / 0.32);
  --bhg-depth-out-pressed:
    0 0 0 var(--bhg-depth-side),
    0 1px 0 rgb(46 36 33 / 0.3),
    0 1px 2px rgb(20 12 10 / 0.2),
    0 5px 10px -6px rgb(20 12 10 / 0.3),
    0 10px 18px -12px rgb(20 12 10 / 0.2);
}
:where(.bhg-header__back) { --bhg-depth-side: rgb(170 150 132 / 0.95); }
.bhg-header .bhg-btn--camel { --bhg-depth-side: color-mix(in srgb, rgb(46 36 33 / 0.92) calc(var(--p) * 100%), rgb(170 150 132 / 0.95)); }
:where(.bhg-btn--camel, .bhg-header__back, .bhg-menu__social a, .bhg-clip__sound, .bhg-fan__close, .bhg-clip__icon, .bhg-film__play-icon, .bhg-library__icon, .bhg-call__mark, .bhg-call__label, .bhg-top__mark, .bhg-top__label)::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(104deg, rgb(255 246 236 / 0) 42%, rgb(255 246 236 / 0.08) 46%, rgb(255 248 240 / 0.34) 50%, rgb(255 246 236 / 0.08) 54%, rgb(255 246 236 / 0) 58%) 0% 0 / 300% 100% no-repeat,
    radial-gradient(130% 150% at 18% -18%, rgb(255 244 232 / 0.26), rgb(255 244 232 / 0.07) 38%, rgb(255 244 232 / 0) 62%);
}
html .bhg-btn--camel,
html .bhg-header__back,
html .bhg-menu__social a,
html .bhg-clip__sound,
html .bhg-fan__close,
html .bhg-clip__icon,
html .bhg-film__play-icon,
html .bhg-library__icon,
html .bhg-header .bhg-header__book:is(:hover, :focus-visible) {
  box-shadow: var(--bhg-depth-face), var(--bhg-depth-out);
}
html .bhg-btn--camel,
html .bhg-menu__foot .bhg-menu__book,
html .bhg-call__label { text-shadow: 0 -1px 0 rgb(20 12 10 / 0.32); }
html .bhg-header .bhg-btn--camel {
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--bhg-bronze) calc(var(--p) * 100%), var(--hdr-fg)),
    var(--bhg-depth-face),
    var(--bhg-depth-out);
  text-shadow: none;
}
html .bhg-header[data-tone='dark'] .bhg-btn--camel,
html .bhg-header.is-menu-open .bhg-btn--camel { text-shadow: 0 -1px 0 rgb(20 12 10 / 0.32); }
@media (min-width: 768px) and (min-aspect-ratio: 4/5) {
  html .bhg-header .bhg-btn--camel {
    --bhg-depth-face:
      inset 0 1px 0 rgb(255 243 232 / 0.3),
      inset 0 12px 14px -12px rgb(255 240 226 / 0.18),
      inset 0 -12px 16px -14px rgb(20 12 10 / 0.16);
    --bhg-depth-out:
      0 1px 2px rgb(46 36 33 / 0.22),
      0 6px 12px -6px rgb(20 12 10 / 0.24),
      0 18px 30px -16px rgb(20 12 10 / 0.26);
    --bhg-depth-out-hover:
      0 1px 2px rgb(46 36 33 / 0.22),
      0 8px 16px -8px rgb(20 12 10 / 0.26),
      0 24px 38px -18px rgb(20 12 10 / 0.28);
    --bhg-depth-out-pressed:
      0 1px 1px rgb(46 36 33 / 0.2),
      0 4px 8px -5px rgb(20 12 10 / 0.22);
    box-shadow:
      inset 0 0 0 1px color-mix(in srgb, transparent calc(var(--p) * 100%), var(--hdr-fg)),
      var(--bhg-depth-face),
      var(--bhg-depth-out);
  }
}
html .bhg-header__back { box-shadow: inset 0 0 0 1px var(--bhg-ink), var(--bhg-depth-face), var(--bhg-depth-out); }
html .bhg-header__back:is(:hover, :focus-visible) {
  --bhg-depth-side: rgb(46 36 33 / 0.92);
  box-shadow: inset 0 0 0 1px var(--bhg-bronze-deep), var(--bhg-depth-face), var(--bhg-depth-out);
}
html .bhg-call {
  box-shadow: 0 1px 0 rgb(46 36 33 / 0.92), 0 2px 0 rgb(46 36 33 / 0.3), 0 3px 4px rgb(20 12 10 / 0.16), 0 12px 20px -10px rgb(20 12 10 / 0.34), 0 26px 40px -20px rgb(20 12 10 / 0.3);
}
html .bhg-call__mark, html .bhg-call__label { box-shadow: var(--bhg-depth-face); }
html .bhg-top__mark, html .bhg-top__label { box-shadow: var(--bhg-depth-face), var(--bhg-depth-out); }
html .bhg-top__label { text-shadow: 0 -1px 0 rgb(20 12 10 / 0.32); }
html .bhg-top:active { translate: 0 1px; }
html .bhg-top:active :is(.bhg-top__mark, .bhg-top__label) { box-shadow: var(--bhg-depth-face-pressed), var(--bhg-depth-out-pressed); }
html .bhg-top:active :is(.bhg-top__mark, .bhg-top__label)::after { filter: brightness(0.6); }
@media (hover: hover) {
  html :is(.bhg-btn--camel, .bhg-menu__social a, .bhg-clip__sound, .bhg-fan__close):hover {
    translate: 0 -1px;
    box-shadow: var(--bhg-depth-face), var(--bhg-depth-out-hover);
  }
  html .bhg-header .bhg-header__book:hover { box-shadow: var(--bhg-depth-face), var(--bhg-depth-out-hover); }
  html .bhg-header__back:hover {
    translate: 0 -1px;
    box-shadow: inset 0 0 0 1px var(--bhg-bronze-deep), var(--bhg-depth-face), var(--bhg-depth-out-hover);
  }
}
html :is(.bhg-btn--camel, .bhg-menu__social a, .bhg-clip__sound, .bhg-fan__close, .bhg-header__back):active,
html .bhg-header .bhg-header__book:active,
html .bhg-clip__play:active .bhg-clip__icon,
html .bhg-film__play:active .bhg-film__play-icon,
html .bhg-fan__face:active .bhg-library__icon {
  translate: 0 1px;
  box-shadow: var(--bhg-depth-face-pressed), var(--bhg-depth-out-pressed);
}
html .bhg-call:active {
  translate: 0 1px;
  box-shadow: 0 0 0 rgb(46 36 33 / 0.92), 0 1px 0 rgb(46 36 33 / 0.3), 0 1px 2px rgb(20 12 10 / 0.2), 0 5px 10px -6px rgb(20 12 10 / 0.3), 0 10px 18px -12px rgb(20 12 10 / 0.2);
}
html .bhg-call:active :is(.bhg-call__mark, .bhg-call__label) { box-shadow: var(--bhg-depth-face-pressed); }
html :is(.bhg-btn--camel, .bhg-header__back, .bhg-menu__social a, .bhg-clip__sound, .bhg-fan__close, .bhg-call__mark, .bhg-call__label):active::after,
html .bhg-call:active :is(.bhg-call__mark, .bhg-call__label)::after { filter: brightness(0.6); }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  html .bhg-header .bhg-header__book,
  html .bhg-call,
  html .bhg-header.is-menu-open .bhg-header__book.is-shown,
  html .bhg-header.is-menu-open ~ .bhg-call.is-shown { clip-path: inset(100% -40px 0 -40px); }
  html .bhg-header .bhg-header__book.is-shown,
  html .bhg-call.is-shown { clip-path: inset(-40px -40px -40px -40px); }
}
@property --pearl-x { syntax: '<percentage>'; inherits: true; initial-value: 34%; }
@property --pearl-y { syntax: '<percentage>'; inherits: true; initial-value: 27%; }
@property --pearl-orient { syntax: '<angle>'; inherits: true; initial-value: 210deg; }
.bhg-burger__icon {
  --pearl-x: 34%;
  --pearl-y: 27%;
  background:
    radial-gradient(circle at var(--pearl-x) var(--pearl-y), #fff 0 4%, rgb(255 255 255 / 0.9) 8%, rgb(255 255 255 / 0) 22%),
    radial-gradient(circle at var(--pearl-x) var(--pearl-y), rgb(255 255 255 / 0.85) 0, rgb(252 253 252 / 0.35) 30%, rgb(252 253 252 / 0) 55%),
    radial-gradient(60% 34% at calc(100% - var(--pearl-x) + 14%) 94%, rgb(250 250 246 / 0.75), rgb(250 250 246 / 0) 100%),
    radial-gradient(circle at var(--pearl-x) var(--pearl-y), rgb(150 152 150 / 0) 26%, rgb(150 152 150 / 0.22) 62%, rgb(112 114 112 / 0.4) 92%),
    #eeeeea;
  box-shadow:
    inset 0 0 0 0.5px rgb(255 255 255 / 0.55),
    inset 0 0 3px 1px rgb(255 252 248 / 0.4),
    0 1px 1px rgb(58 40 30 / 0.22),
    0 5px 9px -3px rgb(58 40 30 / 0.24),
    0 16px 28px -12px rgb(58 40 30 / 0.42);
  animation: bhg-knob-in 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.35s backwards, bhg-pearl-breathe 16s linear infinite;
}
.bhg-burger__icon::before {
  background: conic-gradient(
    from var(--pearl-orient) at var(--pearl-x) var(--pearl-y),
    rgb(244 232 238 / 0.5),
    rgb(232 238 244 / 0.45),
    rgb(234 242 236 / 0.45),
    rgb(244 240 230 / 0.5),
    rgb(238 234 244 / 0.45),
    rgb(244 232 238 / 0.5)
  );
  -webkit-mask: radial-gradient(circle at var(--pearl-x) var(--pearl-y), transparent 0 24%, rgb(0 0 0 / 0.5) 46%, rgb(0 0 0 / 0.7) 64%, rgb(0 0 0 / 0.2) 92%);
  mask: radial-gradient(circle at var(--pearl-x) var(--pearl-y), transparent 0 24%, rgb(0 0 0 / 0.5) 46%, rgb(0 0 0 / 0.7) 64%, rgb(0 0 0 / 0.2) 92%);
  mix-blend-mode: multiply;
}
@keyframes bhg-pearl-breathe { to { --pearl-orient: 570deg; } }
.bhg-burger:focus-visible .bhg-burger__icon {
  box-shadow:
    inset 0 0 0 0.5px rgb(255 255 255 / 0.55),
    0 0 0 3px var(--bhg-ivory),
    0 0 0 4.5px var(--bhg-bronze);
}
@media (prefers-reduced-motion: reduce) {
  .bhg-burger__icon { animation: none; }
}


.bhg-cine {
  position: relative;
  background: var(--bhg-wall);
}
.bhg-cine__stage {
  --cine-fg: var(--bhg-ink);
  --scrim-rgb: 203 171 152; 
  position: relative;
  height: 100vh;
  height: 100lvh;
  overflow: hidden;
  background: var(--bhg-wall);
}
.bhg-cine__stage[data-tone='dark'] {
  --cine-fg: var(--bhg-cream);
  --scrim-rgb: 14 10 7;
}
.bhg-cine__media { position: absolute; inset: 0; }
.bhg-cine__frame,
.bhg-cine__camera {
  position: absolute;
  inset: 0;
  transform-origin: 50% 50%;
}
.bhg-cine__poster img,
.bhg-cine__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.bhg-cine__poster { position: absolute; inset: 0; z-index: 1; transition: opacity 0.45s var(--bhg-ease); }
.bhg-cine.has-frame .bhg-cine__poster { opacity: 0; }
.bhg-cine__video { background: transparent; }
.bhg-cine__vignette {
  position: absolute;
  inset: 0;
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 92% 88% at 50% 46%, rgb(36 22 12 / 0) 48%, rgb(36 22 12 / 0.2) 78%, rgb(36 22 12 / 0.44) 100%);
}
.bhg-cine__scrim {
  position: absolute;
  inset: 0;
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgb(var(--scrim-rgb) / 0.74) 0%, rgb(var(--scrim-rgb) / 0.4) 36%, rgb(var(--scrim-rgb) / 0) 70%);
}
.bhg-cine__dim {
  position: absolute;
  inset: 0;
  z-index: 4;
  opacity: 0;
  will-change: opacity; 
  pointer-events: none;
  background: rgb(20 13 8);
}
.bhg-cine[data-transition='sheet'] .bhg-cine__web,
.bhg-cine[data-transition='zoom'] .bhg-cine__web { display: none; }
.bhg-cine[data-transition='zoom'] .bhg-cine__dim { background: #0b0909; }
.bhg-cine[data-transition='sheet'] .bhg-cine__frame { transform-origin: 50% 40%; }
.bhg-cine__cues,
.bhg-cine__web {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
}
.bhg-cue { color: var(--cue-color, var(--cine-fg)); transition: color 0.6s var(--bhg-ease); }
.bhg-cue[data-visible] { pointer-events: auto; }
.bhg-cue h1, .bhg-cue h2, .bhg-cue p { margin: 0; }
[data-cue-part] { display: block; }
.bhg-cue[data-place] {
  position: absolute;
  left: var(--cue-left, auto);
  right: var(--cue-right, auto);
  top: var(--cue-top, auto);
  bottom: var(--cue-bottom, auto);
  max-width: var(--cue-max, none);
  text-align: var(--cue-align, left);
  translate: 0 var(--cue-shift-y, 0);
}
.bhg-tagline {
  font-family: var(--bhg-font-display);
  font-weight: 500;
  font-size: var(--cue-size, clamp(30px, 3.6vw, 66px));
  line-height: 0.86;
  letter-spacing: -0.01em;
  text-transform: uppercase;
  white-space: nowrap;
}
.bhg-tagline__top { display: flex; align-items: flex-end; }
.bhg-tagline__words { display: block; text-align: right; }
.bhg-tagline__words span,
.bhg-tagline__bottom span { display: block; }
.bhg-tagline__amp {
  flex: none;
  height: 1.72em;
  aspect-ratio: 85.5 / 60;
  margin: 0 0 0.07em 0.1em;
  background: currentColor;
  -webkit-mask: url('../public/brand/ampersand.svg') center / contain no-repeat;
  mask: url('../public/brand/ampersand.svg') center / contain no-repeat;
}
.bhg-tagline__bottom { display: block; margin-left: 2.42em; }
.bhg-tagline__mask { clip-path: inset(-0.6em -0.6em 0 -0.6em); }
.bhg-tagline .bhg-tagline__ch {
  display: inline-block;
  transform-origin: 50% 100%;
  backface-visibility: hidden;
}
.bhg-cue__title {
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: var(--cue-size, clamp(36px, 5vw, 84px));
  line-height: 0.98;
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-cue--graphic .bhg-cue__title { line-height: 0.95; }
.bhg-cue--graphic .bhg-cue__title span:nth-child(2) { margin-left: 0.62em; }
.bhg-cue--intimate .bhg-cue__title { line-height: 1.1; letter-spacing: 0.045em; }
.bhg-cue__sub,
.bhg-cine__sub {
  font-family: var(--bhg-font-body);
  font-weight: 300;
  font-size: clamp(16px, 1.2vw, 19px);
  line-height: 1.5;
  letter-spacing: 0.02em;
  max-width: 44ch;
}
.bhg-cue__sub { max-width: 30ch; }
.bhg-cue__sub { margin-top: 18px !important; opacity: 0.9; }
.bhg-cine__web {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(16px, 2vw, 32px);
  align-items: center;
  padding: calc(var(--bhg-header-h) + var(--bhg-safe-top) + 24px) var(--bhg-gutter) 40px;
}
.bhg-cine__col {
  grid-column: 1 / span 7;
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 5svh, 56px);
}
.bhg-cine__copy {
  --film: calc(1 - var(--cine-web, 0));
  color: color-mix(in srgb, var(--bhg-ink) calc(var(--cine-web, 0) * 100%), var(--cine-fg));
  transform: translate3d(0, calc(var(--film) * 15svh), 0);
}
.bhg-cine__headline {
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(30px, min(4.1vw, 7.2svh), 66px);
  line-height: 1;
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-cine__headline-inner {
  display: block;
  transform-origin: 0 100%;
  transform: scale(calc(1 + (var(--cine-finale-scale, 1) - 1) * var(--film)));
}
.bhg-cine__headline-inner > span { display: block; white-space: nowrap; }
.bhg-cine__sub { margin-top: clamp(16px, 2.4svh, 24px) !important; }
.bhg-cine__actions {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 32px;
  margin-top: clamp(22px, 3.6svh, 36px);
}
.bhg-cine__slot {
  grid-column: 8 / -1;
  justify-self: end;
  height: min(calc(100svh - var(--bhg-header-h) - var(--bhg-safe-top) - 88px), calc((100vw - 2 * var(--bhg-gutter)) * 5 / 12 * 1.25));
  aspect-ratio: 4 / 5;
}
.bhg-cine__still { display: none; }
html:not(.bhg-cine-on) .bhg-cine__poster,
html:not(.bhg-cine-on) .bhg-cine__video,
html:not(.bhg-cine-on) .bhg-cue:not([data-cue='brand']):not([data-cue='finale']) { display: none; }
html:not(.bhg-cine-on) .bhg-cine__still { display: block; position: absolute; inset: 0; }
html:not(.bhg-cine-on) .bhg-cine__still img { width: 100%; height: 100%; object-fit: cover; }
html:not(.bhg-cine-on) .bhg-cine__stage { --cine-fg: var(--bhg-cream); --scrim-rgb: 14 10 7; }
html:not(.bhg-cine-on) .bhg-cine__scrim { opacity: 0.6; }
html:not(.bhg-cine-on) .bhg-cine__vignette { opacity: 0.34; }
html:not(.bhg-cine-on) .bhg-cine__copy { transform: none; }
html:not(.bhg-cine-on) .bhg-cue { pointer-events: auto; }
html:not(.bhg-cine-on) .bhg-cue[data-cue='brand'] {
  left: var(--bhg-gutter);
  top: calc(var(--bhg-header-h) + var(--bhg-safe-top) + 40px);
}
html:not(.bhg-cine-on) .bhg-tagline { font-size: 22px; }
.bhg-cine-on .bhg-cine {
  height: calc(var(--cine-scroll, 740) * 1vh + 100vh);
  height: calc(var(--cine-scroll, 740) * 1svh + 100lvh); 
}
.bhg-cine-on .bhg-cine__stage { position: sticky; top: 0; }
.bhg-cine-on .bhg-cine__frame,
.bhg-cine-on .bhg-cine__camera { will-change: transform; }
.bhg-cine-on [data-cue-part],
.bhg-cine-on .bhg-cue:not(:has([data-cue-part])) { opacity: 0; }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-cine__scrim {
    background: linear-gradient(0deg, rgb(var(--scrim-rgb) / 0.82) 0%, rgb(var(--scrim-rgb) / 0.46) 30%, rgb(var(--scrim-rgb) / 0) 56%);
  }
  .bhg-cine__vignette {
    background: radial-gradient(ellipse 120% 80% at 50% 42%, rgb(36 22 12 / 0) 50%, rgb(36 22 12 / 0.36) 100%);
  }
  .bhg-cue--graphic .bhg-cue__title span:nth-child(2) { margin-left: 0.4em; }
    .bhg-cue__sub { font-size: 16px; margin-top: 14px !important; }
  .bhg-cine__web {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    padding: calc(var(--bhg-header-h) + var(--bhg-safe-top) + 12px) 20px calc(24px + var(--bhg-safe-bottom));
  }
  .bhg-cine__col { display: contents; }
  .bhg-cine__slot {
    order: 1;
    justify-self: auto;
    height: min(calc((100vw - 40px) * 1.25), calc(100svh - var(--bhg-header-h) - var(--bhg-safe-top) - var(--bhg-safe-bottom) - 210px));
  }
  .bhg-cine__copy {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: calc(30px + var(--bhg-safe-bottom));
    transform: none;
  }
  .bhg-cine__headline { font-size: clamp(30px, 9.4vw, 46px); line-height: 1.02; }
  .bhg-cine__headline-inner > span { white-space: normal; }
  .bhg-cine__sub { font-size: 16px; margin-top: 14px !important; }
  .bhg-cine__actions { gap: 16px 24px; margin-top: 22px; }
  html:not(.bhg-cine-on) .bhg-cine__scrim { opacity: 0.9; }
  html:not(.bhg-cine-on) .bhg-cine__slot { display: none; }
}


.bhg-intro { display: none; }
.bhg-cine-on .bhg-intro { display: block; pointer-events: none; }
.bhg-intro__veil {
  position: absolute;
  inset: 0;
  z-index: 5;
  background: var(--bhg-wall);
}
.bhg-intro__canvas {
  position: absolute;
  inset: 0;
  z-index: 6;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.bhg-intro__canvas.is-ready { animation: bhg-intro-in 0.35s cubic-bezier(0.22, 0.61, 0.36, 1); }
@keyframes bhg-intro-in { from { opacity: 0; } }
.bhg-intro__logo {
  --intro-logo-w: clamp(280px, 33vw, 620px);
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 6;
  width: var(--intro-logo-w);
  height: auto;
  translate: -50% -50%;
  transform-origin: 0 0;
  opacity: 0;
  will-change: transform;
}
.bhg-mirror {
  position: absolute;
  inset: 0;
  z-index: 5;
  visibility: hidden;
  clip-path: circle(0 at 50% 50%);
}
.bhg-mirror canvas { display: block; width: 100%; height: 100%; }
.bhg-mirror__ring {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 5;
  visibility: hidden;
  border-radius: 50%;
  border: 1px solid rgb(211 166 132 / 0.95);
  outline: 1px solid rgb(211 166 132 / 0.45);
  outline-offset: 7px;
  box-shadow:
    0 34px 60px -34px rgb(90 67 48 / 0.55),
    0 10px 22px -14px rgb(90 67 48 / 0.35),
    inset 0 0 0 1px rgb(255 255 255 / 0.28),
    inset 0 0 38px rgb(40 28 18 / 0.22);
  pointer-events: none;
  will-change: transform;
}
@font-face {
  font-family: 'Montserrat Hi';
  src: url('../public/fonts/montserrat-560-hi.woff2') format('woff2');
  font-weight: 560;
  font-style: normal;
  font-display: block;
}
.bhg-intro__hi {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 6;
  margin: 0;
  translate: -50% -50%;
  font-family: 'Montserrat Hi', var(--bhg-font-display);
  font-weight: 560;
  text-transform: uppercase;
  font-size: clamp(min(2.75rem, 10.6vw), 7.5vw, 7rem);
  line-height: 1;
  letter-spacing: 0.12em;
  margin-right: -0.12em; 
  white-space: nowrap;
  color: #1d1b1c;
  text-shadow:
    0 -0.006em 0 rgb(255 248 240 / 0.12),
    0.005em 0.01em 0 #161415,
    0.01em 0.02em 0 #131112,
    0.015em 0.03em 0 #111010,
    0.02em 0.04em 0 #0e0d0d,
    0.06em 0.12em 0.14em rgb(22 19 18 / 0.42),
    0.1em 0.26em 0.5em rgb(22 19 18 / 0.26);
  visibility: hidden;
  clip-path: inset(0 100% 0 0);
}
.bhg-intro__hi.is-on {
  visibility: visible;
  animation: bhg-hi-in 0.6s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}
.bhg-intro__hi.is-out { animation: bhg-hi-out 0.45s cubic-bezier(0.55, 0, 0.75, 0.2) both; }
@keyframes bhg-hi-in {
  from { clip-path: inset(0 100% 0 0); filter: blur(10px); scale: 0.94; }
  to { clip-path: inset(-20% -5% -20% -5%); filter: blur(0); scale: 1; }
}
@keyframes bhg-hi-out {
  from { clip-path: inset(-20% -5% -20% -5%); filter: blur(0); scale: 1; }
  to { clip-path: inset(-20% -5% -20% 100%); filter: blur(8px); scale: 1.04; }
}
.bhg-header__logo img { opacity: var(--bhg-header-logo, 1); }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-intro__logo { --intro-logo-w: 58vw; }
}


.bhg-sheets {
  position: relative;
  z-index: 4; 
}
.bhg-cine-on .bhg-sheets {
  margin-top: -100vh;
  margin-top: -100svh;
}
.bhg-cine-on.bhg-zoom-on .bhg-sheets {
  margin-top: calc(-100vh - var(--cine-zoom, 0) * 1vh);
  margin-top: calc(-100svh - var(--cine-zoom, 0) * 1svh);
}
.bhg-sheet {
  position: relative;
  background: var(--bhg-wall);
  box-shadow: 0 -28px 70px rgb(40 26 14 / 0.16);
}
.bhg-split, .bhg-team, .bhg-shop { background: var(--bhg-paper); }
.bhg-split, .bhg-team, .bhg-shop, .bhg-join { font-weight: 360; }
.bhg-split__body .bhg-split__lead, .bhg-join__text .bhg-join__lead { font-weight: 330; }
:is(.bhg-split, .bhg-team, .bhg-shop, .bhg-join) strong { font-weight: 560; }
.bhg-sheets[data-sheets-ready] .bhg-sheet:not(:last-child) {
  position: sticky;
  top: var(--sheet-top, 0px);
}
.bhg-sheets[data-sheets-ready] .bhg-sheet + .bhg-sheet { margin-top: 34svh; }
.bhg-sheets[data-sheets-ready] [data-reveal] {
  opacity: 0;
  transform: translate3d(0, 22px, 0);
  transition: opacity 0.9s var(--bhg-ease), transform 0.9s var(--bhg-ease);
  transition-delay: calc(var(--reveal-i, 0) * 90ms);
}
.bhg-sheets[data-sheets-ready] [data-reveal].is-in { opacity: 1; transform: none; }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-sheets[data-sheets-ready] [data-reveal] {
    transform: translate3d(0, 10px, 0);
    transition-duration: 0.5s;
    transition-delay: calc(min(var(--reveal-i, 0), 3) * 60ms);
  }
}
.bhg-sheets[data-sheets-ready] h2[data-reveal] {
  transform: scale(0.55);
  transform-origin: 0 100%;
  transition-duration: 1.2s;
}
.bhg-sheets[data-sheets-ready] h2[data-reveal].is-in { transform: none; }
.bhg-split {
  min-height: 100vh;
  min-height: 100lvh; 
  display: flex;
  align-items: center;
  padding: calc(var(--bhg-header-h) + 72px) var(--bhg-gutter) clamp(72px, 10svh, 120px);
}
.bhg-split__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(16px, 2vw, 32px);
  width: 100%;
  align-items: start;
}
.bhg-split__head { grid-column: 1 / span 6; }
.bhg-split__body { grid-column: 8 / -1; padding-top: 10px; }
.bhg-split__title {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(38px, min(5.2vw, 9svh), 92px);
  line-height: 0.98;
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-split__title span { display: block; }
.bhg-split__title span:nth-child(2) { margin-left: 0.6em; }
.bhg-split__body p {
  margin: 0 0 22px;
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.6;
  color: var(--bhg-muted);
}
.bhg-split__body .bhg-split__lead {
  font-size: clamp(21px, 1.75vw, 28px);
  line-height: 1.4;
  color: var(--bhg-ink);
  margin-bottom: 28px;
}
.bhg-split__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 32px;
  margin-top: clamp(32px, 5svh, 48px);
}
.bhg-split__photo {
  grid-column: 1 / span 6;
  grid-row: 1;
  justify-self: end;
  margin-right: clamp(0px, 3vw, 64px);
  width: min(100%, calc((100svh - var(--bhg-header-h) - 150px) * 0.5625 * 1.15));
  height: auto;
  aspect-ratio: 9 / 16;
  object-fit: cover;
  object-position: 97% 50%; 
}
.bhg-split__text { grid-column: 7 / -1; grid-row: 1; }
.bhg-split--clip .bhg-split__body { padding-top: clamp(28px, 4svh, 44px); }
@media (min-width: 1024px) and (min-aspect-ratio: 4/5) {
  .bhg-split--clip { align-items: flex-start; padding: calc(var(--bhg-header-h) + 20px) var(--bhg-gutter) 24px; }
}
@media (max-width: 1023px), (max-aspect-ratio: 4/5) {
  .bhg-split--clip .bhg-split__grid { row-gap: 44px; }
  .bhg-split__text, .bhg-split__photo { grid-column: 1 / -1; grid-row: auto; }
  .bhg-split__photo { justify-self: start; margin-right: 0; width: min(100%, 414px); }
}
.bhg-slide { --slide-scroll: 160; }
.bhg-slide__track { display: grid; grid-template-columns: minmax(0, 1fr); }
.bhg-slide__panel { margin: 0; min-width: 0; }
.bhg-slide__panel--intro,
.bhg-slide__panel--text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(56px, 9svh, 96px) var(--bhg-gutter);
}
.bhg-slide__panel--intro { padding-top: calc(var(--bhg-header-h) + clamp(40px, 6svh, 72px)); }
.bhg-slide__title {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: var(--slide-title, clamp(44px, min(6.7vw, 11.4svh), 132px));
  line-height: 0.96;
  letter-spacing: -0.01em;
  text-transform: uppercase;
}
.bhg-slide__title span { display: block; }
.bhg-slide__title span:nth-child(even) { margin-left: 0.5em; }
.bhg-slide__lead {
  margin: clamp(28px, 5svh, 52px) 0 0;
  max-width: 30em;
  font-size: clamp(21px, 1.75vw, 28px);
  line-height: 1.4;
}
.bhg-slide__more {
  margin: clamp(16px, 2.6svh, 24px) 0 0;
  max-width: 32em;
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.6;
  color: var(--bhg-muted);
}
.bhg-slide__panel--text > p {
  margin: 0 0 24px;
  max-width: 34em;
  font-size: clamp(19px, 1.5vw, 24px);
  line-height: 1.55;
  color: var(--bhg-muted);
}
.bhg-slide__panel--text > p:first-child { color: var(--bhg-ink); }
.bhg-slide__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 32px;
  margin-top: clamp(28px, 5svh, 48px);
}
.bhg-slide__panel--media { position: relative; overflow: hidden; aspect-ratio: 4 / 5; background: #ece2d8; }
.bhg-slide__panel--media img,
.bhg-slide__panel--media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (min-width: 901px) and (min-aspect-ratio: 4/5) {
  .bhg-slide__track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bhg-slide__panel--media { aspect-ratio: auto; min-height: 100vh; min-height: 100svh; }
  .bhg-slide__panel--text { grid-column: 1 / -1; align-items: center; }
  .bhg-slide__panel--intro { padding-right: clamp(32px, 4vw, 72px); }
  .bhg-sheets[data-sheets-ready] .bhg-slide {
    height: calc(100vh + var(--slide-scroll) * 1vh);
    height: calc(100svh + var(--slide-scroll) * 1svh);
  }
  .bhg-sheets[data-sheets-ready] .bhg-slide__stage {
    position: sticky;
    top: 0;
    height: 100vh;
    height: 100svh;
    overflow: hidden;
  }
  .bhg-sheets[data-sheets-ready] .bhg-slide__track {
    width: 150%;
    height: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    will-change: transform; 
  }
  .bhg-sheets[data-sheets-ready] .bhg-slide__panel { height: 100%; min-height: 0; }
  .bhg-sheets[data-sheets-ready] .bhg-slide__panel--text {
    grid-column: auto;
    align-items: flex-start;
    padding: calc(var(--bhg-header-h) + 24px) var(--bhg-gutter) 48px clamp(40px, 6vw, 112px);
  }
  .bhg-sheets[data-sheets-ready] .bhg-slide__panel--intro { padding-bottom: 48px; }
  @media (max-height: 720px) {
    .bhg-sheets[data-sheets-ready] .bhg-slide__panel--intro { padding-top: calc(var(--bhg-header-h) + 16px); padding-bottom: 20px; }
    .bhg-sheets[data-sheets-ready] .bhg-slide__title { font-size: min(var(--slide-title, 6.7vw), 9.4svh); }
    .bhg-sheets[data-sheets-ready] .bhg-slide__lead { margin-top: 18px; font-size: 19px; line-height: 1.35; }
    .bhg-sheets[data-sheets-ready] .bhg-slide__more { margin-top: 10px; font-size: 15px; line-height: 1.5; }
    .bhg-sheets[data-sheets-ready] .bhg-slide__actions { margin-top: 18px; }
  }
  .bhg-sheets[data-sheets-ready] .bhg-slide__panel--media img,
  .bhg-sheets[data-sheets-ready] .bhg-slide__panel--media video {
    left: -7%;
    width: 114%;
    max-width: none;
    transform: translate3d(-4.5%, 0, 0); 
    will-change: transform;
  }
}
.bhg-rows {
  list-style: none;
  margin: clamp(32px, 5svh, 56px) 0 0;
  padding: 0;
}
.bhg-rows li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
  padding: 12px 0;
}
.bhg-rows strong {
  font-family: var(--bhg-font-body);
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 0.01em;
}
.bhg-rows span { color: var(--bhg-muted); font-size: 16px; text-align: right; }
.bhg-rows--links { display: block; }
.bhg-rows a {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
  padding: 14px 0;
  text-decoration: none;
  transition: color 0.35s var(--bhg-ease);
}
.bhg-rows a:hover, .bhg-rows a:focus-visible { color: var(--bhg-bronze); }
.bhg-shop { --slide-title: clamp(42px, min(5.5vw, 11.4svh), 112px); }
.bhg-shop .bhg-slide__panel--media { background: #efe8e1; }
.bhg-shop__video { object-position: 50% 35%; }
.bhg-shop__range { width: 100%; }
.bhg-shop__tiles {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(10px, 1.1vw, 18px);
  max-width: min(100%, 68svh, 640px);
}
.bhg-shop__tiles img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  background: #f3ede7;
}
@media (min-width: 901px) and (min-aspect-ratio: 4/5) {
  .bhg-shop__range { max-width: 720px; }
  .bhg-sheets[data-sheets-ready] .bhg-shop .bhg-slide__panel--text { justify-content: safe center; padding-top: calc(var(--bhg-header-h) + 12px); padding-bottom: 20px; }
  .bhg-shop__list li { font-size: clamp(15px, 1.1vw, 17px); }
  .bhg-sheets[data-sheets-ready] .bhg-shop__range { max-width: none; }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-shop { --slide-title: clamp(40px, 12vw, 64px); }
  .bhg-shop__list li { grid-template-columns: 52px 1fr auto; }
}
.bhg-film {
  display: flex;
  align-items: center;
  min-height: 100vh;
  min-height: 100lvh;
  overflow: hidden;
  background: #0e0b09;
}
.bhg-film__frame {
  position: relative;
  width: 100%;
  height: 100vh;
  height: 100lvh;
}
.bhg-film__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bhg-film__play {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 22px;
  width: 100%;
  border: 0;
  background: none;
  color: var(--bhg-ink);
  cursor: pointer;
  transition: opacity 0.5s var(--bhg-ease);
}
.bhg-film__play-icon {
  display: grid;
  place-items: center;
  width: clamp(61px, 5.6vw, 86px);
  aspect-ratio: 1;
  background: color-mix(in srgb, var(--bhg-bronze) 75%, transparent);
  color: var(--bhg-cream);
  transition: background-color 0.4s var(--bhg-ease);
}
.bhg-film__play-icon::before {
  content: '';
  width: 0;
  height: 0;
  margin-left: 6%;
  border-style: solid;
  border-width: 8.8px 0 8.8px 14.4px;
  border-color: transparent transparent transparent currentColor;
}
.bhg-film__play:hover .bhg-film__play-icon,
.bhg-film__play:focus-visible .bhg-film__play-icon { background: color-mix(in srgb, var(--bhg-bronze-deep) 85%, transparent); }
.bhg-film__play { opacity: 0; pointer-events: none; }
.bhg-film__frame.needs-click .bhg-film__play { opacity: 1; pointer-events: auto; }
.bhg-model { background: var(--bhg-wall); }
.bhg-model__stage {
  position: relative;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  background: var(--bhg-wall);
  color: var(--bhg-ink);
}
.bhg-sheets[data-sheets-ready] .bhg-model {
  height: calc(100vh + var(--model-scroll, 130) * 1vh);
  height: calc(100svh + var(--model-scroll, 130) * 1svh);
}
.bhg-sheets[data-sheets-ready] .bhg-model__stage { position: sticky; top: 0; }
.bhg-zoom-on .bhg-sheets[data-sheets-ready] .bhg-model:first-child {
  height: calc(100vh + (var(--cine-zoom, 0) + var(--model-scroll, 130)) * 1vh);
  height: calc(100svh + (var(--cine-zoom, 0) + var(--model-scroll, 130)) * 1svh);
  box-shadow: none;
}
.bhg-zoom-on .bhg-model:first-child .bhg-model__dim { background: #0b0909; }
.bhg-model__media,
.bhg-model__frame,
.bhg-model__camera { position: absolute; inset: 0; }
.bhg-model__frame { transform-origin: 50% 40%; }
.bhg-sheets[data-sheets-ready] .bhg-model__frame,
.bhg-sheets[data-sheets-ready] .bhg-model__camera { will-change: transform; }
.bhg-model__poster img,
.bhg-model__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bhg-model__poster { position: absolute; inset: 0; z-index: 1; transition: opacity 0.45s var(--bhg-ease); }
.bhg-model.has-frame .bhg-model__poster { opacity: 0; }
.bhg-model__scrim { position: absolute; inset: 0; z-index: 2; opacity: 0; pointer-events: none; }
.bhg-model__dim {
  position: absolute;
  inset: 0;
  z-index: 4;
  opacity: 0;
  will-change: opacity; 
  pointer-events: none;
  background: rgb(20 13 8);
}
.bhg-model__cue {
  --cue-size: clamp(28px, 3.5vw, 64px);
  position: absolute;
  z-index: 3;
  left: 63vw;
  top: 21svh;
}
.bhg-model__cue h2 { margin: 0; }
.bhg-sheets[data-sheets-ready] .bhg-model__cue { opacity: 0; }
html:not(.bhg-cine-on) .bhg-model__cue .bhg-tagline { font-size: var(--cue-size); }
.bhg-tagline--style .bhg-tagline__bottom { margin-left: 1.5em; }
@media (max-width: 900px) {
  .bhg-split__head, .bhg-split__body { grid-column: 1 / -1; }
  .bhg-split__body { padding-top: clamp(36px, 6svh, 56px); }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-sheets[data-sheets-ready] .bhg-sheet + .bhg-sheet { margin-top: 18svh; }
  .bhg-split { padding: calc(var(--bhg-header-h) + 44px) 20px 72px; align-items: flex-start; }
  .bhg-split__title { font-size: clamp(34px, 10.4vw, 52px); }
  .bhg-split__title span:nth-child(2) { margin-left: 0.3em; }
  .bhg-slide__panel--intro, .bhg-slide__panel--text { padding-left: 20px; padding-right: 20px; }
  .bhg-slide__title { font-size: clamp(44px, 13.5vw, 72px); }
  .bhg-rows li { flex-direction: column; gap: 4px; }
  .bhg-rows span { text-align: left; }
  .bhg-model__scrim {
    opacity: 1;
    background: linear-gradient(0deg, rgb(249 242 236 / 0.66) 0%, rgb(249 242 236 / 0.34) 16%, rgb(249 242 236 / 0) 32%);
  }
  .bhg-model__cue {
    --cue-size: clamp(28px, 8.6vw, 38px);
    left: 20px;
    top: auto;
    bottom: calc(5svh + var(--bhg-safe-bottom));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-sheets[data-sheets-ready] [data-reveal],
  .bhg-sheets[data-sheets-ready] h2[data-reveal] { opacity: 1; transform: none; transition: none; }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-split__actions--desktop { display: none; }
}
.bhg-sheets[data-sheets-ready] [data-covered] video { visibility: hidden; }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-sheets[data-sheets-ready] [data-covered] { visibility: hidden; }
}


.bhg-team {
  --team-tile: #beaf9f; 
  --team-gap: clamp(12px, 1.3vw, 24px);
  --team-w: clamp(260px, calc(43svh * 514 / 486), 600px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100vh;
  min-height: 100lvh; 
  padding: calc(var(--bhg-header-h) + 48px) 0 clamp(40px, 6svh, 80px);
  overflow: hidden;
}
.bhg-team__head {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(16px, 2vw, 32px);
  align-items: end;
  padding: 0 var(--bhg-gutter);
  margin-bottom: clamp(32px, 5svh, 56px);
}
.bhg-team__heading { grid-column: 1 / span 6; }
.bhg-team__heading .bhg-eyebrow { margin-bottom: 20px; }
.bhg-team__title {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(34px, min(3.9vw, 8svh), 68px);
  line-height: 0.98;
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-team__intro {
  grid-column: 8 / -1;
  margin: 0;
  font-size: clamp(16px, 1.15vw, 18px);
  line-height: 1.6;
  color: var(--bhg-muted);
}
.bhg-team__slider { position: relative; }
.bhg-team__track {
  display: flex;
  gap: var(--team-gap);
  margin: 0;
  padding: 0 0 0 var(--bhg-gutter);
  list-style: none;
  overflow: auto hidden;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.bhg-team__track::-webkit-scrollbar { display: none; }
.bhg-team__track::after {
  content: '';
  flex: 0 0 max(1px, calc(var(--bhg-gutter) - var(--team-gap)));
}
.bhg-team__track:focus-visible { outline-offset: -2px; }
.bhg-team__track.is-dragging a { pointer-events: none; }
.bhg-team__tile {
  flex: none;
  width: var(--team-w);
}
.bhg-team__photo {
  aspect-ratio: 514 / 486;
  overflow: hidden;
  background: var(--team-tile);
}
.bhg-team__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 100%;
  user-select: none;
  -webkit-user-drag: none;
  transition: transform 1.2s var(--bhg-ease);
}
@media (hover: hover) {
  .bhg-team__tile:hover .bhg-team__photo img { transform: scale(1.03); }
}
.bhg-team__tile--open .bhg-team__photo {
  display: flex;
  align-items: flex-end;
  padding: 9%;
  background: #eaceb9; 
}
.bhg-team__ask {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-size: clamp(26px, min(2.5vw, 5svh), 46px);
  line-height: 1.04;
  letter-spacing: -0.005em;
  text-transform: uppercase;
  text-wrap: balance;
  color: var(--bhg-ink);
}
.bhg-team__name-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 20px;
}
.bhg-team__name {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(16px, 1.3vw, 20px);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.bhg-team__profile { flex: none; }
.bhg-team__profile:focus-visible { background: var(--bhg-bronze-deep); }
.bhg-team__role { margin: 6px 0 0; font-size: 16px; line-height: 1.4; color: var(--bhg-ink); }
.bhg-team__bio { margin: 10px 0 0; max-width: 54ch; font-size: 15px; line-height: 1.55; color: var(--bhg-muted); }
@media (max-width: 900px) {
  .bhg-team__heading, .bhg-team__intro { grid-column: 1 / -1; }
  .bhg-team__intro { margin-top: 20px; max-width: 46ch; }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-team {
    --team-w: min(78vw, 420px);
    justify-content: flex-start;
    padding: calc(var(--bhg-header-h) + 44px) 0 64px;
  }
  .bhg-team__head { padding: 0 20px; }
  .bhg-team__title { font-size: clamp(34px, 10.4vw, 52px); }
  .bhg-team__ask { font-size: clamp(24px, 7.4vw, 34px); }
  .bhg-team__track { padding-left: 20px; }
  .bhg-team__track::after { flex-basis: max(1px, calc(20px - var(--team-gap))); }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-team__photo img { transition: none; }
}
.bhg-menu__picture img[data-menu-img='team'] { object-position: 50% 42%; }


.bhg-library {
  --lib-gap: clamp(12px, 1.3vw, 24px);
  --lib-h: clamp(360px, 66svh, 760px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100vh;
  min-height: 100lvh; 
  padding: calc(var(--bhg-header-h) + 40px) 0 clamp(40px, 6svh, 72px);
  overflow: hidden;
}
.bhg-library__head {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(16px, 2vw, 32px);
  align-items: end;
  padding: 0 var(--bhg-gutter);
  margin-bottom: clamp(28px, 4.4svh, 48px);
}
.bhg-library__heading { grid-column: 1 / span 6; }
.bhg-library__heading .bhg-eyebrow { margin-bottom: 20px; }
.bhg-library__title {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(34px, min(3.9vw, 8svh), 68px);
  line-height: 0.98;
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-fan {
  position: relative;
  height: var(--lib-h);
  perspective: 1800px;
  perspective-origin: 50% 35%;
  touch-action: pan-y; 
  user-select: none;
  -webkit-user-select: none;
}
.bhg-fan.is-turning { cursor: grab; }
.bhg-fan.is-dragging { cursor: grabbing; }
.bhg-fan__deck {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  transform-style: preserve-3d;
  pointer-events: none;
}
.bhg-fan__card {
  --shade: 0;
  position: absolute;
  top: var(--fan-top, 0);
  left: 50%;
  width: var(--fan-w, calc(var(--lib-h) * 0.45));
  height: var(--fan-h, calc(var(--lib-h) * 0.8));
  margin-left: calc(var(--fan-w, calc(var(--lib-h) * 0.45)) / -2);
  transform-origin: 50% 50%;
  will-change: transform;
  pointer-events: auto;
}
.bhg-fan__card.is-lifted { visibility: hidden; }
.bhg-fan__face {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  width: 100%;
  padding: 0;
  border: 0;
  overflow: hidden;
  background: #efe8e1;
  color: var(--bhg-ink);
  cursor: pointer;
  box-shadow: 0 18px 40px -22px rgba(40, 28, 24, 0.55), 0 2px 6px rgba(40, 28, 24, 0.12);
}
.bhg-fan.is-dragging .bhg-fan__face { cursor: grabbing; }
.bhg-fan__face:focus-visible { outline-offset: -6px; }
.bhg-fan__face img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.bhg-fan__face::after {
  content: '';
  position: absolute;
  inset: 0;
  background: #2a201d;
  opacity: var(--shade);
  pointer-events: none;
}
.bhg-fan__face .bhg-library__icon {
  position: relative;
  z-index: 1;
  transform: scale(0);
}
.bhg-fan.is-open .bhg-fan__card.is-focus .bhg-library__icon { transform: scale(1); }
@media (hover: hover) {
  .bhg-fan.is-open .bhg-fan__card:hover .bhg-library__icon { transform: scale(1); }
  .bhg-fan__face:hover .bhg-library__icon { background: color-mix(in srgb, var(--bhg-bronze-deep) 85%, transparent); }
}
.bhg-library__icon {
  display: grid;
  place-items: center;
  width: clamp(51px, 4.32vw, 70px);
  aspect-ratio: 1;
  background: color-mix(in srgb, var(--bhg-bronze) 75%, transparent);
  color: var(--bhg-cream);
  transition: opacity 0.35s var(--bhg-ease), transform 0.5s var(--bhg-ease), background-color 0.4s var(--bhg-ease);
}
.bhg-library__icon::before {
  content: '';
  width: 0;
  height: 0;
  margin-left: 6%;
  border-style: solid;
  border-width: 7.2px 0 7.2px 12px;
  border-color: transparent transparent transparent currentColor;
}
.bhg-header__logo img {
  transform-origin: 50% 50%;
  transition: filter 0.5s var(--bhg-ease), transform 1.1s cubic-bezier(0.65, 0, 0.25, 1);
}
.bhg-header.is-menu-open .bhg-header__logo img { transform: none !important; }
.bhg-fan-open { overflow: hidden; }
.bhg-fan__player {
  position: fixed;
  inset: 0;
  width: 100vw;
  max-width: none;
  height: 100vh;
  height: 100dvh;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  background: none;
}
.bhg-fan__player[open] { display: grid; place-items: center; }
.bhg-fan__player::backdrop { background: none; }
.bhg-fan__dim {
  position: absolute;
  inset: 0;
  background: rgba(36, 27, 24, 0.64);
}
.bhg-fan__frame {
  position: relative;
  height: min(86svh, calc(88vw / var(--ar, 0.5625)));
  aspect-ratio: var(--ar, 0.5625);
  overflow: hidden;
  background: #efe8e1;
  box-shadow: 0 40px 90px -30px rgba(20, 14, 12, 0.7);
  will-change: transform;
  cursor: pointer;
}
.bhg-fan__frame video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bhg-fan__close {
  position: absolute;
  top: clamp(16px, 3vw, 36px);
  right: clamp(16px, 3vw, 36px);
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  padding: 0;
  border: 0;
  background: var(--bhg-bronze);
  color: var(--bhg-cream);
  cursor: pointer;
  transition: background-color 0.3s var(--bhg-ease);
}
.bhg-fan__close:hover { background: var(--bhg-bronze-deep); }
.bhg-fan__close:focus-visible { outline: 2px solid var(--bhg-ivory); outline-offset: 3px; }
.bhg-fan__close span { position: relative; width: 22px; height: 22px; }
.bhg-fan__close span::before,
.bhg-fan__close span::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1.5px;
  background: currentColor;
  transform: rotate(45deg);
}
.bhg-fan__close span::after { transform: rotate(-45deg); }
@media (max-width: 900px) {
  .bhg-library__heading { grid-column: 1 / -1; }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-library {
    --lib-h: clamp(340px, 64svh, 660px); 
    justify-content: flex-start;
    padding: calc(var(--bhg-header-h) + 44px) 0 64px;
  }
  .bhg-library__head { padding: 0 20px; }
  .bhg-library__title { font-size: clamp(34px, 10.4vw, 52px); }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-library__icon, .bhg-fan__close { transition: none; }
  .bhg-header__logo img { transition: filter 0.5s var(--bhg-ease); }
}


.bhg-vogue {
  --vogue-serif: 'Bodoni Moda', 'Didot', 'Bodoni 72', Georgia, serif;
  min-height: 100vh;
  min-height: 100lvh;
  display: flex;
  align-items: center;
  padding: calc(var(--bhg-header-h) + 40px) var(--bhg-gutter) clamp(56px, 8svh, 96px);
  background: var(--bhg-paper);
  font-weight: 360;
}
.bhg-vogue__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(16px, 2vw, 32px);
  width: 100%;
  align-items: center;
}
.bhg-vogue__head { grid-column: 1 / span 5; }
.bhg-vogue__list { grid-column: 7 / -1; }
.bhg-vogue__title { margin: 0; font-weight: 400; }
.bhg-vogue__title span { display: block; }
.bhg-vogue__seen {
  font-family: var(--bhg-font-display);
  font-size: clamp(20px, 2.2vw, 34px);
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-vogue__name {
  margin-left: -0.04em;
  font-family: var(--vogue-serif);
  font-size: clamp(96px, min(13.5vw, 28svh), 248px);
  line-height: 1;
  letter-spacing: -0.02em;
}
.bhg-vogue__lead {
  max-width: 30em;
  margin: clamp(16px, 2.4svh, 28px) 0 0;
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.6;
  color: var(--bhg-muted);
}
.bhg-vogue__list {
  display: grid;
  gap: clamp(28px, 4.6svh, 52px);
  margin: 0;
  padding: 0;
  list-style: none;
}
.bhg-vogue__quote { margin: 0; }
.bhg-vogue__quote p {
  margin: 0;
  font-family: var(--vogue-serif);
  font-style: italic;
  font-size: clamp(23px, min(2vw, 3.5svh), 36px);
  line-height: 1.24;
  color: var(--bhg-ink);
}
.bhg-vogue__source {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(16px, 2vw, 32px);
  margin-top: clamp(10px, 1.6svh, 16px);
}
.bhg-vogue__source p {
  margin: 0;
  font-size: 15px;
  line-height: 1.45;
  color: var(--bhg-muted);
}
.bhg-vogue__source .bhg-btn { flex: none; }
@media (max-width: 900px) {
  .bhg-vogue { padding: calc(var(--bhg-header-h) + 44px) 20px 72px; align-items: flex-start; }
  .bhg-vogue__head, .bhg-vogue__list { grid-column: 1 / -1; }
  .bhg-vogue__list { margin-top: 36px; gap: 36px; }
  .bhg-vogue__name { font-size: clamp(96px, 28vw, 200px); }
  .bhg-vogue__source { flex-direction: column; align-items: flex-start; }
}


.bhg-side { position: relative; }
.bhg-side__panel { position: relative; background: var(--bhg-paper); }
.bhg-side__anchor { position: absolute; top: 0; left: 0; }
.bhg-sheets[data-sheets-ready] .bhg-side {
  --side-rest: 34;
  --side-travel: 90;
  margin-top: -100vh;
  margin-top: -100svh;
  overflow-x: clip;
  pointer-events: none;
}
.bhg-sheets[data-sheets-ready] .bhg-side::after {
  content: '';
  display: block;
  height: calc((var(--side-rest) + var(--side-travel)) * 1vh + var(--side-extra, 0px));
  height: calc((var(--side-rest) + var(--side-travel)) * 1svh + var(--side-extra, 0px));
}
.bhg-sheets[data-sheets-ready] .bhg-side__panel {
  position: sticky;
  top: 0;
  pointer-events: auto;
  transform: translate3d(100%, 0, 0);
  box-shadow: -28px 0 70px rgb(40 26 14 / 0.16);
  will-change: transform;
}
.bhg-sheets[data-sheets-ready] .bhg-side[data-side='left'] .bhg-side__panel {
  transform: translate3d(-100%, 0, 0);
  box-shadow: 28px 0 70px rgb(40 26 14 / 0.16);
}
.bhg-sheets[data-sheets-ready] .bhg-side[data-side='up'] { overflow: clip; }
.bhg-sheets[data-sheets-ready] .bhg-side[data-side='up'] .bhg-side__panel {
  transform: translate3d(0, 100vh, 0);
  transform: translate3d(0, 100svh, 0);
  box-shadow: 0 -28px 70px rgb(40 26 14 / 0.16);
}
.bhg-sheets[data-sheets-ready] .bhg-side[data-side-blend] .bhg-side__panel { box-shadow: none; }
.bhg-sheets[data-sheets-ready] .bhg-side[data-side-blend] .bhg-side__panel {
  background: none;
  isolation: isolate;
  overflow: clip;
}
.bhg-sheets[data-sheets-ready] .bhg-side[data-side-blend] .bhg-side__panel::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: calc(-1 * var(--bhg-wall-size));
  bottom: 0;
  left: calc(-1 * var(--bhg-wall-size) - var(--panel-w, 100vw));
  right: calc(-1 * var(--panel-w, 100vw));
  background: var(--bhg-wall);
  translate: var(--wall-at, 0 0);
  transform: var(--wall-move, none);
  will-change: transform;
  pointer-events: none;
}
.bhg-sheets[data-sheets-ready] .bhg-side { --side-from: 1; }
.bhg-sheets[data-sheets-ready] .bhg-side[data-side='left'] { --side-from: -1; }
@keyframes bhg-side-in {
  from { transform: translate3d(calc(var(--side-from) * 100%), 0, 0); animation-timing-function: cubic-bezier(0.5, 1, 0.89, 1); }
  to { transform: none; }
}
@keyframes bhg-side-wall {
  from { transform: translate3d(calc(var(--side-from) * -1 * var(--panel-w, 100vw)), 0, 0); animation-timing-function: cubic-bezier(0.5, 1, 0.89, 1); }
  to { transform: none; }
}
@keyframes bhg-side-up {
  from { transform: translate3d(0, 100svh, 0); animation-timing-function: cubic-bezier(0.5, 1, 0.89, 1); }
  to { transform: none; }
}
@supports (animation-timeline: view()) {
  .bhg-sheets[data-sheets-ready] .bhg-side { view-timeline: --bhg-side block; }
  .bhg-sheets[data-sheets-ready] .bhg-side__panel,
  .bhg-sheets[data-sheets-ready] .bhg-side[data-side-blend] .bhg-side__panel::before {
    animation: bhg-side-in linear both;
    animation-timeline: --bhg-side;
    animation-range: contain calc(var(--side-rest) * 1svh) contain calc((var(--side-rest) + var(--side-travel)) * 1svh);
  }
  .bhg-sheets[data-sheets-ready] .bhg-side[data-side-blend] .bhg-side__panel::before { animation-name: bhg-side-wall; }
  .bhg-sheets[data-sheets-ready] .bhg-side[data-side='up'] .bhg-side__panel { animation-name: bhg-side-up; }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-sheets[data-sheets-ready] .bhg-side__panel,
  .bhg-sheets[data-sheets-ready] .bhg-side__panel::before { animation: none; }
}
.bhg-sheets[data-sheets-ready] .bhg-side .bhg-side__panel[inert] { box-shadow: none; }
.bhg-sheets[data-sheets-ready] [data-side-under] .bhg-clip__frame,
.bhg-sheets[data-sheets-ready] .bhg-clip__frame[data-side-hidden] { visibility: hidden; }
.bhg-sheets[data-sheets-ready] .bhg-side:not(:last-child) {
  position: sticky;
  top: var(--sheet-top, 0px);
}
.bhg-sheets[data-sheets-ready] .bhg-side__anchor {
  top: calc((var(--side-rest) + var(--side-travel)) * 1vh);
  top: calc((var(--side-rest) + var(--side-travel)) * 1svh);
}
.bhg-jobs { list-style: none; margin: clamp(28px, 4svh, 44px) 0 0; padding: 0; }
.bhg-job { padding: clamp(22px, 3.4svh, 34px) 0; }
.bhg-job__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 12px;
}
.bhg-job__title {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(18px, 1.6vw, 26px);
  line-height: 1.15;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.bhg-split__body .bhg-job p { margin: 0 0 18px; max-width: 56ch; }
.bhg-split__body .bhg-job .bhg-job__phone {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-size: clamp(26px, 2.6vw, 40px);
  line-height: 1.1;
  letter-spacing: 0.06em;
  font-variant-numeric: tabular-nums;
  color: var(--bhg-ink);
}
.bhg-job__links { align-items: center; }
.bhg-split__body .bhg-job .bhg-job__mail { margin: 0 0 24px; color: var(--bhg-ink); }
.bhg-job__mail a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--bhg-font-body);
  font-size: 15px;
  letter-spacing: 0.01em;
  text-decoration: none;
  color: inherit;
  transition: color 0.3s var(--bhg-ease);
  font-weight: 500;
}
.bhg-job__mail a:hover, .bhg-job__mail a:focus-visible { color: var(--bhg-bronze); }
.bhg-job__mail .bhg-job__icon { width: 20px; height: 20px; flex: none; }
.bhg-split__body .bhg-job .bhg-job__phone { display: flex; align-items: center; gap: 0.32em; }
.bhg-job__phone .bhg-job__icon { width: 1.05em; height: 1.225em; flex: none; }
@media (max-width: 420px) {
  .bhg-job__mail a { gap: 10px; letter-spacing: 0.08em; }
}
.bhg-job__links { display: flex; flex-wrap: wrap; gap: 10px 32px; }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-job__head { flex-direction: column; gap: 8px; }
}
.bhg-split--contact { align-items: flex-start; padding-top: calc(var(--bhg-header-h) + 20px); }
.bhg-contact { align-items: start; }
.bhg-contact__clip {
  grid-column: 1 / span 6;
  justify-self: end;
  margin-right: clamp(0px, 3vw, 64px);
  width: min(100%, calc((100svh - var(--bhg-header-h) - 150px) * 0.5625 * 1.15));
}
.bhg-contact__main { grid-column: 7 / -1; }
.bhg-contact__main .bhg-split__body { padding-top: clamp(28px, 4svh, 44px); }
@media (min-width: 768px) {
  .bhg-sheets[data-sheets-ready] .bhg-split--contact {
    height: 100vh;
    height: 100svh;
    height: 100lvh;
    min-height: 0;
    padding-bottom: 24px;
    overflow: hidden;
  }
  .bhg-sheets[data-sheets-ready] .bhg-contact { height: 100%; }
  .bhg-sheets[data-sheets-ready] .bhg-contact__main {
    max-height: calc(100% + 32px);
    margin-top: -32px;
    padding-top: 32px;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 32px, #000 calc(100% - 64px), transparent);
    mask-image: linear-gradient(to bottom, transparent, #000 32px, #000 calc(100% - 64px), transparent);
  }
  .bhg-sheets[data-sheets-ready] .bhg-contact__main .bhg-split__body { padding-bottom: 64px; }
}
@media (max-width: 767px) {
  .bhg-split--contact { padding-top: calc(var(--bhg-header-h) + 44px); }
  .bhg-contact { row-gap: 44px; }
  .bhg-contact__clip, .bhg-contact__main { grid-column: 1 / -1; }
  .bhg-contact__main { order: -1; }
  .bhg-contact__clip { justify-self: start; margin-right: 0; width: min(100%, 414px); }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-sheets[data-sheets-ready] .bhg-side { --side-rest: 12; --side-travel: 62; }
  .bhg-sheets[data-sheets-ready] .bhg-side[data-side-blend] .bhg-side__panel {
    background: var(--bhg-wall);
    box-shadow: 28px 0 70px rgb(40 26 14 / 0.16);
  }
  .bhg-sheets[data-sheets-ready] .bhg-side[data-side-blend] .bhg-side__panel[inert] { box-shadow: none; }
  .bhg-sheets[data-sheets-ready] .bhg-side[data-side-blend] .bhg-side__panel::before { content: none; }
}


.bhg-sheets[data-sheets-ready] .bhg-side + .bhg-sheet { margin-top: 34svh; }
.bhg-reviews {
  --clip-gap: clamp(14px, 1.6vw, 28px);
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(16px, 2vw, 32px);
  align-items: center;
  min-height: 100vh;
  min-height: 100lvh; 
  padding: calc(var(--bhg-header-h) + 48px) var(--bhg-gutter) clamp(48px, 7svh, 88px);
}
.bhg-reviews__text { grid-column: 1 / span 6; }
.bhg-reviews__title {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(34px, min(3.9vw, 8svh), 68px);
  line-height: 0.98;
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-reviews__title span { display: block; }
.bhg-reviews__title span:nth-child(2) { margin-left: 0.6em; }
.bhg-reviews__score {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 24px;
  margin-top: clamp(22px, 3.4svh, 36px);
}
.bhg-reviews__grade { display: flex; align-items: baseline; gap: 12px; margin: 0; }
.bhg-reviews__number {
  font-family: var(--bhg-font-display);
  font-weight: 500;
  font-size: clamp(40px, min(3.6vw, 7svh), 60px);
  line-height: 1;
  font-variant-numeric: tabular-nums;
  color: var(--bhg-ink);
}
.bhg-reviews__of {
  font-family: var(--bhg-font-body);
  font-size: 14px;
  letter-spacing: 0.01em;
  color: var(--bhg-ink);
  font-weight: 500;
}
.bhg-reviews__score .bhg-stars { --star: 20px; --fill: 96%; }
.bhg-stars {
  --star: 14px;
  --fill: 100%;
  display: block;
  width: calc(var(--star) * 5);
  height: var(--star);
  background: linear-gradient(90deg, var(--bhg-bronze) var(--fill), rgb(106 87 83 / 0.3) 0);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.2l2.95 6.2 6.8.85-5 4.7 1.3 6.75L12 17.4l-6.05 3.3 1.3-6.75-5-4.7 6.8-.85z'/%3E%3C/svg%3E") 0 0 / var(--star) var(--star) repeat-x;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.2l2.95 6.2 6.8.85-5 4.7 1.3 6.75L12 17.4l-6.05 3.3 1.3-6.75-5-4.7 6.8-.85z'/%3E%3C/svg%3E") 0 0 / var(--star) var(--star) repeat-x;
}
.bhg-reviews__list {
  list-style: none;
  margin: clamp(20px, 3svh, 36px) 0 0;
  padding: 0;
}
.bhg-reviews__list li { padding: clamp(18px, 2.8svh, 30px) 0; }
.bhg-reviews__list blockquote { margin: 0; }
.bhg-reviews__list p {
  margin: 14px 0 12px;
  max-width: 54ch;
  font-size: clamp(17px, 1.4vw, 22px);
  line-height: 1.5;
  color: var(--bhg-ink);
}
.bhg-reviews__name {
  font-family: var(--bhg-font-body);
  font-size: 15px;
  font-style: normal;
  font-weight: 600;
  color: var(--bhg-muted);
}
@media (min-width: 1024px) and (min-aspect-ratio: 4/5) {
  .bhg-sheets[data-sheets-ready] .bhg-reviews {
    height: 100vh;
    height: 100svh;
    min-height: 0;
    padding-bottom: 24px;
    overflow: hidden;
    align-items: stretch;
  }
  .bhg-sheets[data-sheets-ready] .bhg-reviews__text {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }
  .bhg-sheets[data-sheets-ready] .bhg-reviews__clips { align-self: center; }
  .bhg-sheets[data-sheets-ready] .bhg-reviews__scroll {
    flex: 1 1 0;
    min-height: 0;
    margin-top: -12px;
    padding-top: 12px;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 40px, #000 calc(100% - 72px), transparent);
    mask-image: linear-gradient(to bottom, transparent, #000 40px, #000 calc(100% - 72px), transparent);
  }
  .bhg-sheets[data-sheets-ready] .bhg-reviews__list { padding-bottom: 72px; }
}
.bhg-reviews__clips {
  grid-column: 8 / -1;
  justify-self: end;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--clip-gap);
  width: min(100%, calc((100svh - var(--bhg-header-h) - 210px) * 1.125 + var(--clip-gap)));
}
.bhg-clip { margin: 0; }
.bhg-clip__frame {
  position: relative;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  background: #efe8e1;
}
.bhg-clip__frame video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bhg-video-canvas {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
  visibility: hidden;
}
.is-drawn > .bhg-video-canvas { visibility: visible; }
.is-drawn > video { opacity: 0; }
.bhg-clip:not(.is-playing) .is-drawn > video { visibility: hidden; }
.bhg-clip figcaption { display: grid; gap: 10px; margin-top: 16px; }
.bhg-clip__play {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  color: var(--bhg-ink);
  cursor: pointer;
}
.bhg-clip__play:focus-visible { outline-offset: -6px; }
.bhg-clip__icon {
  display: grid;
  place-items: center;
  width: clamp(45px, 3.68vw, 61px);
  aspect-ratio: 1;
  background: color-mix(in srgb, var(--bhg-bronze) 75%, transparent);
  color: var(--bhg-cream);
  transition: opacity 0.35s var(--bhg-ease), transform 0.5s var(--bhg-ease), background-color 0.4s var(--bhg-ease);
}
.bhg-clip__icon::before {
  content: '';
  width: 0;
  height: 0;
  margin-left: 6%;
  border-style: solid;
  border-width: 6.4px 0 6.4px 10.4px;
  border-color: transparent transparent transparent currentColor;
}
@media (hover: hover) {
  .bhg-clip__play:hover .bhg-clip__icon { background: color-mix(in srgb, var(--bhg-bronze-deep) 85%, transparent); }
}
.bhg-clip.is-playing .bhg-clip__icon { opacity: 0; }
.bhg-clip__sound {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  background: var(--bhg-bronze);
  color: var(--bhg-cream);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s var(--bhg-ease), visibility 0.35s, background-color 0.3s var(--bhg-ease);
}
.bhg-clip.is-playing .bhg-clip__sound { opacity: 1; visibility: visible; }
.bhg-clip__sound:hover, .bhg-clip__sound:focus-visible { background: var(--bhg-bronze-deep); }
.bhg-clip__sound-off { display: none; }
.is-muted .bhg-clip__sound-on { display: none; }
.is-muted .bhg-clip__sound-off { display: inline; }
@media (max-width: 1023px), (max-aspect-ratio: 4/5) {
  .bhg-reviews { --rv-gutter: var(--bhg-gutter); row-gap: 48px; }
  .bhg-reviews__text, .bhg-reviews__clips { grid-column: 1 / -1; }
  .bhg-reviews__text { min-width: 0; }
  .bhg-reviews__clips { justify-self: start; width: min(100%, 560px); }
  .bhg-reviews__scroll { margin: 0 calc(-1 * var(--rv-gutter)); }
  .bhg-reviews__list {
    display: flex;
    gap: 12px;
    margin-top: 28px;
    padding: 0 var(--rv-gutter);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding: 0 var(--rv-gutter);
    scrollbar-width: none;
  }
  .bhg-reviews__list::-webkit-scrollbar { display: none; }
  .bhg-reviews__list li {
    flex: 0 0 min(84vw, 400px);
    display: flex;
    padding: 24px 22px 22px;
    background: var(--bhg-ivory);
    scroll-snap-align: start;
  }
  .bhg-reviews__list blockquote { display: flex; flex-direction: column; }
  .bhg-reviews__list p { margin: 16px 0 18px; font-size: 16px; }
  .bhg-reviews__list cite { margin-top: auto; }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-sheets[data-sheets-ready] .bhg-side + .bhg-sheet { margin-top: 18svh; }
  .bhg-reviews { --rv-gutter: 20px; padding: calc(var(--bhg-header-h) + 44px) 20px 64px; row-gap: 40px; }
  .bhg-reviews__title { font-size: clamp(34px, 10.4vw, 52px); }
  .bhg-reviews__title span:nth-child(2) { margin-left: 0.3em; }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-clip__icon, .bhg-clip__sound { transition: none; }
}


.bhg-join {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(16px, 2vw, 32px);
  align-items: center;
  min-height: 100vh;
  min-height: 100lvh; 
  padding: calc(var(--bhg-header-h) + 20px) var(--bhg-gutter) 24px;
}
.bhg-join__text { grid-column: 1 / span 6; }
.bhg-join__title {
  margin: 0 0 clamp(20px, 3.4svh, 36px);
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(34px, min(3.9vw, 8svh), 68px);
  line-height: 0.98;
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-join__title span { display: block; }
.bhg-join__title span:nth-child(2) { margin-left: 0.6em; }
.bhg-join__text p {
  margin: 0 0 14px;
  max-width: 84ch;
  font-size: clamp(16px, 1.15vw, 18px);
  line-height: 1.6;
  color: var(--bhg-muted);
}
.bhg-join__text .bhg-join__lead {
  max-width: 58ch;
  margin-bottom: 20px;
  font-size: clamp(20px, 1.6vw, 26px);
  line-height: 1.4;
  color: var(--bhg-ink);
}
.bhg-join__text strong { font-weight: 600; color: var(--bhg-ink); }
.bhg-join__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 32px;
  margin-top: clamp(20px, 3svh, 32px);
}
.bhg-join__clip {
  grid-column: 7 / -1;
  justify-self: start;
  margin-left: clamp(0px, 3vw, 64px);
  width: min(100%, calc((100svh - var(--bhg-header-h) - 150px) * 0.5625 * 1.15));
}
.bhg-join__clip .bhg-clip__frame { aspect-ratio: 9 / 16; }
@media (max-width: 1023px) {
  .bhg-join { row-gap: 44px; }
  .bhg-join__text, .bhg-join__clip { grid-column: 1 / -1; }
  .bhg-join__clip { justify-self: start; margin-left: 0; width: min(100%, 414px); }
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-join { padding: calc(var(--bhg-header-h) + 44px) 20px 64px; row-gap: 36px; }
  .bhg-join__title { font-size: clamp(34px, 10.4vw, 52px); }
  .bhg-join__title span:nth-child(2) { margin-left: 0.3em; }
}


.bhg-apply-open { overflow: hidden; }
.bhg-apply {
  position: fixed;
  inset: 0;
  width: 100vw;
  max-width: none;
  height: 100vh;
  height: 100dvh;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden auto;
  overscroll-behavior: contain;
  background: none;
  color: var(--bhg-ink);
}
.bhg-apply[open] { display: grid; place-items: center; }
.bhg-apply::backdrop { background: none; }
.bhg-apply__dim {
  position: fixed;
  inset: 0;
  background: rgba(36, 27, 24, 0.7);
  opacity: 0;
  transition: opacity 0.5s var(--bhg-ease);
}
.bhg-apply.is-shown .bhg-apply__dim { opacity: 1; }
.bhg-apply__close {
  position: fixed;
  z-index: 3;
  top: calc(clamp(16px, 3vw, 36px) + var(--bhg-safe-top));
  right: clamp(16px, 3vw, 36px);
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: var(--bhg-bronze);
  color: var(--bhg-cream);
  cursor: pointer;
  transform: translateY(-140%);
  transition: transform 0.6s var(--bhg-ease), background-color 0.3s var(--bhg-ease);
}
.bhg-apply.is-shown .bhg-apply__close { transform: none; transition-delay: 0.15s, 0s; }
.bhg-apply__close:hover { background: var(--bhg-bronze-deep); }
.bhg-apply__close:focus-visible { outline: 2px solid var(--bhg-ivory); outline-offset: 3px; }
.bhg-apply__close span { position: relative; width: 22px; height: 22px; }
.bhg-apply__close span::before,
.bhg-apply__close span::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1.5px;
  background: currentColor;
  transform: rotate(45deg);
}
.bhg-apply__close span::after { transform: rotate(-45deg); }
.bhg-apply__form {
  position: relative;
  z-index: 2;
  width: min(640px, calc(100vw - 2 * var(--bhg-gutter)));
  margin: 0;
  padding-bottom: 42px;
  transform: translateY(calc(50vh + 50%));
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.bhg-apply.is-shown .bhg-apply__form { transform: none; }
.bhg-apply__deck {
  display: grid;
  grid-template-areas: 'card';
}
.bhg-apply__card {
  --depth: 0;
  grid-area: card;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(28px, 4.4vw, 52px);
  background: var(--bhg-paper);
  box-shadow: 0 1px 0 rgb(255 255 255 / 0.35) inset, 0 40px 80px -36px rgba(20, 14, 12, 0.75);
  transform: translateY(calc(var(--depth) * 14px)) scale(calc(1 - var(--depth) * 0.045));
  transform-origin: 50% 100%;
  filter: brightness(calc(1 - var(--depth) * 0.07));
  z-index: calc(10 - var(--depth));
  transition:
    transform 0.75s cubic-bezier(0.16, 1, 0.3, 1),
    filter 0.75s var(--bhg-ease),
    visibility 0s linear 0s;
}
.bhg-apply__card > * { transition: visibility 0s linear 0.25s; }
.bhg-apply__card:not(.is-current) > * { visibility: hidden; transition-delay: 0s; }
.bhg-apply__card.is-current > * { transition-delay: 0s; }
.bhg-apply__card.is-past > * { visibility: hidden; transition-delay: 0.75s; }
.bhg-apply__card.is-past {
  transform: translateX(calc(-50vw - 70%)) rotate(-9deg);
  z-index: 11;
  visibility: hidden;
  transition:
    transform 0.75s cubic-bezier(0.55, 0, 0.3, 1),
    filter 0.75s var(--bhg-ease),
    visibility 0s linear 0.75s;
}
.bhg-apply__q {
  margin: 0 0 12px;
  font-family: var(--bhg-font-display);
  font-weight: 500;
  font-size: clamp(24px, 3.1vw, 36px);
  line-height: 1.04;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}
.bhg-apply__q:focus { outline: none; }
.bhg-apply__help {
  margin: 0 0 clamp(22px, 3.4svh, 34px);
  max-width: 46ch;
  font-size: 16px;
  line-height: 1.5;
  color: var(--bhg-muted);
}
.bhg-apply__fields {
  display: grid;
  gap: 18px;
}
.bhg-apply__fields--pair { grid-template-columns: 1fr 1fr; }
.bhg-apply__field { display: grid; gap: 8px; min-width: 0; }
.bhg-apply__label {
  font-family: var(--bhg-font-body);
  font-size: 14px;
  letter-spacing: 0.01em;
  color: var(--bhg-bronze-deep);
  font-weight: 500;
}
.bhg-apply__input {
  width: 100%;
  min-height: 56px;
  margin: 0;
  padding: 14px 16px;
  border: 0;
  border-radius: 0;
  box-shadow: inset 0 0 0 1px rgb(17 17 17 / 0.3);
  background: #ebe5de;
  color: var(--bhg-ink);
  font: inherit;
  font-size: 18px; 
  font-weight: 520;
  line-height: 1.4;
  -webkit-appearance: none;
  appearance: none;
  transition: box-shadow 0.2s var(--bhg-ease), background-color 0.2s var(--bhg-ease);
}
.bhg-apply__input::placeholder { color: rgb(17 17 17 / 0.42); }
.bhg-apply__input:hover { box-shadow: inset 0 0 0 1px rgb(17 17 17 / 0.55); }
.bhg-apply__input:focus {
  outline: none;
  background: var(--bhg-ivory);
  box-shadow: inset 0 0 0 2px var(--bhg-bronze);
}
.bhg-apply__input[aria-invalid='true'] { box-shadow: inset 0 0 0 2px #9b2c22; }
textarea.bhg-apply__input {
  min-height: 168px;
  max-height: 40svh;
  resize: vertical;
}
.bhg-apply__error {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
  color: #8a2219;
}
.bhg-apply__error:empty { display: none; }
.bhg-apply__error::before {
  content: '';
  flex: none;
  width: 16px;
  height: 16px;
  margin-top: 2px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1Zm-.8 3.5h1.6v5H7.2v-5Zm0 6h1.6v1.6H7.2V10.5Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1Zm-.8 3.5h1.6v5H7.2v-5Zm0 6h1.6v1.6H7.2V10.5Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bhg-apply__optional {
  font-family: var(--bhg-font-body);
  font-size: 14px;
  letter-spacing: 0;
  text-transform: none;
  color: var(--bhg-muted);
}
.bhg-apply__count {
  justify-self: end;
  font-size: 13px;
  color: var(--bhg-muted);
  font-variant-numeric: tabular-nums;
}
.bhg-apply__count[hidden] { display: none; }
.bhg-apply__drop {
  position: relative;
  display: grid;
  justify-items: center;
  gap: 14px;
  padding: clamp(26px, 4svh, 40px) 20px;
  background: #ebe5de;
  box-shadow: inset 0 0 0 1px rgb(17 17 17 / 0.3);
  text-align: center;
  transition: box-shadow 0.2s var(--bhg-ease), background-color 0.2s var(--bhg-ease);
}
.bhg-apply__drop.is-over {
  background: var(--bhg-ivory);
  box-shadow: inset 0 0 0 2px var(--bhg-bronze);
}
.bhg-apply__drop[aria-invalid='true'] { box-shadow: inset 0 0 0 2px #9b2c22; }
.bhg-apply__field:has(input[type='file']:focus-visible) .bhg-apply__drop { box-shadow: inset 0 0 0 2px var(--bhg-bronze); }
.bhg-apply__drop svg { width: 34px; height: 42px; color: var(--bhg-bronze); }
.bhg-apply__drop p { margin: 0; font-size: 16px; line-height: 1.45; }
.bhg-apply__drop small { font-size: 14px; color: var(--bhg-muted); }
.bhg-apply__drop[hidden],
.bhg-apply__file[hidden] { display: none; }
.bhg-apply__file {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 16px;
  background: var(--bhg-ivory);
  box-shadow: inset 0 0 0 1px rgb(17 17 17 / 0.18);
}
.bhg-apply__file svg { width: 26px; height: 32px; color: var(--bhg-bronze); }
.bhg-apply__file-name {
  display: block;
  overflow: hidden;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bhg-apply__file-meta { display: block; font-size: 14px; color: var(--bhg-muted); }
.bhg-apply__file-actions { display: flex; gap: 8px; }
.bhg-apply__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: clamp(26px, 4svh, 40px);
}
.bhg-apply__actions > :only-child { margin-left: auto; }
.bhg-apply .bhg-btn { border: 0; border-radius: 0; cursor: pointer; }
.bhg-apply .bhg-btn--camel:focus-visible { outline: 2px solid var(--bhg-bronze-deep); outline-offset: 3px; }
.bhg-apply__ghost {
  background: transparent;
  color: var(--bhg-bronze-deep);
  box-shadow: inset 0 0 0 1px var(--bhg-bronze);
  transition: background-color 0.3s var(--bhg-ease), color 0.3s var(--bhg-ease);
}
.bhg-apply__ghost:hover { background: var(--bhg-bronze); color: var(--bhg-cream); }
.bhg-apply__hint {
  flex-basis: 100%;
  order: 3;
  margin: 0;
  font-size: 13px;
  color: var(--bhg-muted);
  text-align: right;
}
.bhg-apply__send { position: relative; overflow: hidden; }
.bhg-apply__send[aria-busy='true'] { cursor: progress; }
.bhg-apply__send[aria-busy='true']::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg, transparent 30%, rgb(232 216 196 / 0.28) 50%, transparent 70%);
  transform: translateX(-100%);
  animation: bhg-apply-sweep 1.1s var(--bhg-ease) infinite;
}
@keyframes bhg-apply-sweep { to { transform: translateX(100%); } }
.bhg-apply__consent {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin: 20px 0 0;
  font-size: 15px;
  line-height: 1.5;
  color: var(--bhg-ink);
  cursor: pointer;
}
.bhg-apply__consent input {
  appearance: none;
  flex: none;
  width: 22px;
  height: 22px;
  margin: 1px 0 0;
  border-radius: 0;
  background: #fff;
  box-shadow: inset 0 0 0 1px var(--bhg-muted);
  display: grid;
  place-content: center;
  cursor: pointer;
}
.bhg-apply__consent input::after {
  content: "";
  width: 12px;
  height: 12px;
  background: var(--bhg-bronze-deep);
  transform: scale(0);
  transition: transform 0.15s ease;
}
.bhg-apply__consent input:checked::after { transform: scale(1); }
.bhg-apply__consent input:checked { box-shadow: inset 0 0 0 2px var(--bhg-bronze); }
.bhg-apply__consent input:focus-visible { outline: 2px solid var(--bhg-bronze-deep); outline-offset: 2px; }
.bhg-apply__privacy {
  margin: 18px 0 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--bhg-muted);
}
.bhg-apply__privacy a { text-decoration: none; font-weight: 600; color: var(--bhg-bronze-deep); }
.bhg-apply__privacy a:hover { color: var(--bhg-ink); }
.bhg-apply__fail {
  margin: 16px 0 0;
  font-size: 15px;
  line-height: 1.45;
  color: #8a2219;
}
.bhg-apply__fail:empty { display: none; }
.bhg-apply__fail a { text-decoration: none; font-weight: 600; color: inherit; }
.bhg-apply__card--done {
  justify-content: center;
  background: var(--bhg-bronze);
  color: var(--bhg-cream);
}
.bhg-apply__card--done .bhg-apply__help { color: var(--bhg-cream); }
.bhg-apply__mark {
  display: block;
  width: 72px;
  aspect-ratio: 85.5 / 60;
  margin: 0 0 26px;
  background: var(--bhg-cream);
  -webkit-mask: url('../public/brand/ampersand.svg') center / contain no-repeat;
  mask: url('../public/brand/ampersand.svg') center / contain no-repeat;
}
.bhg-apply__card--done .bhg-btn {
  background: var(--bhg-cream);
  color: var(--bhg-bronze-deep);
}
.bhg-apply__card--done .bhg-btn:hover { background: var(--bhg-ivory); }
.bhg-apply__trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.bhg-apply__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-apply[open] { place-items: end center; }
  .bhg-apply__close { width: 48px; height: 48px; }
  .bhg-apply__form {
    width: calc(100vw - 24px);
    padding-bottom: calc(30px + var(--bhg-safe-bottom));
  }
  .bhg-apply__card {
    padding: 26px 22px 22px;
    transform: translateY(calc(var(--depth) * 10px)) scale(calc(1 - var(--depth) * 0.04));
  }
  .bhg-apply__card.is-past { transform: translateX(calc(-100vw - 10%)) rotate(-7deg); }
  .bhg-apply__fields--pair { grid-template-columns: 1fr; gap: 14px; }
  .bhg-apply__help { margin-bottom: 20px; font-size: 15px; }
  .bhg-apply__actions .bhg-btn { flex: 1 1 auto; }
  .bhg-apply__hint { display: none; }
  .bhg-apply__file { grid-template-columns: auto minmax(0, 1fr); }
  .bhg-apply__file-actions { grid-column: 1 / -1; }
  .bhg-apply__file-actions .bhg-btn { flex: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-apply__form,
  .bhg-apply__close,
  .bhg-apply__card,
  .bhg-apply__card.is-past { transition-duration: 0.01s; transition-delay: 0s; }
  .bhg-apply__card.is-past { transform: none; }
  .bhg-apply__send[aria-busy='true']::after { animation: none; }
}


.bhg-walk { --walk-scroll: 760; }
.bhg-walk__stage { position: relative; }
.bhg-walk__shot {
  position: relative;
  height: 100vh;
  height: 100svh;
  min-height: 520px;
  margin: 0;
  overflow: hidden;
  background: #ece2d8;
}
.bhg-walk__shot img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  user-select: none;
  -webkit-user-drag: none;
}
.bhg-walk__shot .bhg-walk__tile {
  position: absolute;
  inset: 0 auto auto 0;
  max-width: none;
  object-fit: fill;
  transform-origin: 0 0;
  pointer-events: none;
  user-select: none;
}
.bhg-walk__shot .bhg-walk__tile[hidden] { display: none; }
.bhg-walk__logo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
}
.bhg-walk__logo[hidden] { display: none; }
.bhg-walk__shot[data-shot='facade'] img { object-position: 31.79% 55%; }
.bhg-walk__shot[data-shot='aisle'] img { object-position: 40% 34%; }
.bhg-walk__shot[data-shot='mirrors'] img { object-position: 62% 45%; }
.bhg-walk__shot[data-shot='salon'] img { object-position: 60% 50%; }
.bhg-walk__shot[data-shot='wash'] img { object-position: 50% 42%; }
.bhg-walk__shot[data-shot='care'] img { object-position: 60% 50%; }
@media (max-aspect-ratio: 4/5) {
  .bhg-walk__shot[data-shot='facade'] img { object-position: 12% 55%; }
  .bhg-walk { --walk-scroll: 350; }
}
.bhg-walk__shot figcaption {
  position: absolute;
  z-index: 2;
  left: var(--bhg-gutter);
  right: var(--bhg-gutter);
  bottom: clamp(36px, 8svh, 96px);
  max-width: 34rem;
  color: var(--bhg-ink);
}
.bhg-walk__shot[data-tone='dark'] figcaption { color: var(--bhg-cream); }
.bhg-walk__title {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(32px, min(4.2vw, 8svh), 76px);
  line-height: 0.98;
  letter-spacing: -0.005em;
  text-transform: uppercase;
}
.bhg-walk__title span { display: block; }
.bhg-walk__title span:nth-child(2) { margin-left: 0.6em; }
.bhg-walk__line {
  margin: clamp(14px, 2.4svh, 22px) 0 0;
  max-width: 32ch;
  font-size: clamp(17px, 1.3vw, 21px);
  line-height: 1.45;
}
.bhg-walk__shot .bhg-btn { margin-top: clamp(20px, 3svh, 32px); }
.bhg-sheets[data-sheets-ready] .bhg-walk {
  height: calc(100vh + var(--walk-scroll) * 1vh);
  height: calc(100lvh + var(--walk-scroll) * 1svh);
}
.bhg-sheets[data-sheets-ready] .bhg-walk__stage {
  position: sticky;
  top: 0;
  height: 100vh;
  height: 100lvh;
  min-height: 520px;
  overflow: hidden;
}
.bhg-sheets[data-sheets-ready] .bhg-walk__shot {
  position: absolute;
  inset: 0;
  height: auto;
  min-height: 0;
}
.bhg-sheets[data-sheets-ready] .bhg-walk__shot + .bhg-walk__shot { clip-path: inset(0 0 100% 0); }
.bhg-sheets[data-sheets-ready] .bhg-walk__shot img,
.bhg-sheets[data-sheets-ready] .bhg-walk__shot figcaption { will-change: transform; }
@media (max-width: 900px), (max-aspect-ratio: 4/5) {
  .bhg-walk__shot figcaption { bottom: calc(96px + var(--bhg-safe-bottom, 0px)); }
  .bhg-walk__shot .bhg-btn { display: none; }
  .bhg-walk__title { font-size: clamp(24px, 7vw, 34px); }
  .bhg-walk__line { margin-top: 10px; max-width: 36ch; font-size: 15px; line-height: 1.4; }
}
@media (prefers-reduced-motion: reduce) {
  .bhg-walk__shot img { transform: none !important; }
}


@font-face {
  font-family: 'Bodoni Moda';
  src: url('../public/fonts/bodoni-moda-variable.woff2') format('woff2');
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Bodoni Moda';
  src: url('../public/fonts/bodoni-moda-variable-italic.woff2') format('woff2');
  font-weight: 400 900;
  font-style: italic;
  font-display: swap;
}
.mag-cover {
  --mag-serif: 'Bodoni Moda', 'Didot', 'Bodoni 72', Georgia, serif;
  --mag-small: max(12px, calc(1.9 * var(--u)));
  --mag-head: calc(29 * var(--u));
  box-sizing: border-box;
  display: grid;
  grid-template-columns: calc(30 * var(--u)) minmax(0, 1fr) calc(33 * var(--u));
  grid-template-rows: var(--mag-head) auto minmax(0, 1fr) auto;
  padding-inline: calc(5.5 * var(--u));
}
.mag-cover ul, .mag-cover p { margin: 0; padding: 0; list-style: none; }
.mag-cover a { color: inherit; text-decoration: none; }
.mag-cover__scrim, .mag-cover__text, .mag-flash, .mag-cover .mag-lines { pointer-events: none; }
.mag-cover__text a, .mag-lines a { pointer-events: auto; }
.mag-cover .mag-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mag-cover__scrim {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to right, rgb(20 14 12 / 0.62), rgb(20 14 12 / 0.34) 20%, rgb(20 14 12 / 0) 33%),
    linear-gradient(to left, rgb(20 14 12 / 0.66), rgb(20 14 12 / 0.4) 26%, rgb(20 14 12 / 0) 42%),
    linear-gradient(to top, rgb(20 14 12 / 0.84), rgb(20 14 12 / 0.56) 26%, rgb(20 14 12 / 0) 42%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 24%, #000 38%);
  mask-image: linear-gradient(to bottom, transparent 24%, #000 38%);
}
.mag-cover .mag-lines {
  position: relative;
  display: flex;
  flex-flow: column wrap;
  align-content: flex-start;
  gap: calc(2.5 * var(--u)) calc(6 * var(--u));
  min-width: 0;
  min-height: 0;
  overflow: clip;
  overflow-clip-margin: calc(1.3 * var(--u));
  color: #fbf4ec;
  text-shadow: 0 0 calc(1.3 * var(--u)) rgb(20 14 12 / 0.5);
}
.mag-cover .mag-lines--left { grid-column: 1; grid-row: 2 / 4; margin-top: calc(15 * var(--u)); }
.mag-cover .mag-lines--right { grid-column: 3; grid-row: 3; flex-wrap: wrap-reverse; text-align: right; }
.mag-lines li { width: 100%; }
.mag-lines a { display: block; transition: color 0.3s; }
.mag-lines a:hover, .mag-lines a:focus-visible { color: #e3bea2; }
.mag-lines strong {
  display: block;
  font-family: var(--mag-serif);
  font-weight: 500;
  font-size: max(15px, calc(3.9 * var(--u)));
  line-height: 1.08;
  letter-spacing: -0.01em;
}
.mag-lines .is-big strong {
  font-style: italic;
  font-weight: 400;
  font-size: max(19px, calc(6 * var(--u)));
  line-height: 1;
  letter-spacing: -0.02em;
}
.mag-lines span {
  display: block;
  margin-top: calc(0.5 * var(--u));
  font-size: var(--mag-small);
  line-height: 1.2;
}
.mag-flash {
  position: relative;
  grid-column: 3;
  grid-row: 2;
  justify-self: end;
  width: max(calc(23 * var(--u)), 118px);
  background: #e3bea2;
  color: #1a1311;
  transform: rotate(-4deg);
}
.mag-cover .mag-flash {
  margin-bottom: calc(3 * var(--u));
  padding: calc(1.9 * var(--u)) calc(2.2 * var(--u)) calc(2.1 * var(--u));
}
.mag-flash strong {
  display: block;
  font-family: var(--mag-serif);
  font-style: italic;
  font-weight: 400;
  font-size: max(16px, calc(4.3 * var(--u)));
  line-height: 1;
}
.mag-flash span {
  display: block;
  margin-top: calc(0.8 * var(--u));
  font-size: max(11.5px, calc(1.75 * var(--u)));
  line-height: 1.22;
}
.mag-cover__text {
  position: relative;
  grid-column: 1 / -1;
  grid-row: 4;
  padding-top: calc(3 * var(--u));
  padding-bottom: calc(4.6 * var(--u));
  text-align: center;
  color: #fbf4ec;
}
.mag-cover__row {
  display: flex;
  justify-content: space-between;
  gap: calc(2 * var(--u));
  margin-bottom: calc(1.6 * var(--u));
  font-family: var(--mag-serif);
  font-size: max(14px, calc(3.2 * var(--u)));
}
.mag-cover__row a { transition: color 0.3s; }
.mag-cover__row a:hover, .mag-cover__row a:focus-visible { color: #e3bea2; }
.mag-cover__title {
  font-family: var(--mag-serif);
  font-style: italic;
  font-weight: 400;
  font-size: calc(13 * var(--u));
  line-height: 1;
  letter-spacing: -0.025em;
  white-space: nowrap;
}
.mag-cover__title span {
  display: block;
  margin-top: calc(1.5 * var(--u));
  font-family: var(--mag-serif);
  font-style: normal;
  font-size: max(13.5px, calc(2.9 * var(--u)));
  letter-spacing: 0;
  white-space: normal;
}


.bhg-maghome__stage {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(32px, 6vw, 110px);
  min-height: 100vh;
  min-height: 100svh;
  padding: calc(var(--bhg-header-h) + 12px) var(--bhg-gutter) clamp(24px, 5svh, 56px);
  overflow: hidden;
}
.bhg-sheets[data-sheets-ready] .bhg-maghome {
  height: calc(100vh + 90vh);
  height: calc(100svh + 90svh);
}
.bhg-sheets[data-sheets-ready] .bhg-maghome__stage {
  position: sticky;
  top: 0;
  height: 100vh;
  height: 100svh;
}
.bhg-maghome__lead { max-width: 30em; margin: clamp(20px, 3.4svh, 34px) 0 0; }
.bhg-maghome__stage {
  background: linear-gradient(90deg,
    rgb(36 25 16 / 0.72) 0%,
    rgb(36 25 16 / 0.6) 34%,
    rgb(36 25 16 / 0.3) 52%,
    rgb(36 25 16 / 0) 68%);
}
.bhg-maghome .bhg-split__title,
.bhg-maghome__lead { color: #ddd5cc; }
.bhg-maghome__lead { font-weight: 500; }
.bhg-maghome__book {
  position: relative;
  width: min(44vw, calc((100svh - var(--bhg-header-h) - 68px) / 1.3));
  aspect-ratio: 1 / 1.3;
  container-type: inline-size;
  perspective: 1900px;
  perspective-origin: 30% 50%;
}
.bhg-maghome__book > * { --u: 1cqw; }
.bhg-maghome__under,
.bhg-maghome__cover { position: absolute; inset: 0; }
.bhg-maghome__under {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding: calc(8 * var(--u));
  background: #f4eee5;
  color: #1a1311;
  font-family: 'Bodoni Moda', 'Didot', Georgia, serif;
  text-align: right;
  box-shadow: 0 calc(2 * var(--u)) calc(7 * var(--u)) rgb(20 12 10 / 0.5);
}
.bhg-maghome__under p { margin: 0 0 calc(3 * var(--u)); font-style: italic; font-size: calc(13 * var(--u)); line-height: 1; }
.bhg-maghome__under ul { margin: 0; padding: 0; list-style: none; font-size: calc(3.1 * var(--u)); line-height: 1.62; }
.bhg-maghome__under i {
  position: absolute;
  inset: 0;
  opacity: 0;
  background: linear-gradient(to left, rgb(20 12 10 / 0), rgb(20 12 10 / 0.5));
  pointer-events: none;
}
.bhg-maghome__cover { transform-style: preserve-3d; }
.bhg-maghome__cover .mag-cover,
.bhg-maghome__face .mag-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100cqw;
  height: 130cqw;
  overflow: hidden;
  background: #15100e;
}
.mag-cover__open { position: absolute; inset: 0; }
.bhg-maghome__cover.is-bent > .mag-cover { visibility: hidden; }
.bhg-maghome__strip {
  position: absolute;
  top: 0;
  height: 100%;
  transform-origin: 0 50%;
  transform-style: preserve-3d;
  will-change: transform;
}
.bhg-maghome__face { position: absolute; inset: 0; overflow: hidden; }
.bhg-maghome__face > i { position: absolute; inset: 0; z-index: 9; pointer-events: none; }
@container (max-width: 400px) {
  .bhg-maghome__book .mag-lines li:nth-child(n + 3),
  .bhg-maghome__book .mag-lines span,
  .bhg-maghome__book .mag-cover__row,
  .bhg-maghome__book .mag-flash span,
  .bhg-maghome__book .mag-cover__title span { display: none; }
  .bhg-maghome__book .mag-lines strong,
  .bhg-maghome__book .mag-lines .is-big strong { font-size: calc(4.7 * var(--u)); line-height: 1.08; }
  .bhg-maghome__book .mag-flash { width: calc(27 * var(--u)); padding: calc(1.6 * var(--u)) calc(2 * var(--u)); }
  .bhg-maghome__book .mag-flash strong { font-size: calc(4.4 * var(--u)); }
}
.bhg-maghome__actions { display: grid; width: fit-content; }
.bhg-maghome__link {
  background: var(--bhg-ivory);
  color: var(--bhg-ink);
  transition: background-color 0.3s var(--bhg-ease), color 0.3s var(--bhg-ease), box-shadow 0.3s var(--bhg-ease);
}
.bhg-maghome__link:hover,
.bhg-maghome__link:focus-visible { background: var(--bhg-bronze-deep); color: var(--bhg-cream); }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-maghome__desktop { display: none; }
  .bhg-maghome__stage {
    grid-template-columns: minmax(0, 1fr);
    align-content: center;
    justify-items: center;
    gap: clamp(16px, 3svh, 28px);
    padding-bottom: 18px;
  }
  .bhg-maghome__stage {
    background: linear-gradient(180deg,
      rgb(36 25 16 / 0.76) 0%,
      rgb(36 25 16 / 0.72) 52%,
      rgb(36 25 16 / 0.35) 66%,
      rgb(36 25 16 / 0) 80%);
  }
  .bhg-maghome__text { width: 100%; }
  .bhg-maghome__book { width: min(68vw, calc(45svh / 1.3)); }
  .bhg-maghome__lead { margin-top: 12px; line-height: 1.42; }
  .bhg-maghome .bhg-split__actions { margin-top: 16px; }
}
