.pf-site-footer {
  --pf-footer-black:var(--pf-black,#000);
  --pf-footer-white:var(--pf-white,#fff);
  --pf-footer-peach:var(--pf-peach,#eda077);
  --pf-footer-kicker:#874f37;
  width:100%;
  border-top:.0625rem solid rgba(0,0,0,.18);
  background:var(--pf-footer-peach);
  color:var(--pf-footer-black);
}
.pf-footer-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(1.8rem,4vw,3rem);
  padding-block:clamp(2.5rem,5vw,4.4rem);
}
.pf-footer-brand {
  width:min(100%,15rem);
  max-width:15rem;
}
.pf-footer-logo {
  display:block;
  width:100%;
  max-width:15rem;
  padding:0;
  color:inherit;
  text-decoration:none;
}
.pf-footer-logo img { display:block; width:100%; max-width:100%; height:auto; }
.pf-footer-brand-copy {
  width:100%;
  max-width:15rem;
  margin:1.35rem 0 0;
  font-size:clamp(.94rem,.9rem + .12vw,1.02rem);
  line-height:1.52;
}
.pf-footer-socials { display:flex; flex-wrap:wrap; gap:.8rem 1rem; margin-top:1rem; }
.pf-footer-socials a { display:inline-grid; place-items:center; padding:0; border:0; background:transparent; color:inherit; }
.pf-footer-socials svg { width:1.05rem; height:1.05rem; fill:none; stroke:currentColor; }
.pf-footer-contact-link {
  display:inline-flex; margin-top:1.05rem; padding-bottom:.12rem; border-bottom:.0625rem solid currentColor;
  color:inherit; font-size:clamp(.96rem,.92rem + .1vw,1.04rem); font-weight:700; text-decoration:none;
}
.pf-footer-contact-link:hover,.pf-footer-contact-link:focus-visible,.pf-footer-socials a:hover,.pf-footer-socials a:focus-visible { color:#874f37; }
.pf-footer-column h2 {
  margin:0 0 .82rem; color:var(--pf-footer-kicker)!important;
  font-size:clamp(1rem,.94rem + .22vw,1.16rem)!important; font-weight:800!important; line-height:1.18!important;
  letter-spacing:.1em; text-transform:uppercase;
}
.pf-footer-menu { display:grid; gap:.62rem; margin:0; padding:0; list-style:none; }
.pf-footer-menu li { margin:0; padding:0; }
.pf-footer-menu a {
  display:inline; padding:0; border:0; background:transparent; color:inherit;
  font-size:clamp(.95rem,.91rem + .12vw,1.04rem); line-height:1.42; text-decoration:none;
}
.pf-footer-menu a:hover,.pf-footer-menu a:focus-visible { text-decoration:underline; text-underline-offset:.22em; }
.pf-footer-widerruf { margin-top:1rem; }
.pf-footer-widerruf .pf-widerruf-open,.pf-footer-widerruf .rw-widerruf-open,.pf-footer-widerruf-fallback {
  display:inline-flex!important; align-items:center!important; justify-content:center!important; min-height:2.55rem!important;
  max-width:100%; padding:.58rem .75rem!important; border:.0625rem solid var(--pf-footer-black)!important; border-radius:0!important;
  background:var(--pf-footer-white)!important; color:var(--pf-footer-black)!important; box-shadow:none!important;
  font:inherit!important; font-size:.92rem!important; font-weight:700!important; line-height:1.18!important; text-decoration:none!important; cursor:pointer!important;
}
.pf-footer-widerruf .pf-widerruf-open:hover,.pf-footer-widerruf .pf-widerruf-open:focus-visible,.pf-footer-widerruf .rw-widerruf-open:hover,.pf-footer-widerruf .rw-widerruf-open:focus-visible,.pf-footer-widerruf-fallback:hover,.pf-footer-widerruf-fallback:focus-visible { background:var(--pf-footer-black)!important; color:var(--pf-footer-white)!important; }
.pf-footer-legal { background:var(--pf-footer-black); color:var(--pf-footer-white); }
.pf-footer-bottom { display:flex; flex-direction:column; align-items:flex-start; gap:.55rem; padding-block:.95rem; font-size:.88rem; }
.pf-footer-bottom a { color:inherit; text-decoration:none; }
.pf-footer-bottom a:hover,.pf-footer-bottom a:focus-visible { text-decoration:underline; text-underline-offset:.2em; }
@media (min-width:48rem) {
  .pf-footer-grid { grid-template-columns:minmax(15rem,1.2fr) repeat(3,minmax(9.5rem,.8fr)); align-items:start; }
  .pf-footer-bottom { flex-direction:row; align-items:center; justify-content:space-between; }
}
@media (max-width:47.99rem) {
  .pf-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:clamp(1rem,4vw,1.6rem); row-gap:2rem; }
  .pf-footer-brand { grid-column:1/-1; justify-self:center; text-align:center; }
  .pf-footer-logo { margin-inline:auto; }
  .pf-footer-brand-copy { margin:1.25rem auto 0; }
  .pf-footer-socials { justify-content:center; }
  .pf-footer-contact-link { justify-content:center; }
  .pf-footer-column { min-width:0; padding-top:1.2rem; border-top:.0625rem solid rgba(0,0,0,.14); }
  .pf-footer-column h2 { font-size:1.08rem!important; }
  .pf-footer-column:nth-of-type(3) { grid-column:1/-1; width:min(100%,22rem); justify-self:center; text-align:center; }
  .pf-footer-column:nth-of-type(3) .pf-footer-menu { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:1rem; }
  .pf-footer-column:nth-of-type(3) .pf-footer-menu li:last-child:nth-child(odd) { grid-column:1/-1; }
  .pf-footer-widerruf .pf-widerruf-open,.pf-footer-widerruf .rw-widerruf-open,.pf-footer-widerruf-fallback { width:100%!important; }
  .pf-footer-bottom { align-items:center; text-align:center; }
}

/* 1.0.12: The space belongs between logo and copy, not at the sides of the copy. */
.pf-footer-logo {
  margin-bottom:clamp(2rem,2.8vw,2.35rem);
}
.pf-footer-brand-copy {
  margin-top:0!important;
  text-align:center;
  text-wrap:balance;
}
@media (max-width:47.99rem) {
  .pf-footer-logo { margin-bottom:2.2rem; }
  .pf-footer-brand-copy { margin-inline:auto; padding-inline:0; }
}
