/* Maison Miel footer — rebuilt from the supplied footer reference assets. */
.footer-reference {
  position: relative;
  width: 100%;
  margin: 0;
  overflow: hidden;
  background: #fff6e6;
  color: #121212;
}
.footerref-page,
.footerref-page * { box-sizing: border-box; }
.footerref-page a { color: inherit; text-decoration: none; }
.footerref-page button,
.footerref-page input { font: inherit; }

.footerref-page {
  --gold: #f3b127;
  --line: rgba(218,163,54,.47);
  position: relative;
  width: 100%;
  height: 821px;
  overflow: hidden;
  isolation: isolate;
  font-family: "Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
  background:
    radial-gradient(ellipse at 50% 18%, rgba(255,255,252,.96) 0%, rgba(255,249,234,.88) 30%, rgba(249,235,203,.74) 61%, rgba(244,224,179,.58) 100%),
    radial-gradient(circle at 10% 57%, rgba(255,239,194,.38), transparent 22%),
    radial-gradient(circle at 90% 57%, rgba(255,237,191,.35), transparent 22%),
    linear-gradient(90deg, #f1ddb2 0%, #fbefd4 14%, #fff5df 50%, #fbefd4 86%, #f1ddb2 100%);
}

.footerref-page::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at 50% 40%, rgba(255,255,255,.28), transparent 51%);
}


/* Left wave from the supplied reference. */
.footerref-left-wave {
  position: absolute;
  z-index: 7;
  top: 0;
  left: 0;
  width: 49%;
  height: 118px;
  pointer-events: none;
  fill: none;
  stroke: #f0aa1e;
  stroke-width: 2.2;
  stroke-linecap: round;
  opacity: .62;
}
.footerref-left-wave .soft { stroke-width: 1.2; opacity: .20; }

/* IMPORTANT: keep the supplied 1916×330 honey image at its natural aspect ratio. */
.footerref-honey {
  position: absolute;
  z-index: 12;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  object-fit: contain;
  object-position: top center;
  pointer-events: none;
  user-select: none;
  opacity: 1;
}

.footerref-flowers {
  position: absolute;
  z-index: 2;
  display: block;
  height: auto;
  opacity: .58;
  pointer-events: none;
  user-select: none;
}
.footerref-flowers-left { left: 0; top: 178px; width: 220px; }
.footerref-flowers-right { right: 0; top: 405px; width: 251px; }

.footerref-newsletter {
  position: absolute;
  z-index: 10;
  top: 180px;
  left: 50%;
  width: 820px;
  transform: translateX(-50%);
  text-align: center;
}
.footerref-newsletter h1 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 52px;
  line-height: 1.04;
  font-weight: 400;
  letter-spacing: -.035em;
}
.footerref-newsletter p { margin: 22px 0 29px; font-size: 23px; line-height: 1.2; }

.footerref-signup {
  width: 714px;
  height: 73px;
  margin: 0 auto;
  display: flex;
  overflow: hidden;
  border-radius: 14px;
  background: rgba(255,255,255,.80);
  box-shadow: 0 2px 10px rgba(176,126,26,.05);
  transition: box-shadow .25s ease, transform .25s ease;
}
.footerref-signup:hover,
.footerref-signup:focus-within {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(176,126,26,.10);
}
.footerref-signup input {
  min-width: 0;
  flex: 1;
  border: 0;
  outline: 0;
  background: transparent;
  padding: 0 28px;
  color: #606060;
  font-size: 21px;
}
.footerref-signup input::placeholder { color: #7d7d7d; opacity: 1; }
.footerref-signup button {
  width: 188px;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg,#f8c13a 0%,#f3b229 58%,#eda518 100%);
  color: #111;
  font-size: 21px;
  cursor: pointer;
}

.footerref-footer {
  position: absolute;
  z-index: 10;
  top: 454px;
  left: 0;
  width: 100%;
  height: 238px;
}
.footerref-brand-block { position: absolute; left: 10.9%; top: 16px; width: 390px; }
.footerref-brand { display: flex; align-items: center; gap: 25px; width: max-content; }
.footerref-logo-bee { display: block; width: 104px; height: 104px; object-fit: contain; }
.footerref-brand-name { display: flex; flex-direction: column; align-items: center; }
.footerref-brand-main,
.footerref-brand-sub { font-family: Didot, "Bodoni MT", Georgia, serif; white-space: nowrap; }
.footerref-brand-main { font-size: 31px; letter-spacing: .17em; line-height: 1; }
.footerref-brand-sub { margin-top: 9px; padding-left: .34em; font-size: 23px; letter-spacing: .34em; line-height: 1; }
.footerref-divider { position: absolute; left: 34.25%; top: 0; width: 1px; height: 236px; background: linear-gradient(to bottom, transparent, var(--line) 9%, var(--line) 91%, transparent); }
.footerref-footer-links { position: absolute; top: -1px; display: flex; flex-direction: column; align-items: flex-start; }
.footerref-shop { left: 38.2%; }
.footerref-service { left: 54.55%; }
.footerref-legal { left: 73.5%; }
.footerref-footer-links h2 { margin: 0 0 28px; font-size: 22px; line-height: 1.15; font-weight: 700; }
.footerref-footer-links a { margin: 0 0 22px; font-size: 20px; line-height: 1.15; }

.footerref-footer-rule {
  position: absolute;
  z-index: 10;
  left: 4.3%;
  right: 4.3%;
  top: 726px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(217,164,50,.45) 7%, rgba(217,164,50,.45) 93%, transparent);
}
.footerref-copyright {
  position: absolute;
  z-index: 10;
  top: 752px;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  font-size: 19px;
  line-height: 1.2;
  white-space: nowrap;
}
.footerref-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

@media (max-width:1100px) {
  .footerref-page { height:auto; min-height:980px; padding:145px 24px 48px; display:flex; flex-direction:column; align-items:center; }
  .footerref-honey { left:50%; width:125%; transform:translateX(-50%); height:auto; }
  .footerref-left-wave { width:65%; height:92px; }
  .footerref-flowers { display:none; }
  .footerref-newsletter,
  .footerref-footer,
  .footerref-brand-block,
  .footerref-divider,
  .footerref-footer-links,
  .footerref-footer-rule,
  .footerref-copyright { position:static; transform:none; left:auto; top:auto; width:auto; height:auto; }
  .footerref-newsletter { width:min(760px,100%); }
  .footerref-newsletter h1 { font-size:46px; }
  .footerref-newsletter p { font-size:19px; }
  .footerref-signup { width:100%; height:64px; }
  .footerref-signup input,
  .footerref-signup button { font-size:18px; }
  .footerref-signup button { width:180px; }
  .footerref-footer { width:min(900px,100%); margin-top:76px; display:grid; grid-template-columns:1fr 1fr; gap:40px 34px; }
  .footerref-brand-block { grid-column:1/-1; width:100%; }
  .footerref-brand { margin:0 auto; }
  .footerref-divider { display:none; }
  .footerref-footer-links { align-items:center; text-align:center; }
  .footerref-footer-rule { width:min(900px,100%); height:1px; margin-top:54px; }
  .footerref-copyright { margin-top:20px; font-size:16px; }
}

@media (max-width:640px) {
  .footerref-page { min-height:1100px; padding:120px 16px 36px; }
  .footerref-honey { width:150%; height:auto; }
  .footerref-left-wave { width:78%; height:75px; }
  .footerref-newsletter h1 { font-size:36px; }
  .footerref-newsletter p { font-size:17px; }
  .footerref-signup { height:auto; flex-direction:column; gap:10px; overflow:visible; background:transparent; box-shadow:none; }
  .footerref-signup input { height:58px; border-radius:12px; background:rgba(255,255,255,.82); font-size:17px; }
  .footerref-signup button { width:100%; height:58px; border-radius:12px; font-size:17px; }
  .footerref-footer { grid-template-columns:1fr; gap:28px; }
  .footerref-brand { gap:14px; }
  .footerref-logo-bee { width:76px; height:76px; }
  .footerref-brand-main { font-size:24px; }
  .footerref-brand-sub { font-size:18px; }
  .footerref-facebook { font-size:40px; }
  .footerref-footer-links h2 { font-size:20px; }
  .footerref-footer-links a { font-size:17px; margin-bottom:16px; }
  .footerref-copyright { font-size:14px; text-align:center; white-space:normal; }
}
