@font-face { font-family: "Marion Promo Display"; src: url("assets/ogg.ttf"); font-display: swap; }
@font-face { font-family: "Marion Promo Body"; src: url("assets/maison.ttf"); font-display: swap; }
#mbf-home-campaign, #mbf-home-campaign *, .mbf-home-nav-item, .mbf-home-gold, #mbf-home-mobile { box-sizing: border-box; }
#mbf-home-campaign {
  position: fixed; inset: 0; margin: auto; padding: 48px 32px 24px;
  width: min(560px, calc(100% - 24px)); max-width: calc(100% - 24px);
  max-height: calc(100dvh - 24px); overflow-y: auto; overscroll-behavior: contain;
  border: 0; border-radius: 12px; background: #eae6e1; color: #3d3936;
  font-family: "Marion Promo Body", sans-serif; text-align: left;
  box-shadow: 0 24px 80px #201e1b38;
}
#mbf-home-campaign:not([open]) { display: none; }
#mbf-home-campaign::backdrop { background: #201e1bb3; backdrop-filter: blur(3px); }
#mbf-home-campaign .mbf-home-close {
  position: absolute; top: 4px; right: 4px; display: grid; place-items: center;
  width: 44px; height: 44px; min-height: 44px; padding: 0; margin: 0;
  border: 0; border-radius: 50%; outline: none; background: transparent; color: #3d3936;
  font: 400 28px/1 Arial, sans-serif; cursor: pointer; box-shadow: none;
}
#mbf-home-campaign .mbf-home-close:hover { background: #3d39360d; color: #3d3936; }
#mbf-home-campaign .mbf-home-close:focus-visible { outline: none; background: #3d3936; color: #eae6e1; }
#mbf-home-campaign h2[autofocus]:focus { outline: none; }
#mbf-home-campaign h2 { font: 400 clamp(36px, 5vw, 55px)/1.1 "Marion Promo Display", Georgia, serif; letter-spacing: -1px; margin: 16px 0; color: #3d3936; }
#mbf-home-campaign p { font: 400 17px/1.5 "Marion Promo Body", sans-serif; margin: 12px 0; color: #3d3936; }
#mbf-home-campaign .mbf-home-kicker { font-size: 12px; letter-spacing: .02em; }
.mbf-home-nav-item { display: flex; align-items: center; list-style: none; margin: 0; padding: 0; }
.mbf-home-nav-item[hidden] { display: none; }
body .mbf-home-gold {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  gap: 12px; padding: 10px 18px; min-height: 48px; white-space: nowrap;
  border: 1px solid #b59a68; border-radius: 3px;
  background: linear-gradient(115deg, #554b3d, #3d3936 48%, #484034);
  box-shadow: inset 0 0 0 3px #3d3936, inset 0 0 0 4px #e0c89638;
  color: #ead6ac !important; font: 400 22px/1.2 "Marion Promo Display", Georgia, serif;
  letter-spacing: -.02em; text-decoration: none; text-align: center;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
#mbf-home-campaign .mbf-home-cta { display: flex; min-height: 60px; padding: 16px; margin: 24px 0 0; font-size: 27px; white-space: normal; }
body .mbf-home-gold:focus-visible { outline: 2px solid #e0c896; outline-offset: 3px; }
#mbf-home-campaign .mbf-home-gold:focus-visible { outline-color: #826845; }
.mbf-home-with-row { flex-wrap: wrap; }
#mbf-home-mobile { display: flex; justify-content: center; width: 100%; flex: none; grid-column: 1 / -1; padding: 10px 16px; background: #3d3936; }
#mbf-home-mobile[hidden] { display: none; }
#mbf-home-mobile .mbf-home-gold { width: 100%; max-width: 440px; min-height: 48px; }
body:has(#mbf-home-campaign[open]) { overflow: hidden; }
@media (hover: hover) {
  body .mbf-home-gold:hover {
    background: linear-gradient(115deg, #efe0bb, #ecd4a3 55%, #c6a571);
    border-color: #e0c896; color: #403426 !important;
    box-shadow: inset 0 0 0 3px #ead6ac, inset 0 0 0 4px #8d744a77;
  }
}
@media (max-width: 380px) {
  #mbf-home-campaign { padding: 44px 20px 20px; }
  #mbf-home-campaign .mbf-home-cta { font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) { body .mbf-home-gold { transition: none; } }
