
@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; }
}


body.bhg-legal-page, .bhg-legal-page .bhg-footer { background: var(--bhg-ivory); }
.bhg-legal-page main a { overflow-wrap: anywhere; }
.bhg-legal {
  padding: calc(var(--bhg-header-h) + var(--bhg-safe-top) + clamp(40px, 9svh, 112px)) var(--bhg-gutter) clamp(72px, 12svh, 144px);
}
.bhg-legal a { color: var(--bhg-bronze); text-decoration: none; transition: color 0.3s var(--bhg-ease); }
.bhg-legal a:hover, .bhg-legal a:focus-visible { color: var(--bhg-ink); }
.bhg-legal__head { max-width: 760px; margin: 0 0 clamp(56px, 9svh, 112px); }
.bhg-legal__head h1 {
  margin: 0 0 clamp(28px, 4svh, 44px);
  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-legal__head > p {
  margin: 0 0 18px;
  font-size: clamp(19px, 1.5vw, 23px);
  line-height: 1.5;
}
.bhg-legal__head ul { font-size: clamp(17px, 1.25vw, 19px); }
.bhg-legal__head .bhg-legal__updated { margin-top: 28px; font-size: 15px; color: var(--bhg-muted); }
.bhg-legal__layout {
  display: grid;
  grid-template-columns: minmax(200px, 300px) minmax(0, 760px);
  gap: clamp(40px, 6vw, 112px);
  align-items: start;
}
.bhg-legal__toc {
  position: sticky;
  top: calc(var(--bhg-header-h) + var(--bhg-safe-top) + 24px);
  max-height: calc(100svh - var(--bhg-header-h) - var(--bhg-safe-top) - 48px);
  overflow-y: auto;
  overscroll-behavior: contain;
  font-size: 15px;
  line-height: 1.4;
}
.bhg-legal__toc ol { list-style: none; margin: 0; padding: 0; }
.bhg-legal__toc li + li { margin-top: 2px; }
.bhg-legal__toc a {
  display: block;
  padding: 5px 0;
  color: var(--bhg-muted);
}
.bhg-legal__toc a:hover, .bhg-legal__toc a:focus-visible { color: var(--bhg-ink); }
.bhg-legal__body { font-size: 17px; line-height: 1.65; }
.bhg-legal__article { scroll-margin-top: calc(var(--bhg-header-h) + var(--bhg-safe-top) + 24px); }
.bhg-legal__article + .bhg-legal__article { margin-top: clamp(48px, 7svh, 72px); }
.bhg-legal__article h2 {
  margin: 0 0 20px;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(20px, 1.75vw, 26px);
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.bhg-legal h3 {
  margin: 30px 0 8px;
  font-family: var(--bhg-font-body);
  font-weight: 600;
  font-size: 17px;
  line-height: 1.4;
}
.bhg-legal__article h2 + h3 { margin-top: 0; }
.bhg-legal p { margin: 0 0 14px; }
.bhg-legal__body p, .bhg-legal__body li { color: var(--bhg-muted); }
.bhg-legal ul { list-style: none; margin: 0 0 18px; padding: 0; }
.bhg-legal li { position: relative; padding-left: 22px; }
.bhg-legal li + li { margin-top: 6px; }
.bhg-legal li::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 0.68em;
  width: 6px;
  height: 6px;
  background: var(--bhg-bronze);
}
.bhg-legal__rows {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
  gap: 10px;
  margin: 18px 0 24px;
}
.bhg-legal__row {
  margin: 0;
  padding: 18px 20px 20px;
  background: #f1e5da;
  font-size: 16px;
  line-height: 1.5;
}
.bhg-legal__row dt { margin: 0 0 8px; font-weight: 600; color: var(--bhg-ink); }
.bhg-legal__row dd { margin: 0; color: var(--bhg-muted); }
.bhg-legal__row dd + dd { margin-top: 4px; }
.bhg-legal__row dd span { color: var(--bhg-ink); }
.bhg-footer a[aria-current='page'] { color: var(--bhg-ink); }
@media (max-width: 900px) {
  .bhg-legal__layout { grid-template-columns: minmax(0, 1fr); }
  .bhg-legal__toc { display: none; }
}
.bhg-header__back {
  grid-column: 1;
  grid-row: 1;
  justify-self: start;
  pointer-events: auto;
  background: var(--bhg-ivory);
  color: var(--bhg-ink);
  box-shadow: inset 0 0 0 1px var(--bhg-ink);
  transition: background-color 0.3s var(--bhg-ease), color 0.3s var(--bhg-ease), box-shadow 0.3s var(--bhg-ease), visibility 0s;
}
.bhg-header__back:hover,
.bhg-header__back:focus-visible { background: var(--bhg-bronze-deep); color: var(--bhg-cream); box-shadow: inset 0 0 0 1px var(--bhg-bronze-deep); }
.bhg-header.is-menu-open .bhg-header__back { visibility: hidden; transition: visibility 0s linear 0.4s; }
@media (max-width: 767px), (max-aspect-ratio: 4/5) {
  .bhg-header__back { min-height: 40px; padding: 0 14px; letter-spacing: 0.14em; }
}


.bhg-star {
  padding: calc(var(--bhg-header-h) + var(--bhg-safe-top) + clamp(24px, 6svh, 80px)) var(--bhg-gutter) clamp(72px, 12svh, 144px);
}
.bhg-star a:not(.bhg-btn) { color: var(--bhg-bronze); text-decoration: none; transition: color 0.3s var(--bhg-ease); }
.bhg-star a:not(.bhg-btn):hover, .bhg-star a:not(.bhg-btn):focus-visible { color: var(--bhg-ink); }
.bhg-star__hero {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  gap: clamp(32px, 5vw, 96px);
  align-items: end;
  margin: 0 0 clamp(72px, 12svh, 152px);
}
.bhg-star__photo {
  margin: 0;
  background: var(--team-tile, #eedeca);
}
.bhg-star__photo img { display: block; width: 100%; height: auto; }
.bhg-star__intro { max-width: 640px; padding-bottom: clamp(0px, 2svh, 24px); }
.bhg-star__intro h1 {
  margin: 0;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(54px, min(9vw, 15svh), 168px);
  line-height: 0.9;
  letter-spacing: -0.01em;
  text-transform: uppercase;
}
.bhg-star__role {
  margin: clamp(10px, 1.6svh, 18px) 0 clamp(28px, 4svh, 44px);
  font-style: italic;
  font-size: clamp(20px, 1.7vw, 26px);
  line-height: 1.3;
  color: var(--bhg-bronze);
}
.bhg-star__lead {
  margin: 0 0 clamp(28px, 4svh, 40px);
  font-size: clamp(18px, 1.4vw, 22px);
  line-height: 1.55;
}
.bhg-star__layout {
  display: grid;
  grid-template-columns: minmax(200px, 300px) minmax(0, 760px);
  gap: clamp(40px, 6vw, 112px);
  align-items: start;
}
.bhg-star__body { font-size: 17px; line-height: 1.65; }
.bhg-star__body p { margin: 0 0 14px; }
.bhg-star__body section { scroll-margin-top: calc(var(--bhg-header-h) + var(--bhg-safe-top) + 24px); }
.bhg-star__body h2 {
  margin: 0 0 22px;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(26px, 2.6vw, 40px);
  line-height: 1.1;
  text-transform: uppercase;
}
.bhg-star__about p:first-of-type { font-size: clamp(18px, 1.3vw, 20px); }
.bhg-star__about .bhg-btn { margin-top: 14px; }
.bhg-star__part { margin-top: clamp(64px, 10svh, 112px) !important; }
.bhg-star__technique + .bhg-star__technique { margin-top: clamp(44px, 7svh, 72px); }
.bhg-star__body h3 {
  margin: 0 0 14px;
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(19px, 1.6vw, 24px);
  line-height: 1.25;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.bhg-star__services { display: grid; gap: 3px; margin: 22px 0 0; }
.bhg-star__service {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 64px;
  gap: 18px;
  align-items: baseline;
  padding: 12px 18px;
  background: #f1e5da;
  font-size: 16px;
  line-height: 1.4;
}
.bhg-star__service dt { margin: 0; }
.bhg-star__service dd { margin: 0; white-space: nowrap; color: var(--bhg-bronze); font-variant-numeric: tabular-nums; }
.bhg-star__service dd:last-child { text-align: right; color: var(--bhg-ink); }
.bhg-star__stand { margin-top: 28px !important; font-size: 15px; color: var(--bhg-bronze); }
.bhg-star__faq { margin-top: clamp(72px, 11svh, 128px); }
.bhg-star__qa + .bhg-star__qa { margin-top: 30px; }
.bhg-star__qa h3 {
  font-family: var(--bhg-font-body) !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  margin-bottom: 6px !important;
}
.bhg-star__team { margin-top: clamp(96px, 15svh, 176px); }
.bhg-star__team h2 {
  margin: 0 0 clamp(24px, 4svh, 40px);
  font-family: var(--bhg-font-display);
  font-weight: 400;
  font-size: clamp(30px, 3.4vw, 56px);
  line-height: 1;
  text-transform: uppercase;
}
.bhg-star__others {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr));
  gap: clamp(12px, 1.6vw, 24px);
  margin: 0;
  padding: 0;
  list-style: none;
}
.bhg-star__other { display: block; color: var(--bhg-ink) !important; }
.bhg-star__other img {
  display: block;
  width: 100%;
  height: auto;
  background: var(--team-tile, #eedeca);
  transition: filter 0.4s var(--bhg-ease);
}
.bhg-star__other:hover img, .bhg-star__other:focus-visible img { filter: brightness(0.94); }
.bhg-star__other-name {
  display: block;
  margin-top: 12px;
  font-family: var(--bhg-font-display);
  font-size: 18px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  transition: color 0.3s var(--bhg-ease);
}
.bhg-star__other:hover .bhg-star__other-name, .bhg-star__other:focus-visible .bhg-star__other-name { color: var(--bhg-bronze); }
.bhg-star__other-role { display: block; margin-top: 2px; font-size: 15px; color: var(--bhg-bronze); }
.bhg-dienst .bhg-star__intro h1 { font-size: clamp(38px, min(5.4vw, 11svh), 96px); line-height: 1; }
.bhg-dienst .bhg-star__photo img { aspect-ratio: 4 / 5; object-fit: cover; }
.bhg-dienst .bhg-star__technique + .bhg-star__technique { margin-top: clamp(56px, 9svh, 96px); }
.bhg-dienst .bhg-star__services + h3,
.bhg-dienst .bhg-dienst__note + h3 { margin-top: 30px; }
.bhg-dienst .bhg-star__services + .bhg-star__services { margin-top: 3px; }
.bhg-dienst__note { margin: 10px 0 0 !important; font-size: 15px; line-height: 1.45; color: var(--bhg-bronze); }
.bhg-dienst__book { margin-top: 36px; }
.bhg-dienst__tile { aspect-ratio: 1 / 1; object-fit: cover; }
@media (max-width: 900px) {
  .bhg-dienst .bhg-star__photo img { aspect-ratio: 1 / 1; }
}
@media (max-width: 900px) {
  .bhg-star__hero { grid-template-columns: minmax(0, 1fr); align-items: start; }
  .bhg-star__photo { margin: 0 calc(-1 * var(--bhg-gutter)); }
  .bhg-star__layout { grid-template-columns: minmax(0, 1fr); }
  .bhg-star__toc { display: none; }
  .bhg-star__others { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
  .bhg-star__service { grid-template-columns: minmax(0, 1fr) auto; gap: 4px 14px; }
  .bhg-star__service dt { grid-column: 1 / -1; }
  .bhg-star__service dd:last-child { text-align: right; }
}
