/* FVWL – footer in het designsysteem (child theme inc/footer.php). Alle kleuren en letters komen uit fvwl-design.css (--fvwl-*).
   Opbouw: voordelen (wit) · vier kolommen op gebroken wit (merk, klantenservice, over ons, nieuwsbrief) · onderregel met
   firmagegevens en betaallogo's. Goud alleen in het logo, de kleine iconen en de onderlijn bij hover. */

.fvwl-ft{ clear:both; background:var(--fvwl-paper); color:var(--fvwl-anthracite); font-family:var(--fvwl-sans); font-weight:300; font-size:15px; line-height:1.6; border-top:1px solid var(--fvwl-line); }
.fvwl-ft *, .fvwl-ft *::before, .fvwl-ft *::after{ box-sizing:border-box; }
.fvwl-ft ul{ list-style:none !important; margin:0; padding:0 !important; }
.fvwl-ft li{ list-style:none !important; }
.fvwl-ft a{ color:var(--fvwl-anthracite); text-decoration:none; }

/* ---------- 1. Voordelen ---------- */
.fvwl-ft__usp{ background:var(--fvwl-white); border-bottom:1px solid var(--fvwl-line); }
.fvwl-ft__usp ul{ max-width:var(--fvwl-container); margin:0 auto; padding:28px var(--fvwl-gutter) !important; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.fvwl-ft__usp li{ display:flex; align-items:center; justify-content:center; gap:16px; margin:0; }
.fvwl-ft__usp svg{ flex:none; width:28px; height:28px; color:var(--fvwl-gold); }
.fvwl-ft__usp-txt{ display:block; text-align:left; }
.fvwl-ft__usp-txt strong{ display:block; font-weight:400; font-size:12px; line-height:1.4; letter-spacing:.18em; text-transform:uppercase; color:var(--fvwl-ink); }
.fvwl-ft__usp-txt > span{ display:block; margin-top:2px; font-size:14px; line-height:1.4; color:var(--fvwl-muted); }

/* ---------- 2. Kolommen ---------- */
.fvwl-ft__main{ max-width:var(--fvwl-container); margin:0 auto; padding:64px var(--fvwl-gutter) 52px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,.9fr) minmax(0,1.45fr); gap:48px; align-items:start; }
.fvwl-ft__logo{ display:inline-block; line-height:0; }
.fvwl-ft__logo img{ width:150px; height:auto; display:block; }
.fvwl-ft__tag{ max-width:300px; margin:18px 0 22px; padding:0; font-family:var(--fvwl-serif); font-style:italic; font-weight:400; font-size:19px; line-height:1.45; color:var(--fvwl-anthracite); }
.fvwl-ft__social{ display:flex; gap:12px; }
.fvwl-ft__social a{ display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border:1px solid var(--fvwl-line-strong); color:var(--fvwl-anthracite); transition:border-color .2s ease, color .2s ease; }
.fvwl-ft__social a:hover, .fvwl-ft__social a:focus-visible{ border-color:var(--fvwl-anthracite); color:var(--fvwl-ink); }
.fvwl-ft__social svg{ width:20px; height:20px; }

.fvwl-ft h2{ margin:6px 0 20px !important; padding:0 !important; font-family:var(--fvwl-sans) !important; font-weight:400 !important; font-size:12px !important; line-height:1.4 !important; letter-spacing:.2em !important; text-transform:uppercase !important; color:var(--fvwl-ink) !important; }
.fvwl-ft__links li{ margin:0 0 12px; padding:0; }
.fvwl-ft__links a{ display:inline-block; padding:0 0 2px; font-size:15px; line-height:1.5; border-bottom:1px solid transparent; transition:border-color .2s ease; }
.fvwl-ft__links a:hover, .fvwl-ft__links a:focus-visible{ border-bottom-color:var(--fvwl-gold); color:var(--fvwl-ink); }

/* ---------- 3. Nieuwsbrief: het bestaande Brevo-formulier, in het systeem ----------
   Brevo zet zijn opmaak in style-attributen; daarom overal !important. */
.fvwl-ft__form .sib-form{ padding:0 !important; background:none !important; text-align:left !important; font-family:var(--fvwl-sans) !important; }
.fvwl-ft__form .sib-form-container, .fvwl-ft__form #sib-container{ max-width:none !important; margin:0 !important; padding:0 !important; background:none !important; border:0 !important; border-radius:0 !important; text-align:left !important; }
.fvwl-ft__form #sib-form{ display:flex; align-items:stretch; gap:0; margin:0; }
.fvwl-ft__form #sib-form > div{ padding:0 !important; margin:0 !important; }
.fvwl-ft__form #sib-form > div:first-of-type{ flex:1 1 auto; min-width:0; }
.fvwl-ft__form .sib-form .sib-form-block, .fvwl-ft__form .sib-form .form__entry, .fvwl-ft__form .sib-form .form__label-row{ margin:0 !important; padding:0 !important; }
.fvwl-ft__form .sib-form .entry__field{ margin:0 !important; border:0 !important; border-radius:0 !important; background:none !important; box-shadow:none !important; }
.fvwl-ft__form .sib-form .input{ display:block !important; width:100% !important; height:var(--fvwl-control-h,52px) !important; margin:0 !important; padding:0 16px !important; border:1px solid var(--fvwl-line-strong) !important; border-right:0 !important; border-radius:0 !important; background:var(--fvwl-white) !important; box-shadow:none !important;
  font-family:var(--fvwl-sans) !important; font-weight:300 !important; font-size:15px !important; letter-spacing:.02em !important; color:var(--fvwl-ink) !important; }
.fvwl-ft__form .sib-form .input:focus{ outline:0 !important; border-color:var(--fvwl-anthracite) !important; }
.fvwl-ft__form #sib-container .input::placeholder{ font-family:var(--fvwl-sans) !important; font-weight:400 !important; color:var(--fvwl-muted) !important; letter-spacing:.14em !important; font-size:12px !important; text-transform:uppercase; opacity:1; }
.fvwl-ft__form .sib-form .input--hidden{ display:none !important; }
.fvwl-ft__form .sib-form-block_button{ display:inline-flex !important; align-items:center !important; justify-content:center !important; height:var(--fvwl-control-h,52px) !important; min-width:0 !important; margin:0 !important; padding:2px 24px 0 !important; border:0 !important; border-radius:0 !important; background:var(--fvwl-anthracite) !important; color:#fff !important; cursor:pointer;
  font-family:var(--fvwl-sans) !important; font-weight:400 !important; font-size:12px !important; letter-spacing:.18em !important; text-transform:uppercase !important; white-space:nowrap; transition:background-color .2s ease; }
.fvwl-ft__form .sib-form-block_button:hover, .fvwl-ft__form .sib-form-block_button:focus-visible{ background:var(--fvwl-ink) !important; }
.fvwl-ft__form .sib-form-block_button .progress-indicator_icon{ width:16px; height:16px; margin:0 8px 0 0; fill:#fff; }
.fvwl-ft__form .sib-form .entry_error{ display:block; margin:8px 0 0 !important; padding:0 !important; background:none !important; border:0 !important; font-family:var(--fvwl-sans) !important; font-size:13px !important; color:#B3261E !important; }
.fvwl-ft__form .sib-form .entry_error:empty{ display:none; }
.fvwl-ft__form .sib-form-message-panel{ max-width:none !important; margin:0 0 14px !important; padding:0 !important; border:0 !important; border-left:2px solid var(--fvwl-gold) !important; border-radius:0 !important; background:var(--fvwl-white) !important; color:var(--fvwl-anthracite) !important; font-family:var(--fvwl-sans) !important; font-weight:300 !important; font-size:14px !important; }
.fvwl-ft__form #error-message.sib-form-message-panel{ border-left-color:#B3261E !important; }
.fvwl-ft__form .sib-form-message-panel_text{ padding:12px 14px !important; }
.fvwl-ft__form .sib-form-message-panel svg{ display:none !important; }

/* ---------- 4. Onderregel ---------- */
.fvwl-ft__bottom{ border-top:1px solid var(--fvwl-line); }
.fvwl-ft__bottom-in{ max-width:var(--fvwl-container); margin:0 auto; padding:22px var(--fvwl-gutter); display:flex; align-items:center; justify-content:space-between; gap:20px 32px; flex-wrap:wrap; }
.fvwl-ft__legal{ margin:0; padding:0; font-size:12px; line-height:1.7; letter-spacing:.04em; color:var(--fvwl-muted); }
.fvwl-ft__legal a{ color:var(--fvwl-muted); border-bottom:1px solid var(--fvwl-line-strong); }
.fvwl-ft__legal a:hover{ color:var(--fvwl-ink); border-bottom-color:var(--fvwl-gold); }
.fvwl-ft__pay{ flex:none; line-height:0; }
.fvwl-ft__pay img{ display:block; width:250px; max-width:100%; height:auto; }

/* De losse firmaregel staat nu in de footer */
body.fvwl-new-footer .fvwl-legal-line{ display:none !important; }

/* ---------- 5. Smaller ---------- */
@media (max-width:1100px){
  .fvwl-ft__main{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:44px 40px; padding-top:52px; }
  .fvwl-ft__brand{ grid-column:1 / -1; }
  .fvwl-ft__news{ grid-column:1 / -1; max-width:560px; }
}
@media (max-width:767px){
  .fvwl-ft__usp ul{ grid-template-columns:1fr; gap:16px; padding:22px 16px !important; }
  .fvwl-ft__usp li{ justify-content:flex-start; }
  .fvwl-ft__main{ padding:40px 16px 36px; gap:36px 24px; }
  .fvwl-ft__logo img{ width:132px; }
  .fvwl-ft__tag{ font-size:18px; margin:14px 0 18px; }
  .fvwl-ft h2{ margin-bottom:16px !important; }
  .fvwl-ft__bottom-in{ padding:20px 16px 96px; flex-direction:column; align-items:flex-start; } /* ruimte voor het zwevende mandje */
  .fvwl-ft__pay img{ width:220px; }
}
