/* FVWL – 404, zoekresultaten, leeg mandje en Mijn account in het designsysteem (zie fvwl-systeempaginas.php).
   Gebruikt alleen de variabelen van fvwl-design.css; geen losse kleurcodes. */

/* ---------- omhulsel: volle breedte, geen zijbalk, geen lijn van Divi ---------- */
body.fvwl-sp-page #main-content .container{ width:100% !important; max-width:var(--fvwl-container,1320px) !important; padding-left:var(--fvwl-gutter,32px) !important; padding-right:var(--fvwl-gutter,32px) !important; }
body.fvwl-sp-page #main-content .container::before{ display:none !important; }
body.fvwl-sp-page #left-area{ width:100% !important; float:none !important; padding:0 !important; }
body.fvwl-sp-page #sidebar{ display:none !important; }

.fvwl-sp{ padding:64px 0 96px; color:var(--fvwl-anthracite); font-family:var(--fvwl-sans); }
.fvwl-sp__head{ max-width:720px; margin:0 0 56px; }
.fvwl-sp--404 .fvwl-sp__head{ margin-left:auto; margin-right:auto; text-align:center; }
.fvwl-sp__eyebrow{ font:400 var(--fvwl-fs-label,11.5px)/1 var(--fvwl-sans); letter-spacing:var(--fvwl-ls-label,.18em); text-transform:uppercase; color:var(--fvwl-muted); margin:0 0 18px; padding:0; }
.fvwl-sp__eyebrow::before{ content:""; display:inline-block; width:28px; height:1px; background:var(--fvwl-gold); vertical-align:middle; margin-right:12px; }
.fvwl-sp--404 .fvwl-sp__eyebrow::after{ content:""; display:inline-block; width:28px; height:1px; background:var(--fvwl-gold); vertical-align:middle; margin-left:12px; }
.fvwl-sp__title{ font:500 clamp(34px,4.4vw,56px)/1.08 var(--fvwl-serif) !important; color:var(--fvwl-ink) !important; margin:0 0 18px !important; padding:0 !important; letter-spacing:0; text-transform:none; }
.fvwl-sp__lead{ font:300 var(--fvwl-fs-lead,19px)/1.6 var(--fvwl-sans); color:var(--fvwl-anthracite); margin:0 0 28px; padding:0; }
.fvwl-sp__count{ font:400 var(--fvwl-fs-small,14px)/1.4 var(--fvwl-sans); color:var(--fvwl-muted); margin:-6px 0 24px; padding:0; }

/* zoekveld: veld en knop op één lijn, 52 px, rechte hoeken */
.fvwl-sp__search{ display:flex; gap:0; max-width:520px; margin:0 0 24px; }
.fvwl-sp--404 .fvwl-sp__search{ margin-left:auto; margin-right:auto; }
.fvwl-sp__search input[type=search]{ flex:1 1 auto; min-width:0; height:var(--fvwl-control-h,52px); 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; color:var(--fvwl-ink) !important; font:300 16px/1 var(--fvwl-sans) !important; -webkit-appearance:none; appearance:none; }
.fvwl-sp__search input[type=search]:focus{ outline:0; border-color:var(--fvwl-anthracite) !important; }
.fvwl-sp__search .fvwl-btn{ flex:0 0 auto; }
.fvwl-sp__actions{ display:flex; flex-wrap:wrap; gap:12px; margin:0; padding:0; }
.fvwl-sp--404 .fvwl-sp__actions{ justify-content:center; }

.fvwl-sp__sec{ margin-top:72px; }
.fvwl-sp__h2{ font:500 30px/1.15 var(--fvwl-serif) !important; color:var(--fvwl-ink) !important; margin:0 0 28px !important; padding:0 0 14px !important; border-bottom:1px solid var(--fvwl-line); }
.fvwl-sp__chips{ display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 0; }
.fvwl-sp__chips a{ display:inline-flex; align-items:center; min-height:40px; padding:0 16px; border:1px solid var(--fvwl-line-strong); color:var(--fvwl-anthracite); font:400 14px/1 var(--fvwl-sans); text-decoration:none; transition:border-color var(--fvwl-ease,.22s ease), color var(--fvwl-ease,.22s ease); }
.fvwl-sp__chips a:hover, .fvwl-sp__chips a:focus-visible{ border-color:var(--fvwl-anthracite); color:var(--fvwl-ink); }
.fvwl-sp__list{ list-style:none !important; margin:0; padding:0 !important; }
.fvwl-sp__list li{ border-bottom:1px solid var(--fvwl-line); }
.fvwl-sp__list a{ display:block; padding:14px 0; color:var(--fvwl-ink); font:400 17px/1.4 var(--fvwl-sans); text-decoration:none; }
.fvwl-sp__list a:hover{ color:var(--fvwl-anthracite); text-decoration:underline; text-decoration-color:var(--fvwl-gold); text-underline-offset:5px; }
.fvwl-sp__pages{ display:flex; flex-wrap:wrap; justify-content:center; gap:6px; margin-top:56px; }
.fvwl-sp__pages .page-numbers{ display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:44px; padding:0 12px; border:1px solid var(--fvwl-line); color:var(--fvwl-anthracite); font:400 14px/1 var(--fvwl-sans); text-decoration:none; }
.fvwl-sp__pages .page-numbers.current{ border-color:var(--fvwl-anthracite); color:var(--fvwl-ink); }
.fvwl-sp__pages a.page-numbers:hover{ border-color:var(--fvwl-anthracite); }

@media (max-width:767px){
  .fvwl-sp{ padding:40px 0 64px; }
  .fvwl-sp__head{ margin-bottom:40px; }
  .fvwl-sp__sec{ margin-top:52px; }
  .fvwl-sp__h2{ font-size:26px !important; margin-bottom:20px !important; }
  .fvwl-sp__actions .fvwl-btn{ flex:1 1 100%; }
  .fvwl-sp__search .fvwl-btn{ padding-left:18px !important; padding-right:18px !important; }
}

/* ---------- Mijn account ---------- */
/* de h1 staat vóór de rijen van Divi: zelfde breedte en inspringing als een Divi-rij (80 %, hoogstens 1080 px) */
.fvwl-sp__title--account{ width:80%; max-width:1080px; margin:56px auto 0 !important; }
@media (max-width:767px){ .fvwl-sp__title--account{ margin-top:36px !important; } }
body.woocommerce-account .woocommerce h2{ font:500 28px/1.15 var(--fvwl-serif); color:var(--fvwl-ink); }
body.woocommerce-account .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; border-top:1px solid var(--fvwl-line); }
body.woocommerce-account .woocommerce-MyAccount-navigation li{ border-bottom:1px solid var(--fvwl-line); }
body.woocommerce-account .woocommerce-MyAccount-navigation a{ display:block; padding:14px 0; color:var(--fvwl-anthracite); font:400 12px/1.3 var(--fvwl-sans); letter-spacing:.14em; text-transform:uppercase; text-decoration:none; }
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{ color:var(--fvwl-ink); box-shadow:inset 2px 0 0 var(--fvwl-gold); padding-left:14px; }
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{ color:var(--fvwl-ink); }

/* ---------- Leeg mandje (WooCommerce Blocks) ---------- */
.wp-block-woocommerce-empty-cart-block{ padding:24px 0 40px; }
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{ font:500 clamp(30px,4vw,44px)/1.1 var(--fvwl-serif) !important; color:var(--fvwl-ink) !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before{ display:none !important; } /* het grote pictogram */
.wp-block-woocommerce-empty-cart-block h2:not(.wc-block-cart__empty-cart__title){ font:500 30px/1.15 var(--fvwl-serif) !important; color:var(--fvwl-ink) !important; text-align:left !important; margin:40px 0 24px !important; padding-bottom:14px; border-bottom:1px solid var(--fvwl-line); }
.wp-block-woocommerce-empty-cart-block .wp-block-separator{ display:none; }
/* de productbeeldjes hadden geen vaste verhouding: bij het laden schoof alles (CLS 0,47 op 390 px) */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image{ display:block; aspect-ratio:4 / 5; background:var(--fvwl-stone); overflow:hidden; margin-bottom:14px; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img{ width:100% !important; height:100% !important; object-fit:cover; display:block; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{ font:500 22px/1.2 var(--fvwl-serif) !important; color:var(--fvwl-ink) !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link{ text-decoration:none !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{ font:400 15px/1.4 var(--fvwl-sans) !important; color:var(--fvwl-anthracite) !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link{ min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:0 22px !important; border:1px solid var(--fvwl-anthracite) !important; border-radius:0 !important; background:transparent !important; color:var(--fvwl-anthracite) !important; font:400 12px/1 var(--fvwl-sans) !important; letter-spacing:.16em; text-transform:uppercase; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:hover{ background:var(--fvwl-anthracite) !important; color:var(--fvwl-white) !important; }
@media (max-width:767px){
  .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{ display:grid !important; grid-template-columns:1fr 1fr; gap:24px 14px; margin:0 !important; }
  .wp-block-woocommerce-empty-cart-block .wc-block-grid__product{ max-width:none !important; flex:none !important; width:auto !important; padding:0 !important; margin:0 !important; border:0 !important; }
  .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{ font-size:18px !important; }
  .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link{ width:100%; padding:0 8px !important; letter-spacing:.1em; font-size:11px !important; }
}
