/* ============================================================
   Little Yune — Homepage / global chrome, concept v16 (exact)
   Ported from little-yune-homepage-concept-v16.html
   Loaded LAST in the cascade so it governs the v16 look.
============================================================ */
:root{
  --mocha:#8c746a;
  --mocha-dark:#6e594f;
  --mauve:#ceaaaa;
  --pink:#e7b0b7;
  --peach:#facebf;
  --peach-soft:#fde7df;
  --sand:#e5e3d6;
  --sage:#c6c8b2;
  --cream:#faf8f3;
  --white:#ffffff;
  --ink:#3d322c;
  --ink-soft:#6b5c54;
  --shadow: 0 10px 26px rgba(140,116,106,0.18);
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:#e9e2d8;
  font-family:'Quicksand', sans-serif;
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
}
.devicewrap{
  max-width:430px;
  margin:0 auto;
  background:var(--cream);
  min-height:100vh;
  position:relative;
  overflow-x:hidden;
  box-shadow:0 0 60px rgba(0,0,0,0.16);
}
h1,h2,h3,.font-heading{font-family:'Poppins', sans-serif; font-weight:600;}
em{font-style:italic; font-family:'Poppins', sans-serif; font-weight:500; color:var(--mocha-dark);}
.devicewrap a{text-decoration:none; color:inherit;}
.devicewrap img{max-width:100%; display:block; object-fit:cover;}

@keyframes fadeUp{ from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:translateY(0);} }
.js .reveal{opacity:0;}
.js .reveal.in{animation:fadeUp .6s ease forwards;}

.icon{width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; display:block;}

/* ---------- announcement ---------- */
.announce{
  background:var(--mocha); color:var(--cream);
  text-align:center; font-size:11.5px; font-weight:600; letter-spacing:.03em;
  padding:9px 14px;
}

/* ---------- header ---------- */
.devicewrap > header{
  position:sticky; top:0; z-index:40;
  background:rgba(250,248,243,0.95);
  padding:14px 20px;
  display:flex; align-items:center; justify-content:space-between;
  border-bottom:1px solid rgba(140,116,106,0.14);
}
.devicewrap > header .logo-img{height:34px; width:auto;}
.desktop-nav{display:none;}
.header-icons{display:flex; gap:16px; align-items:center; color:var(--mocha);}
.header-icons .cart{position:relative; background:none; border:none; padding:0; color:inherit; cursor:pointer;}
.cart-badge{
  position:absolute; top:-6px; right:-8px;
  background:var(--pink); color:var(--mocha-dark);
  font-size:9px; font-weight:800;
  width:15px; height:15px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}
.header-icons .searchbtn{background:none;border:none;padding:0;color:inherit;cursor:pointer;display:flex;}
.menu-btn{cursor:pointer; display:flex;}

/* ---------- menu overlay (checkbox hack) ---------- */
#menu-toggle{display:none;}
.menu-overlay{
  position:fixed; inset:0; height:100dvh; z-index:60;
  background:var(--cream);
  transform:translateX(100%);
  transition:transform .28s ease;
  overflow-y:auto;
  padding-bottom:40px;
}
#menu-toggle:checked ~ .menu-overlay{transform:translateX(0);}
.menu-top{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 20px; border-bottom:1px solid rgba(140,116,106,0.14);
  position:sticky; top:0; background:var(--cream); z-index:2;
}
.menu-top .logo-img{height:30px;}
.menu-close{width:34px; height:34px; border-radius:50%; background:var(--sand); display:flex; align-items:center; justify-content:center; color:var(--mocha-dark); cursor:pointer;}
.menu-list{padding:6px 20px;}
.menu-list > a.menu-flat{
  display:block; padding:15px 4px; font-family:'Poppins',sans-serif; font-weight:600; font-size:15px;
  color:var(--mocha-dark); border-bottom:1px solid rgba(140,116,106,0.12);
}
details.menu-group{border-bottom:1px solid rgba(140,116,106,0.12);}
details.menu-group summary{
  list-style:none; cursor:pointer; padding:15px 4px;
  display:flex; align-items:center; justify-content:space-between;
  font-family:'Poppins',sans-serif; font-weight:600; font-size:15px; color:var(--mocha-dark);
}
details.menu-group summary::-webkit-details-marker{display:none;}
details.menu-group > summary::after{content:"+"; font-size:18px; font-weight:400; color:var(--mocha);}
details.menu-group[open] > summary::after{content:"–";}
.menu-sub{padding:2px 0 14px 4px; display:flex; flex-direction:column; gap:11px;}
.menu-sub a{font-size:13.5px; color:var(--ink-soft); font-weight:500;}
.menu-sub a.highlight{color:var(--mocha-dark); font-weight:700;}
.menu-footer-note{
  margin:22px 20px 0; padding:16px; background:var(--sand); border-radius:14px;
  font-size:12px; color:var(--ink-soft); line-height:1.6;
}
.menu-label{
  text-align:center; font-size:11px; color:var(--mocha); font-weight:700; letter-spacing:.05em;
  text-transform:uppercase; padding:10px 0 0;
}

/* ---------- hero ---------- */
.hero{position:relative;}
.hero-photo{width:100%; aspect-ratio:4/3.6; overflow:hidden; position:relative;}
.hero-photo img{width:100%; height:100%;}
.hero-panel{
  position:relative; margin:-42px 20px 0; padding:22px 20px;
  background:var(--peach); border-radius:20px; box-shadow:var(--shadow); z-index:2;
}
.hero-panel h1{font-size:23px; line-height:1.28; margin:0 0 10px; color:var(--mocha-dark);}
.hero-panel p{font-size:13px; color:var(--ink); line-height:1.55; margin:0 0 16px;}
.hero-badge{
  position:absolute; left:14px; top:14px; z-index:3;
  display:flex; align-items:center; gap:9px;
  background:var(--white); border-radius:16px; padding:9px 14px;
  box-shadow:var(--shadow);
}
.hero-badge .icon{width:20px; height:20px; color:var(--peach); fill:var(--peach); stroke:none; flex:0 0 auto;}
.hero-badge strong{display:block; font-family:'Poppins',sans-serif; font-weight:800; font-size:13px; color:var(--mocha-dark); line-height:1.2;}
.hero-badge span{font-size:9.5px; color:var(--ink-soft); font-weight:600;}
.hero-ctas{display:flex; align-items:center; gap:14px;}
.cta-primary{
  display:inline-flex; align-items:center; gap:6px;
  background:var(--mocha-dark); color:var(--cream);
  font-family:'Poppins',sans-serif; font-weight:700; font-size:13.5px;
  padding:12px 22px; border-radius:30px;
  transition:transform .15s ease, box-shadow .2s ease, background .2s ease;
}
.cta-primary:hover{ transform:translateY(-1px); box-shadow:0 6px 16px rgba(110,89,79,0.28); }
.cta-secondary{font-size:12.5px; font-weight:700; color:var(--mocha-dark); border-bottom:1.5px solid var(--mocha-dark); padding-bottom:2px;}

/* ---------- category tiles ---------- */
.cat-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:30px 20px 8px;}
.cat-tile{display:block; position:relative; border-radius:16px; overflow:hidden; aspect-ratio:1/1.05; box-shadow:var(--shadow);}
.cat-tile img{width:100%; height:100%; object-fit:cover; object-position:center; display:block; transition:transform .45s ease;}
.cat-tile:hover img{transform:scale(1.06);}
.cat-label{
  position:absolute; left:8px; bottom:8px;
  font-family:'Poppins',sans-serif; font-weight:600; font-size:12.5px;
  padding:6px 12px; border-radius:20px; color:var(--white); background:var(--pink);
}

/* ---------- feature strip (USPs) ---------- */
.feature-strip{
  display:flex; gap:10px; overflow-x:auto; scroll-snap-type:x mandatory;
  margin:14px 0 22px; padding:2px 20px 4px;
}
.feature-item{
  flex:0 0 auto; width:150px; scroll-snap-align:start; position:relative;
  background:var(--white); border:1px solid rgba(140,116,106,0.16); border-radius:16px;
  padding:15px 14px;
}
.feature-item .headline{font-family:'Poppins',sans-serif; font-weight:700; font-size:14px; color:var(--mocha-dark); margin:0 0 4px; line-height:1.25;}
.feature-item .desc{font-size:9.8px; color:var(--ink-soft); line-height:1.4; margin:0;}

/* ---------- order perks (compact auto-slider) ---------- */
.perks-slider{
  margin:28px 20px 24px; height:48px; border-radius:30px;
  background:var(--white); border:1.5px solid var(--peach);
  box-shadow:var(--shadow); overflow:hidden; position:relative;
}
.perks-track{position:relative; width:100%; height:100%;}
.perk-slide{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center; gap:8px;
  padding:0 16px; opacity:0; animation:perkFade 12s infinite;
}
.perk-slide .ic-dot{width:24px; height:24px; border-radius:50%; background:var(--peach); display:flex; align-items:center; justify-content:center; color:var(--mocha-dark); flex:0 0 auto;}
.perk-slide span{font-family:'Poppins',sans-serif; font-weight:600; font-size:11.5px; color:var(--mocha-dark); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.perk-slide:nth-child(1){animation-delay:0s;}
.perk-slide:nth-child(2){animation-delay:3s;}
.perk-slide:nth-child(3){animation-delay:6s;}
.perk-slide:nth-child(4){animation-delay:9s;}
@keyframes perkFade{
  0%{opacity:0; transform:translateY(6px);}
  4%{opacity:1; transform:translateY(0);}
  21%{opacity:1; transform:translateY(0);}
  27%{opacity:0; transform:translateY(-6px);}
  100%{opacity:0;}
}

/* ---------- section base ---------- */
.section{padding:36px 20px 6px; position:relative;}
.section-head{display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:16px; position:relative; z-index:2;}
.section-head h2{font-size:21px; margin:0 0 4px; color:var(--mocha-dark);}
.section-head p{font-size:12.5px; color:var(--ink-soft); margin:0;}

/* ---------- shop tabs (radio hack) ---------- */
.shop-block{background:var(--peach-soft); padding-bottom:26px; position:relative;}
.tab-radio{display:none;}
.tab-pills{display:flex; gap:8px; overflow-x:auto; padding:0 20px 16px;}
.tab-pills label{
  flex:0 0 auto; font-family:'Poppins',sans-serif; font-weight:600; font-size:12.5px;
  padding:9px 16px; border-radius:30px; background:var(--white); color:var(--mocha-dark);
  border:1px solid rgba(140,116,106,0.15); cursor:pointer; white-space:nowrap;
}
#tab-new:checked ~ .tab-pills label[for="tab-new"],
#tab-best:checked ~ .tab-pills label[for="tab-best"],
#tab-pers:checked ~ .tab-pills label[for="tab-pers"],
#tab-opberg:checked ~ .tab-pills label[for="tab-opberg"],
#tab-haartools:checked ~ .tab-pills label[for="tab-haartools"]{
  background:var(--pink); color:var(--white); border-color:var(--pink);
}
.tab-panels .panel{display:none;}
#tab-new:checked ~ .tab-panels .panel-new{display:block;}
#tab-best:checked ~ .tab-panels .panel-best{display:block;}
#tab-pers:checked ~ .tab-panels .panel-pers{display:block;}
#tab-opberg:checked ~ .tab-panels .panel-opberg{display:block;}
#tab-haartools:checked ~ .tab-panels .panel-haartools{display:block;}

.carousel{display:flex; gap:14px; overflow-x:auto; padding:2px 20px 8px; scroll-snap-type:x mandatory;}
.product-card{display:block; flex:0 0 auto; width:168px; scroll-snap-align:start; background:var(--cream); border-radius:18px; padding:10px 10px 14px; box-shadow:var(--shadow); transition:transform .18s ease, box-shadow .18s ease;}
.product-card:hover{transform:translateY(-4px); box-shadow:0 16px 30px rgba(140,116,106,0.24);}
.product-photo{width:100%; aspect-ratio:1/1; border-radius:14px; overflow:hidden; margin-bottom:10px; position:relative;}
.product-photo img{width:100%; height:100%; object-fit:cover; object-position:center; background:var(--cream);}
.stock-badge{
  position:absolute; top:8px; left:8px; background:var(--peach); color:var(--mocha-dark);
  font-family:'Poppins',sans-serif; font-size:9px; font-weight:700; padding:4px 9px; border-radius:20px;
}
.product-card h3{font-size:14px; margin:0 0 6px; font-weight:700; color:var(--ink); font-family:'Poppins',sans-serif; line-height:1.25; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.5em;}
.product-card .setinfo{font-size:10.8px; color:var(--ink-soft); margin:0 0 8px; line-height:1.4;}
.product-row{display:flex; align-items:center; justify-content:space-between;}
.price{font-size:14px; font-weight:800; color:var(--mocha-dark); font-family:'Poppins',sans-serif;}
.price .was{font-size:11px; font-weight:600; color:var(--ink-soft); text-decoration:line-through; margin-right:4px;}
.add-btn{width:28px; height:28px; border-radius:50%; background:var(--white); color:var(--mocha-dark); border:1.5px solid rgba(140,116,106,0.25); display:flex; align-items:center; justify-content:center; font-size:15px; transition:background .18s ease, color .18s ease, border-color .18s ease;}
.add-btn:hover{background:var(--mocha-dark); color:var(--cream); border-color:var(--mocha-dark);}

.panel-cta{padding:8px 20px 0;}
.cta-full{
  display:block; text-align:center; background:var(--white); color:var(--mocha-dark);
  font-family:'Poppins',sans-serif; font-weight:700; font-size:13.5px; padding:12px; border-radius:30px;
  border:1.5px solid rgba(140,116,106,0.22); transition:background .18s ease, color .18s ease, border-color .18s ease;
}
.cta-full:hover{ background:var(--mocha-dark); color:var(--cream); border-color:var(--mocha-dark); }

/* ---------- limited edition drops slider ---------- */
.drops-wrap{margin:36px 0 0; background:var(--white); padding:32px 0 26px; border-top:1px solid rgba(140,116,106,0.12); border-bottom:1px solid rgba(140,116,106,0.12);}
.drops-head{padding:0 20px; margin-bottom:18px;}
.drops-head .kicker{font-size:10.5px; font-weight:700; color:var(--mocha-dark); text-transform:uppercase; letter-spacing:.06em; margin:0 0 4px;}
.drops-head h2{font-size:21px; margin:0 0 8px; color:var(--mocha-dark);}
.drops-text{font-size:12.5px; color:var(--ink-soft); line-height:1.55; margin:0 0 14px; max-width:420px;}
.drops-cta{display:inline-block; background:var(--mocha-dark); color:var(--cream); font-family:'Poppins',sans-serif; font-weight:700; font-size:12.5px; padding:11px 20px; border-radius:30px; transition:transform .15s ease, box-shadow .2s ease;}
.drops-cta:hover{transform:translateY(-1px); box-shadow:0 6px 16px rgba(110,89,79,0.28);}
.drops-scroll{display:flex; gap:14px; overflow-x:auto; padding:2px 20px 8px; scroll-snap-type:x mandatory;}
.drop-card{display:block; flex:0 0 auto; width:210px; scroll-snap-align:start; border-radius:18px; overflow:hidden; box-shadow:var(--shadow); background:var(--white);}
.drop-photo{width:100%; aspect-ratio:4/5; overflow:hidden;}
.drop-photo img{width:100%; height:100%; object-fit:cover; object-position:center; background:var(--cream);}
.drop-foot{display:flex; align-items:center; justify-content:space-between; padding:12px 14px;}
.drop-foot span:first-child{font-family:'Poppins',sans-serif; font-weight:700; font-size:13px; color:var(--ink);}
.drop-arrow{width:30px; height:30px; border-radius:50%; background:var(--peach); display:flex; align-items:center; justify-content:center; color:var(--mocha-dark); flex:0 0 auto;}

/* ---------- editorial banner ---------- */
.editorial{margin:36px 20px 0; position:relative; border-radius:20px; overflow:hidden; box-shadow:var(--shadow);}
.editorial img{width:100%; height:230px; object-fit:cover;}
.editorial-panel{
  position:absolute; left:14px; right:14px; bottom:14px;
  background:var(--sand); border-radius:14px; padding:14px 16px;
}
.editorial-panel p.kicker{font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--mocha-dark); margin:0 0 4px;}
.editorial-panel h3{font-size:16px; margin:0 0 8px; color:var(--mocha-dark);}
.editorial-panel a{font-size:12px; font-weight:700; color:var(--mocha-dark); border-bottom:1.5px solid var(--mocha-dark);}

/* ---------- trust band ---------- */
.trust-band{
  margin:36px 0 0; padding:26px 20px; background:var(--sage);
  display:flex; align-items:center; gap:14px;
}
.trust-band .stars{display:flex; gap:2px; color:var(--mocha-dark);}
.trust-band .stars .icon{width:16px; height:16px; fill:var(--mocha-dark); stroke:none;}
.trust-band strong{display:block; font-size:15px; color:var(--mocha-dark); font-family:'Poppins',sans-serif; font-weight:700; margin-bottom:2px;}
.trust-band span{font-size:11.5px; color:var(--ink); line-height:1.4;}

/* ---------- webwinkelkeur reviews widget ---------- */
.wwk-widget{margin:18px 20px 0; background:var(--mocha-dark); border-radius:16px; padding:14px; display:flex; justify-content:center;}

/* ---------- about ---------- */
.about-section{padding:34px 20px 8px; display:flex; gap:16px; align-items:center;}
.about-photo{width:104px; height:126px; flex:0 0 auto;}
.about-photo img{width:100%; height:100%; border-radius:16px; box-shadow:var(--shadow);}
.about-text .kicker{font-size:10.5px; font-weight:700; color:var(--mocha-dark); text-transform:uppercase; letter-spacing:.06em; margin-bottom:4px;}
.about-text h3{margin:0 0 8px; font-size:19px; color:var(--mocha-dark);}
.about-text p{font-size:12.5px; color:var(--ink-soft); line-height:1.6; margin:0 0 10px;}
.about-text a{font-size:12px; font-weight:700; color:var(--mocha-dark); border-bottom:1.5px solid var(--mocha-dark); padding-bottom:1px;}

/* ---------- newsletter ---------- */
.newsletter{margin:36px 0 0; padding:34px 22px; background:var(--peach); text-align:center; position:relative; overflow:hidden;}
.newsletter h2{font-size:20px; margin:0 0 6px; color:var(--mocha-dark);}
.newsletter p{font-size:12.5px; margin:0 0 18px; color:var(--ink-soft);}
.newsletter-form{display:flex; gap:8px; position:relative; z-index:2;}
.newsletter-form input{flex:1; border:none; border-radius:30px; padding:12px 16px; font-size:13px; font-family:'Quicksand',sans-serif;}
.newsletter-form button{border:none; background:var(--mocha-dark); color:var(--cream); font-family:'Poppins',sans-serif; font-weight:700; font-size:12.5px; padding:12px 18px; border-radius:30px; cursor:pointer; transition:transform .15s ease, box-shadow .2s ease;}
.newsletter-form button:hover{transform:translateY(-1px); box-shadow:0 6px 16px rgba(110,89,79,0.28);}

/* ---------- gallery ---------- */
.insta-section{padding:36px 20px 6px;}
.insta-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:6px;}
.insta-item{aspect-ratio:1/1; overflow:hidden; border-radius:8px;}
.insta-item:nth-child(n+7){display:none;}
.insta-item img{width:100%; height:100%;}

/* ---------- footer ---------- */
.devicewrap > footer{background:var(--mocha-dark); color:var(--cream); padding:32px 20px 90px; margin-top:10px;}
.devicewrap > footer .logo-img{height:28px; filter:brightness(0) invert(1); margin-bottom:10px;}
.devicewrap > footer p.tag{font-size:12px; opacity:.8; line-height:1.6; max-width:320px; margin:0 0 20px;}
.footer-cols{display:grid; grid-template-columns:1fr 1fr; gap:24px 16px; margin-bottom:22px;}
.footer-cols h4{font-size:11px; text-transform:uppercase; letter-spacing:.06em; opacity:.6; margin:0 0 10px; font-weight:700; font-family:'Poppins',sans-serif;}
.footer-cols ul{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px;}
.footer-cols li{font-size:12px; opacity:.92;}
.footer-cols li a{opacity:1;}
.footer-address, .footer-legal{font-size:11.5px; line-height:1.7; opacity:.85; margin:0 0 8px;}
.footer-hours{width:100%; border-collapse:collapse; font-size:11px; opacity:.9;}
.footer-hours td{padding:2px 0;}
.footer-hours td:last-child{text-align:right;}
.footer-note{font-size:10px; opacity:.6; line-height:1.5; margin:8px 0 0;}
.footer-social{display:flex; gap:10px; margin-bottom:20px;}
.footer-social a{width:32px; height:32px; border-radius:50%; background:rgba(255,255,255,0.14); display:flex; align-items:center; justify-content:center; color:var(--cream);}
.footer-bottom{font-size:11px; opacity:.75; border-top:1px solid rgba(255,255,255,0.16); padding-top:16px;}
.footer-bottom p{margin:0 0 7px;}
.footer-bottom a{color:var(--cream); text-decoration:underline;}
.footer-bottom p:last-child{margin-bottom:0;}

/* ---------- sticky bar (mobile only) ---------- */
.sticky-bar{
  position:fixed; bottom:0; left:50%; transform:translateX(-50%);
  max-width:430px; width:100%; background:var(--white);
  box-shadow:0 -6px 20px rgba(0,0,0,0.10);
  padding:11px 16px; display:flex; align-items:center; gap:11px; z-index:50; border-radius:18px 18px 0 0;
}
.sb-link{display:flex; align-items:center; gap:11px; flex:1; min-width:0; text-decoration:none; color:inherit;}
.sticky-bar .sb-photo{width:40px; height:40px; border-radius:12px; overflow:hidden; flex:0 0 auto;}
.sticky-bar .sb-photo img{width:100%; height:100%;}
.sticky-bar .sb-text{flex:1; min-width:0;}
.sticky-bar .sb-text strong{display:block; font-size:12.5px; color:var(--ink); font-family:'Poppins',sans-serif;}
.sticky-bar .sb-text span{font-size:10.5px; color:var(--ink-soft);}
.sticky-bar button{background:var(--mocha-dark); color:var(--cream); border:none; font-family:'Poppins',sans-serif; font-weight:700; font-size:12.5px; padding:10px 16px; border-radius:30px; flex:0 0 auto; cursor:pointer; transition:transform .15s ease, box-shadow .2s ease;}
.sticky-bar button:hover{transform:translateY(-1px); box-shadow:0 6px 16px rgba(110,89,79,0.28);}

/* =================================================================
   DESKTOP (>=980px)
================================================================== */
@media (min-width:980px){
  body{padding:0;}
  .devicewrap{max-width:none; box-shadow:none; border-radius:0;}

  .devicewrap > header{padding:20px 52px;}
  .menu-btn{display:none;}
  .desktop-nav{display:flex; gap:28px; font-family:'Poppins',sans-serif; font-weight:600; font-size:13px; color:var(--mocha-dark);}
  .desktop-nav a:hover{color:var(--mocha);}

  .hero{display:grid; grid-template-columns:1.05fr 1fr; align-items:center; gap:50px; padding:0 52px;}
  .hero-photo{order:2; aspect-ratio:auto; height:480px; border-radius:26px; margin-top:40px;}
  .hero-panel{order:1; margin:0; padding:0; background:none; box-shadow:none; max-width:480px;}
  .hero-panel h1{font-size:42px; line-height:1.15;}
  .hero-panel p{font-size:16px; max-width:420px;}

  .cat-grid{grid-template-columns:repeat(4,1fr); padding:56px 52px 10px; gap:22px;}

  .feature-strip{
    display:grid; grid-template-columns:repeat(4,1fr); gap:0; overflow-x:visible;
    margin:34px 52px 44px; padding:30px 10px; background:var(--white); border-radius:18px;
    border:1px solid rgba(140,116,106,0.14);
  }
  .feature-item{width:auto; padding:0 26px; background:none; border:none; border-radius:0;}
  .feature-item:not(:first-child){border-left:1px solid rgba(140,116,106,0.22);}
  .feature-item .headline{font-size:19px;}
  .feature-item .desc{font-size:12.5px;}

  .perks-slider{margin:44px 52px 0; height:52px; border-radius:32px;}
  .perk-slide span{font-size:13px;}
  .perk-slide .ic-dot{width:26px; height:26px;}

  .section{padding:60px 52px 10px;}
  .section-head h2{font-size:26px;}
  .tab-pills{padding:0 52px 22px;}
  .carousel{padding:2px 52px 8px; overflow-x:visible; flex-wrap:wrap; gap:20px;}
  .product-card{width:calc(25% - 15px);}
  .panel-cta{padding:8px 52px 0;}
  .cta-full{display:inline-block; padding:13px 30px;}

  .drops-wrap{margin:56px 0 0; padding:0;}
  .drops-inner{display:flex; align-items:center; gap:40px; padding:54px 52px;}
  .drops-head{flex:0 0 320px; padding:0; margin-bottom:0;}
  .drops-head h2{font-size:30px;}
  .drops-text{font-size:14px; max-width:none;}
  .drops-scroll{flex:1; padding:2px 2px 2px 0;}
  .drop-card{width:240px;}

  .editorial{margin:56px 52px 0;}
  .editorial img{height:340px;}
  .editorial-panel{left:28px; right:auto; bottom:28px; max-width:360px; padding:20px 24px;}

  .trust-band{margin:56px 52px 0; border-radius:18px; padding:30px 36px;}

  .wwk-widget{margin:20px 52px 0; padding:20px; max-width:560px;}

  .about-section{padding:56px 52px 10px; gap:56px;}
  .about-photo{width:270px; height:320px; flex:0 0 auto; position:relative; z-index:2;}
  .about-photo img{border-radius:20px;}
  .about-photo::before{
    content:''; position:absolute; top:-26px; left:-26px; width:100%; height:100%; z-index:-1;
    background:var(--peach); opacity:.55;
    border-radius:62% 38% 55% 45% / 45% 55% 42% 58%;
  }
  .about-text{flex:1; max-width:none;}
  .about-text .kicker{font-size:12px;}
  .about-text h3{font-size:32px;}
  .about-text p{font-size:15.5px; max-width:640px; line-height:1.7;}

  .newsletter{margin:56px 52px 0; padding:50px; border-radius:22px;}
  .newsletter h2{font-size:26px;}
  .newsletter-form{max-width:420px; margin:0 auto;}

  .insta-section{padding:56px 52px 10px;}
  .insta-grid{grid-template-columns:repeat(6,1fr); gap:10px;}
  .insta-item:nth-child(n+7){display:block;}

  .devicewrap > footer{padding:44px 52px 50px;}
  .footer-row{display:flex; gap:50px; align-items:flex-start;}
  .footer-brand{flex:0 0 250px;}
  .devicewrap > footer p.tag{max-width:none;}
  .footer-cols{flex:1; grid-template-columns:repeat(5,1fr); gap:26px; margin-bottom:18px; margin-top:0;}
  .footer-bottom{display:flex; flex-wrap:wrap; gap:4px 22px; align-items:center;}
  .footer-bottom p{margin:0;}

  .sticky-bar{display:none;}
}

/* ============================================================
   v16.1 tweaks — lichter bruin op ACHTERGRONDEN/BUTTONS + witte letters
   (bruine TEKST blijft ongemoeid), WWK full-width, menu concept v1 (3-niveau)
============================================================ */
:root{
  --brown-bg:#a6897a;        /* lichter bruin voor vlakken + buttons */
  --brown-bg-hover:#8f7466;  /* iets donkerder op hover */
}

/* achtergrondvlakken lichter + witte letters */
.announce{ background:var(--brown-bg); color:#fff; }
.devicewrap > footer{ background:var(--brown-bg); color:#fff; }
.devicewrap > footer p.tag{ color:#fff; opacity:.95; }
.footer-cols h4{ color:#fff; opacity:.8; }
.footer-cols li, .footer-cols li a,
.footer-address, .footer-legal,
.footer-hours, .footer-note,
.footer-bottom, .footer-bottom a{ color:#fff; }
.footer-note{ opacity:.75; }
.footer-bottom{ opacity:.92; }
.footer-social a{ background:rgba(255,255,255,0.22); color:#fff; }

/* buttons lichter + wit */
.cta-primary,
.drops-cta,
.newsletter-form button,
.sticky-bar button{ background:var(--brown-bg); color:#fff !important; }
.cta-primary:hover,
.drops-cta:hover,
.newsletter-form button:hover,
.sticky-bar button:hover{ background:var(--brown-bg-hover); color:#fff !important; }
.add-btn:hover,
.cta-full:hover{ background:var(--brown-bg); color:#fff !important; border-color:var(--brown-bg); }

/* theme-/Woo-/PDP-buttons ook lichter bruin + wit (alléén kleur; PDP-structuur ongemoeid) */
.ly-btn--primary,
.ly-pdp__atc,
.ly-pcard__add,
a.add_to_cart_button,
.add_to_cart_button,
.ajax_add_to_cart,
.single_add_to_cart_button,
button.single_add_to_cart_button,
.ly-search-overlay__form button{
	background:var(--brown-bg) !important;
	color:#fff !important;
	border-color:var(--brown-bg) !important;
}
.ly-btn--primary:hover,
.ly-pdp__atc:hover,
.ly-pcard__add:hover,
.add_to_cart_button:hover,
.ajax_add_to_cart:hover,
.single_add_to_cart_button:hover,
.ly-search-overlay__form button:hover{
	background:var(--brown-bg-hover) !important;
	color:#fff !important;
}

/* WebwinkelKeur-widget over volledige breedte */
.wwk-widget{ margin-left:0; margin-right:0; border-radius:0; background:var(--peach-soft,#fde7df); max-width:none; }
@media (min-width:980px){ .wwk-widget{ margin-left:0; margin-right:0; border-radius:0; max-width:none; } }

/* ---------- menu concept v1 (3-niveau) ---------- */
.menu-flat{ display:flex; align-items:center; justify-content:space-between; }
.menu-flat .tag{ font-family:'Quicksand',sans-serif; font-size:10px; font-weight:800; color:#fff; background:var(--mauve); padding:3px 8px; border-radius:20px; letter-spacing:.03em; }
.menu-account{ color:var(--mocha-dark); }

/* group toggle: +/– ALLEEN op de directe groep-summary (child combinator),
   nooit doorlekken naar de sub-summaries */
.plus{ display:none; }
details.menu-group > summary::after{ content:"+"; font-size:18px; font-weight:400; color:var(--mocha); }
details.menu-group[open] > summary::after{ content:"–"; }
.menu-sub summary::after{ content:none !important; }

/* sub-items met dot */
.menu-sub a{ display:flex; align-items:center; gap:7px; }
.menu-sub a .dot{ width:5px; height:5px; border-radius:50%; background:var(--mauve); flex:0 0 auto; }
.menu-sub a.highlight .dot{ background:var(--peach); }

/* niveau 3: uitklapbare subcategorie */
.menu-sub details.sub{ width:100%; }
.menu-sub details.sub > summary{ list-style:none; cursor:pointer; display:flex; align-items:center; gap:7px; font-size:13.5px; color:var(--ink-soft); font-weight:500; }
.menu-sub details.sub > summary::-webkit-details-marker{ display:none; }
.menu-sub details.sub.highlight > summary{ color:var(--mocha-dark); font-weight:700; }
.menu-sub details.sub > summary .dot{ width:5px; height:5px; border-radius:50%; background:var(--mauve); flex:0 0 auto; }
.menu-sub details.sub.highlight > summary .dot{ background:var(--peach); }
.menu-sub details.sub > summary .chev{ margin-left:auto; font-size:11px; color:var(--mocha); transition:transform .2s ease; }
.menu-sub details.sub[open] > summary .chev{ transform:rotate(180deg); }
.sub-sub{ display:flex; flex-direction:column; gap:9px; padding:9px 0 4px 15px; margin:7px 0 3px 1px; border-left:2px solid rgba(140,116,106,0.14); }
.sub-sub a{ font-size:12.5px; color:var(--ink-soft); font-weight:500; display:block; }

/* ============================================================
   Categoriepagina — concept categorie-v1
============================================================ */
.ly-cat{ background:linear-gradient(180deg,#fdeee7 0%, #f7f0f1 10%, transparent 26%); padding-bottom:10px; }
.ly-cat .breadcrumb{ padding:14px 20px 0; font-size:11.5px; color:var(--ink-soft); }
.ly-cat .breadcrumb a{ color:var(--ink-soft); }
.ly-cat .breadcrumb b{ color:var(--mocha-dark); }
.cat-hero{ padding:12px 20px 0; text-align:center; }
.cat-hero h1{ font-size:29px; margin:12px 0 0; color:var(--mocha-dark); }
.cat-hero p{ font-size:13.5px; color:var(--ink-soft); line-height:1.65; margin:8px auto 0; max-width:560px; }
.chips{ display:flex; gap:9px; overflow-x:auto; padding:16px 20px 4px; scrollbar-width:none; }
.chips::-webkit-scrollbar{ display:none; }
.chip{ flex:0 0 auto; font-family:'Poppins',sans-serif; font-weight:600; font-size:12px; padding:9px 16px; border-radius:30px; background:var(--white); color:var(--mocha-dark); border:1.5px solid transparent; box-shadow:0 3px 10px rgba(140,116,106,0.10); cursor:pointer; white-space:nowrap; }
.chip.active{ background:var(--brown-bg); color:#fff; }
.toolbar{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 20px 0; }
.toolbar .res{ font-size:12px; font-weight:600; color:var(--ink-soft); }
.toolbar .res b{ color:var(--mocha-dark); }
.sort-wrap{ position:relative; }
.sort-wrap select{ appearance:none; -webkit-appearance:none; font-family:'Quicksand',sans-serif; font-weight:700; font-size:12.5px; color:var(--mocha-dark); background:var(--white); border:1.5px solid rgba(140,116,106,0.2); border-radius:30px; padding:9px 34px 9px 15px; cursor:pointer; }
.sort-wrap::after{ content:""; position:absolute; right:15px; top:50%; width:7px; height:7px; border-right:2px solid var(--mocha-dark); border-bottom:2px solid var(--mocha-dark); transform:translateY(-70%) rotate(45deg); pointer-events:none; }
.ly-cat .grid{ display:grid; grid-template-columns:1fr 1fr; gap:13px; padding:16px 20px 0; }
.pcard{ background:var(--white); border-radius:18px; overflow:hidden; box-shadow:var(--shadow); display:flex; flex-direction:column; position:relative; transition:transform .18s ease, box-shadow .2s ease; }
.pcard:hover{ transform:translateY(-3px); box-shadow:0 16px 30px rgba(140,116,106,0.22); }
.pcard .ph{ position:relative; aspect-ratio:1/1; overflow:hidden; background:#ffffff; }
.pcard .ph img{ width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.pcard:hover .ph img{ transform:scale(1.05); }
.pcard .badge{ position:absolute; top:9px; left:9px; font-family:'Poppins',sans-serif; font-weight:700; font-size:9.5px; letter-spacing:.03em; padding:4px 9px; border-radius:30px; color:var(--white); text-transform:uppercase; }
.pcard .badge.sale{ background:#d98a72; }
.pcard .badge.new{ background:var(--sage); color:var(--mocha-dark); }
.pcard .badge.low{ background:var(--mocha-dark); }
.pcard .wish{ position:absolute; top:8px; right:8px; width:29px; height:29px; border-radius:50%; background:rgba(255,255,255,0.9); display:flex; align-items:center; justify-content:center; }
.pcard .wish .icon{ width:15px; height:15px; color:var(--mocha); }
.pcard .body{ padding:11px 12px 12px; display:flex; flex-direction:column; gap:5px; flex:1; }
.pcard .rating{ display:flex; align-items:center; gap:4px; font-size:10.5px; color:var(--ink-soft); font-weight:600; }
.pcard .rating .stars{ color:#e0a95f; letter-spacing:1px; font-size:11px; }
.pcard .t{ font-family:'Poppins',sans-serif; font-weight:600; font-size:12.5px; color:var(--ink); line-height:1.35; min-height:2.7em; }
.pcard .priceline{ display:flex; align-items:baseline; gap:6px; margin-top:auto; padding-top:4px; }
.pcard .price{ font-family:'Poppins',sans-serif; font-weight:800; font-size:14.5px; color:var(--mocha-dark); }
.pcard .old{ font-size:11.5px; color:var(--ink-soft); text-decoration:line-through; }
.pcard .add{ margin-top:8px; display:flex; align-items:center; justify-content:center; gap:6px; background:var(--brown-bg); color:#fff; font-family:'Poppins',sans-serif; font-weight:700; font-size:12px; padding:9px; border-radius:30px; cursor:pointer; border:none; width:100%; }
.pcard .add .icon{ width:14px; height:14px; stroke:#fff; }
.pcard .add:hover{ background:var(--brown-bg-hover); }
.pcard.skel .ph{ background:linear-gradient(90deg,#f1e8e2 25%,#f8f1ec 37%,#f1e8e2 63%); background-size:400% 100%; animation:shimmer 1.4s ease infinite; }
.pcard.skel .body::before, .pcard.skel .body::after{ content:""; height:11px; border-radius:6px; background:#eee3dc; }
.pcard.skel .body::before{ width:80%; } .pcard.skel .body::after{ width:45%; }
@keyframes shimmer{ 0%{ background-position:100% 0; } 100%{ background-position:0 0; } }
.load-more{ display:block; margin:20px auto 0; background:var(--white); color:var(--mocha-dark); border:1.5px solid var(--mocha-dark); font-family:'Poppins',sans-serif; font-weight:700; font-size:13.5px; padding:13px 34px; border-radius:30px; cursor:pointer; }
.load-more:disabled{ opacity:.5; cursor:default; }
.grid-empty{ grid-column:1/-1; text-align:center; color:var(--ink-soft); font-size:13px; padding:30px 0; }
.usps{ display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:24px 20px 0; }
.usp{ background:var(--white); border-radius:16px; padding:15px 14px; box-shadow:var(--shadow); display:flex; flex-direction:column; gap:7px; }
.usp .ic{ width:34px; height:34px; border-radius:11px; background:var(--peach-soft); display:flex; align-items:center; justify-content:center; }
.usp .ic .icon{ width:18px; height:18px; color:var(--mocha-dark); }
.usp .t{ font-family:'Poppins',sans-serif; font-weight:600; font-size:12.5px; color:var(--mocha-dark); }
.usp .s{ font-size:11px; color:var(--ink-soft); line-height:1.45; }
.ly-cat-sticky a{ flex:1; text-align:center; background:var(--brown-bg); color:#fff; font-family:'Poppins',sans-serif; font-weight:700; font-size:13px; padding:12px; border-radius:30px; display:flex; align-items:center; justify-content:center; gap:7px; }
.ly-cat-sticky a.ghost{ flex:0 0 auto; background:var(--white); color:var(--mocha-dark); border:1.5px solid var(--mocha-dark); padding:12px 18px; }
.ly-cat-sticky .icon{ width:16px; height:16px; }
@media (min-width:768px){
	.ly-cat .grid{ grid-template-columns:repeat(3,1fr); gap:18px; }
	.usps{ grid-template-columns:repeat(4,1fr); }
	.ly-cat-sticky{ display:none; }
}
@media (min-width:980px){
	.ly-cat .grid{ grid-template-columns:repeat(4,1fr); }
	.cat-hero h1{ font-size:34px; }
}

/* ============================================================
   Winkelwagen — concept winkelwagen-v1 (Woo-cart override)
============================================================ */
.ly-cart .ly-cart-inner{ max-width:1220px; margin:0 auto; padding:0 20px; }
.ly-cart-title{ font-size:26px; color:var(--mocha-dark); margin:8px 0 2px; }
@media (min-width:980px){ .ly-cart .ly-cart-inner{ padding:0 52px; } }
.ship-progress{ margin:16px 0 0; background:var(--white); border:1px solid rgba(140,116,106,0.14); border-radius:16px; padding:14px 16px; box-shadow:var(--shadow); max-width:1180px; }
.ship-progress .txt{ font-size:12.5px; font-weight:600; color:var(--mocha-dark); margin:0 0 9px; display:flex; align-items:center; gap:7px; }
.ship-progress .txt .icon{ width:16px; height:16px; color:var(--mocha); flex:0 0 auto; }
.ship-progress .bar{ height:8px; border-radius:20px; background:var(--sand); overflow:hidden; }
.ship-progress .bar span{ display:block; height:100%; border-radius:20px; background:linear-gradient(90deg,var(--pink),var(--peach)); transition:width 1s ease; }
.cart-columns{ display:grid; grid-template-columns:1fr; gap:24px; padding:18px 0 0; }
.cart-items{ display:flex; flex-direction:column; gap:12px; }
.cart-item{ display:flex; gap:12px; background:var(--white); border-radius:18px; padding:12px; box-shadow:var(--shadow); position:relative; }
.cart-item .ci-photo{ width:78px; height:88px; border-radius:12px; overflow:hidden; flex:0 0 auto; }
.cart-item .ci-photo img{ width:100%; height:100%; object-fit:cover; }
.ci-body{ flex:1; min-width:0; display:flex; flex-direction:column; }
.ci-body h3{ font-family:'Poppins',sans-serif; font-size:14px; font-weight:700; color:var(--ink); margin:0 30px 3px 0; line-height:1.3; }
.ci-meta{ font-size:11.5px; color:var(--ink-soft); margin:0 0 2px; line-height:1.45; }
.ci-bottom{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; padding-top:8px; }
.qty-stepper{ display:flex; align-items:center; background:var(--cream); border:1px solid rgba(140,116,106,0.18); border-radius:30px; }
.qty-stepper button{ width:30px; height:34px; border:none; background:none; font-size:16px; color:var(--mocha-dark); cursor:pointer; line-height:1; }
.qty-stepper .quantity{ margin:0; }
.qty-stepper .quantity label{ display:none; }
.qty-stepper input.qty{ width:34px; text-align:center; font-weight:700; font-size:13.5px; color:var(--ink); border:none; background:none; -moz-appearance:textfield; padding:0; height:34px; }
.qty-stepper input.qty::-webkit-outer-spin-button, .qty-stepper input.qty::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.qty-stepper.qty-single span{ padding:0 12px; font-weight:700; color:var(--ink); }
.ci-price{ font-family:'Poppins',sans-serif; font-weight:800; font-size:15px; color:var(--mocha-dark); text-align:right; }
.ci-price del{ display:block; font-size:11px; font-weight:600; color:var(--ink-soft); }
.ci-remove{ position:absolute; top:12px; right:12px; width:26px; height:26px; border-radius:50%; background:var(--cream); display:flex; align-items:center; justify-content:center; color:var(--mocha); cursor:pointer; }
.ci-remove .icon{ width:13px; height:13px; }
.cart-links{ display:flex; align-items:center; justify-content:space-between; margin:16px 0 0; font-size:12.5px; font-weight:700; }
.cart-links a, .cart-links .ly-update-cart{ color:var(--mocha-dark); display:flex; align-items:center; gap:6px; background:none; border:none; cursor:pointer; font-family:'Poppins',sans-serif; font-weight:700; font-size:12.5px; }
.cart-links .icon{ width:15px; height:15px; }
.coupon{ margin:20px 0 0; }
.coupon-label{ font-size:12.5px; font-weight:700; color:var(--mocha-dark); margin:0 0 8px; }
.coupon-row{ display:flex; gap:8px; }
.coupon-row input{ flex:1; border:1px solid rgba(140,116,106,0.25); border-radius:30px; padding:11px 16px; font-size:13px; font-family:'Quicksand',sans-serif; background:var(--white); color:var(--ink); }
.coupon-row button{ border:1.5px solid var(--mocha-dark); background:var(--white); color:var(--mocha-dark); font-family:'Poppins',sans-serif; font-weight:700; font-size:12.5px; padding:0 18px; border-radius:30px; cursor:pointer; }
.coupon-row button:hover{ background:var(--brown-bg); color:#fff; border-color:var(--brown-bg); }
.summary{ margin:0; background:var(--peach-soft); border-radius:20px; padding:20px; box-shadow:var(--shadow); }
.summary h2{ font-size:17px; margin:0 0 14px; color:var(--mocha-dark); }
.ly-sum-table{ width:100%; border:none; margin:0; background:none; }
.ly-sum-table tr{ display:flex; align-items:center; justify-content:space-between; border:none; margin:0 0 10px; }
.ly-sum-table th, .ly-sum-table td{ display:block; border:none; padding:0; font-size:13px; color:var(--ink); font-weight:400; text-align:left; }
.ly-sum-table th{ color:var(--ink-soft); }
.ly-sum-table td{ text-align:right; }
.ly-sum-table .cart-discount th, .ly-sum-table .cart-discount td{ color:#5f9e73; font-weight:700; }
.ly-sum-table .order-total{ border-top:1px solid rgba(140,116,106,0.2); padding-top:14px; margin-top:4px; }
.ly-sum-table .order-total th{ font-family:'Poppins',sans-serif; font-weight:700; font-size:15px; color:var(--mocha-dark); }
.ly-sum-table .order-total td{ font-family:'Poppins',sans-serif; font-weight:800; font-size:20px; color:var(--mocha-dark); }
.ly-sum-table .woocommerce-shipping-methods{ list-style:none; margin:0; padding:0; text-align:right; }
.ly-sum-table .shipping-calculator-button{ color:var(--mocha-dark); font-size:12px; }
.wc-proceed-to-checkout{ margin:16px 0 0; }
.wc-proceed-to-checkout .checkout-button{ display:flex; align-items:center; justify-content:center; gap:8px; background:var(--brown-bg); color:#fff !important; font-family:'Poppins',sans-serif; font-weight:700; font-size:15px; padding:15px; border-radius:30px; width:100%; text-align:center; border:none; text-decoration:none; }
.wc-proceed-to-checkout .checkout-button:hover{ background:var(--brown-bg-hover); }
.pay-methods{ display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin:14px 0 0; justify-content:center; }
.pay-methods .lbl{ display:flex; align-items:center; gap:5px; font-size:11px; color:var(--ink-soft); font-weight:600; }
.pay-methods .lbl .icon{ width:13px; height:13px; color:var(--mocha); }
.pay-methods .pay{ font-size:9.5px; font-weight:800; color:var(--mocha-dark); background:var(--white); border:1px solid rgba(140,116,106,0.2); border-radius:6px; padding:4px 7px; text-transform:uppercase; }
.ly-cart .cart-empty, .woocommerce-cart .cart-empty{ background:var(--white); border-radius:18px; padding:24px; box-shadow:var(--shadow); text-align:center; color:var(--ink-soft); font-size:14px; max-width:560px; }
.ly-cart .return-to-shop{ text-align:center; margin-top:16px; }
.ly-cart .return-to-shop .button{ display:inline-block; background:var(--brown-bg); color:#fff !important; font-family:'Poppins',sans-serif; font-weight:700; padding:12px 26px; border-radius:30px; text-decoration:none; }
@media (min-width:900px){
	.cart-columns{ grid-template-columns:1.6fr 1fr; gap:40px; align-items:start; }
	.summary{ position:sticky; top:100px; }
}

/* ============================================================
   Checkout — Little Yune-restyle van de functionele Woo-checkout
============================================================ */
.ly-checkout .ly-checkout-inner{ max-width:1220px; margin:0 auto; padding:0 20px; }
.ly-checkout-title{ font-size:26px; color:var(--mocha-dark); margin:8px 0 6px; }
@media (min-width:980px){ .ly-checkout .ly-checkout-inner{ padding:0 52px; } }
.ly-checkout .woocommerce-form-login-toggle, .ly-checkout .woocommerce-form-coupon-toggle{ max-width:760px; }
.ly-checkout .woocommerce-info, .ly-checkout .woocommerce-message{ background:var(--peach-soft); border-top:3px solid var(--peach); border-radius:12px; color:var(--mocha-dark); }
.ly-checkout .woocommerce-info a, .ly-checkout .woocommerce-message a{ color:var(--mocha-dark); font-weight:700; }
#customer_details{ background:var(--white); border-radius:20px; padding:22px; box-shadow:var(--shadow); }
#customer_details .col-1, #customer_details .col-2{ width:100%; float:none; }
.ly-checkout h3, #order_review_heading{ font-family:'Poppins',sans-serif; color:var(--mocha-dark); font-size:18px; margin-top:0; }
.ly-checkout .form-row label{ font-size:12px; font-weight:700; color:var(--mocha-dark); margin-bottom:5px; }
.ly-checkout .form-row .input-text, .ly-checkout .form-row textarea, .ly-checkout select, .ly-checkout .select2-selection{ border:1px solid rgba(140,116,106,0.25) !important; border-radius:12px !important; padding:12px 14px !important; background:var(--cream) !important; font-family:'Quicksand',sans-serif !important; color:var(--ink) !important; box-shadow:none !important; }
.ly-checkout .select2-selection__rendered{ line-height:26px !important; color:var(--ink) !important; }
.ly-checkout .form-row .input-text:focus, .ly-checkout .form-row textarea:focus{ border-color:var(--mocha) !important; background:var(--white) !important; outline:none; }
#order_review_heading{ margin:18px 0 10px; }
#order_review{ background:var(--peach-soft); border-radius:20px; padding:22px; box-shadow:var(--shadow); }
.woocommerce-checkout-review-order-table{ width:100%; border:none; background:none; margin:0 0 14px; }
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td{ border:none !important; padding:8px 0 !important; font-size:13.5px; color:var(--ink); background:none !important; }
.woocommerce-checkout-review-order-table thead th{ color:var(--ink-soft); font-size:11.5px; text-transform:uppercase; letter-spacing:.04em; border-bottom:1px solid rgba(140,116,106,0.18) !important; }
.woocommerce-checkout-review-order-table tfoot th{ font-family:'Poppins',sans-serif; color:var(--mocha-dark); }
.woocommerce-checkout-review-order-table tfoot .order-total th, .woocommerce-checkout-review-order-table tfoot .order-total td{ border-top:1px solid rgba(140,116,106,0.2) !important; padding-top:12px !important; font-size:16px; }
.woocommerce-checkout-review-order-table tfoot .order-total .amount{ font-family:'Poppins',sans-serif; font-weight:800; color:var(--mocha-dark); }
.ly-checkout #payment{ background:none !important; border-radius:0; }
.ly-checkout #payment ul.payment_methods{ background:var(--white); border:1px solid rgba(140,116,106,0.16); border-radius:14px; padding:12px 14px; }
.ly-checkout #payment div.payment_box{ background:var(--cream) !important; color:var(--ink-soft); border-radius:10px; }
.ly-checkout #payment div.payment_box::before{ border-bottom-color:var(--cream) !important; }
.ly-checkout #place_order{ background:var(--brown-bg) !important; color:#fff !important; border:none !important; border-radius:30px !important; padding:16px !important; width:100%; font-family:'Poppins',sans-serif !important; font-weight:700 !important; font-size:15px !important; margin-top:10px; text-shadow:none !important; }
.ly-checkout #place_order:hover{ background:var(--brown-bg-hover) !important; }
.ly-checkout .woocommerce-terms-and-conditions-wrapper{ font-size:12.5px; color:var(--ink-soft); }
@media (min-width:900px){
	.ly-checkout form.checkout.woocommerce-checkout{ display:grid; grid-template-columns:1.4fr 1fr; gap:40px; align-items:start; }
	.ly-checkout #customer_details{ grid-column:1; }
	.ly-checkout .ly-review-col{ grid-column:2; position:sticky; top:100px; }
	.ly-checkout .ly-review-col #order_review{ position:static; top:auto; }
	.ly-checkout #order_review_heading{ margin:0 0 12px; }
}

/* ============================================================
   Spaarpunten — concept spaarpunten-v1 (informatief)
============================================================ */
.ly-punten .section{ max-width:900px; }
.balance-card{ background:linear-gradient(135deg,var(--peach-soft),var(--peach)); border-radius:22px; padding:24px; box-shadow:var(--shadow); text-align:center; max-width:520px; }
.balance-card .label{ font-family:'Poppins',sans-serif; font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:.08em; color:var(--mocha); }
.balance-card .pb-balance{ font-family:'Poppins',sans-serif; font-weight:800; font-size:30px; color:var(--mocha-dark); margin:6px 0; }
.balance-card .pb-balance .punten_balans, .balance-card .pb-balance p{ margin:0; }
.balance-card .value-hint{ font-size:12.5px; color:var(--ink-soft); line-height:1.55; margin-top:4px; }
.tiers-scroll{ display:flex; gap:12px; overflow-x:auto; padding:2px 2px 8px; scroll-snap-type:x mandatory; }
.tiers-scroll::-webkit-scrollbar{ height:0; }
.tier-card{ flex:0 0 160px; scroll-snap-align:start; background:var(--white); border-radius:18px; padding:16px 14px; box-shadow:var(--shadow); text-align:center; border:1px solid rgba(140,116,106,0.10); }
.tier-icon{ width:40px; height:40px; margin:0 auto 8px; border-radius:12px; background:var(--peach-soft); display:flex; align-items:center; justify-content:center; }
.tier-icon .icon{ width:20px; height:20px; color:var(--mocha-dark); fill:var(--peach); stroke:var(--mocha-dark); }
.tier-pts{ font-family:'Poppins',sans-serif; font-weight:800; font-size:22px; color:var(--mocha-dark); line-height:1; }
.tier-pts span{ display:block; font-size:10px; font-weight:600; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.05em; margin-top:2px; }
.tier-reward{ font-size:12px; color:var(--ink); line-height:1.45; margin-top:9px; }
.tiers-note{ font-size:11.5px; color:var(--ink-soft); margin:10px 2px 0; }
.earn-grid{ display:grid; grid-template-columns:1fr; gap:12px; }
.earn-card{ display:flex; align-items:flex-start; gap:13px; background:var(--white); border-radius:16px; padding:14px 16px; box-shadow:var(--shadow); position:relative; }
.earn-card .ic{ width:40px; height:40px; border-radius:12px; background:var(--peach-soft); display:flex; align-items:center; justify-content:center; font-size:20px; flex:0 0 auto; }
.earn-card .body{ flex:1; min-width:0; }
.earn-card .body .t{ font-family:'Poppins',sans-serif; font-weight:600; font-size:13.5px; color:var(--mocha-dark); }
.earn-card .body .s{ font-size:12px; color:var(--ink-soft); line-height:1.45; margin-top:2px; }
.earn-card .pts-chip{ flex:0 0 auto; background:var(--mocha-dark); color:var(--cream); font-family:'Poppins',sans-serif; font-weight:700; font-size:11px; padding:5px 11px; border-radius:20px; white-space:nowrap; }
.earn-card .pts-chip{ background:var(--brown-bg); color:#fff; }
.soon-note{ display:flex; align-items:center; gap:9px; margin-top:12px; background:var(--sand); border-radius:14px; padding:12px 15px; font-size:12.5px; color:var(--ink-soft); line-height:1.5; }
.soon-note b{ color:var(--mocha-dark); }
.howto{ background:var(--white); border-radius:18px; padding:20px 22px; box-shadow:var(--shadow); }
.howto h2{ font-size:18px; color:var(--mocha-dark); margin:0 0 8px; }
.howto p{ font-size:13.5px; color:var(--ink-soft); line-height:1.7; margin:0; }
@media (min-width:768px){
	.earn-grid{ grid-template-columns:1fr 1fr; }
}

/* earn-fix: spaarpunten-kaarten netjes uitlijnen */
.earn-card .body{ align-self:flex-start; }
.earn-card .ic{ align-self:flex-start; }
.earn-card .pts-chip{ align-self:flex-start; margin-top:1px; }
@media (min-width:768px){
	.earn-grid > .earn-card:last-child:nth-child(odd){ grid-column:1 / -1; }
}


/* ============================================================
   Gedeeld content-paginasjabloon — concept pagina-*-v1
   (over-ons, contact, faq, bestellen, garantie, retourneren, verzending)
============================================================ */
.ly-page .breadcrumb{ padding:14px 20px 0; font-size:11.5px; color:var(--ink-soft); }
.ly-page .breadcrumb a{ color:var(--ink-soft); } .ly-page .breadcrumb b{ color:var(--mocha-dark); }
.page-hero{ padding:16px 22px 4px; text-align:center; background:linear-gradient(180deg,#fdeee7 0%, transparent 90%); }
.page-hero .eyebrow{ display:inline-block; font-family:'Poppins',sans-serif; font-weight:600; font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--mocha); background:var(--white); border-radius:30px; padding:6px 14px; box-shadow:0 4px 12px rgba(140,116,106,0.12); }
.page-hero h1{ font-size:28px; margin:12px 0 6px; color:var(--mocha-dark); }
.page-hero p{ font-size:14px; color:var(--ink-soft); line-height:1.65; margin:0 auto; max-width:560px; }
.ly-page .section{ padding:26px 22px 0; max-width:760px; margin:0 auto; }
.prose h2{ font-size:20px; color:var(--mocha-dark); margin:0 0 6px; }
.prose .sub{ font-family:'Poppins',sans-serif; font-weight:500; font-style:italic; color:var(--mocha); font-size:14px; margin:0 0 12px; }
.prose p{ font-size:14px; line-height:1.75; color:var(--ink); margin:0 0 14px; }
.prose p:last-child{ margin-bottom:0; }
.prose ul{ margin:0 0 14px; padding-left:20px; }
.prose li{ font-size:14px; line-height:1.7; color:var(--ink); margin-bottom:6px; }
.media{ border-radius:20px; overflow:hidden; box-shadow:var(--shadow); margin:0 0 18px; position:relative; aspect-ratio:4/3; }
.media img{ width:100%; height:100%; object-fit:cover; }
.media .cap{ position:absolute; left:14px; bottom:14px; background:rgba(250,248,243,0.92); color:var(--mocha-dark); font-family:'Poppins',sans-serif; font-weight:600; font-size:12px; padding:7px 13px; border-radius:30px; }
.quote{ margin:0; padding:20px 22px; background:var(--peach-soft); border-radius:18px; box-shadow:var(--shadow); }
.quote p{ font-family:'Poppins',sans-serif; font-style:italic; font-weight:500; font-size:16px; line-height:1.6; color:var(--mocha-dark); margin:0; }
.quote .by{ display:block; font-style:normal; font-weight:600; font-size:12px; color:var(--mocha); margin-top:10px; }
.cards{ display:grid; grid-template-columns:1fr; gap:12px; margin-top:4px; }
.info-card{ background:var(--white); border-radius:16px; padding:16px; box-shadow:var(--shadow); display:flex; gap:13px; align-items:flex-start; }
.info-card .ic{ width:38px; height:38px; border-radius:12px; background:var(--peach-soft); display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
.info-card .ic .icon{ width:19px; height:19px; color:var(--mocha-dark); }
.info-card .t{ font-family:'Poppins',sans-serif; font-weight:600; font-size:13.5px; color:var(--mocha-dark); }
.info-card .s{ font-size:12.5px; color:var(--ink-soft); line-height:1.55; margin-top:3px; }
.cta-band{ margin:28px 20px 0; background:var(--white); border-radius:20px; padding:24px 20px; box-shadow:var(--shadow); text-align:center; position:relative; overflow:hidden; }
.cta-band::before{ content:""; position:absolute; top:0; left:0; right:0; height:5px; background:var(--peach); }
.cta-band h2{ font-size:19px; color:var(--mocha-dark); margin:0 0 6px; }
.cta-band p{ font-size:13px; color:var(--ink-soft); margin:0 0 16px; line-height:1.6; }
.btn-row{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
.btn{ display:inline-flex; align-items:center; gap:8px; font-family:'Poppins',sans-serif; font-weight:700; font-size:13.5px; padding:13px 22px; border-radius:30px; cursor:pointer; }
.btn-primary{ background:var(--brown-bg); color:#fff !important; border:none; }
.btn-primary:hover{ background:var(--brown-bg-hover); }
.btn-secondary{ background:var(--white); color:var(--mocha-dark); border:1.5px solid var(--mocha-dark); }
.btn .icon{ width:16px; height:16px; }
@media (min-width:768px){
	.cards{ grid-template-columns:1fr 1fr; }
}

/* ---------- Contactpagina ---------- */
.contact-cols{ display:grid; grid-template-columns:1fr; gap:14px; max-width:840px; margin:0 auto; }
.form-card{ background:var(--white); border-radius:18px; padding:20px; box-shadow:var(--shadow); }
.form-card h2{ font-size:17px; color:var(--mocha-dark); margin:0 0 4px; }
.form-card .lead{ font-size:12.5px; color:var(--ink-soft); margin:0 0 16px; line-height:1.6; }
.field{ margin-bottom:12px; }
.field label{ display:block; font-size:11.5px; font-weight:700; color:var(--mocha-dark); margin-bottom:6px; }
.field input, .field textarea{ width:100%; border:1px solid rgba(140,116,106,0.25); border-radius:12px; padding:12px 14px; font-size:13.5px; font-family:'Quicksand',sans-serif; background:var(--cream); color:var(--ink); }
.field input:focus, .field textarea:focus{ outline:none; border-color:var(--mocha); background:var(--white); }
.field textarea{ min-height:120px; resize:vertical; }
.form-card .btn{ width:100%; border:none; }
.form-card .btn .icon{ stroke:#fff; }
.form-note{ font-size:12.5px; margin-top:12px; text-align:center; display:none; }
.form-note.show{ display:block; }
.form-note.ok{ color:#4b7a52; } .form-note.err{ color:#b4553f; }
.info-card .s a{ color:var(--mocha-dark); font-weight:700; }
.hours-card{ background:var(--peach-soft); border-radius:18px; padding:20px; box-shadow:var(--shadow); max-width:840px; margin:0 auto; }
.hours-card h2{ font-size:16px; color:var(--mocha-dark); margin:0 0 12px; }
.hours-card .row{ display:flex; justify-content:space-between; font-size:13px; color:var(--ink); padding:6px 0; border-bottom:1px dashed rgba(140,116,106,0.2); }
.hours-card .row:last-of-type{ border-bottom:none; }
.hours-card .row b{ color:var(--mocha-dark); }
.hours-card .note{ font-size:11.5px; color:var(--ink-soft); margin:10px 0 0; line-height:1.5; }
@media (min-width:768px){
	.contact-cols{ grid-template-columns:1.1fr 1fr; }
	.contact-cols .form-card{ grid-row:span 3; }
}

/* ---------- FAQ / veelgestelde vragen ---------- */
.faq-cats{ display:flex; gap:8px; overflow-x:auto; padding:18px 22px 2px; scrollbar-width:none; max-width:840px; margin:0 auto; }
.faq-cats::-webkit-scrollbar{ display:none; }
.faq-cats a{ flex:0 0 auto; font-family:'Poppins',sans-serif; font-weight:600; font-size:12px; padding:8px 15px; border-radius:30px; background:var(--white); color:var(--mocha-dark); box-shadow:0 3px 10px rgba(140,116,106,0.10); white-space:nowrap; }
.faq-cats a.active{ background:var(--brown-bg); color:#fff; }
.acc{ max-width:840px; margin:0 auto; padding:12px 22px 0; }
.acc h2{ font-size:16px; color:var(--mocha-dark); margin:20px 2px 10px; }
.acc details{ background:var(--white); border-radius:14px; box-shadow:var(--shadow); margin-bottom:10px; overflow:hidden; }
.acc summary{ list-style:none; cursor:pointer; padding:16px 18px; display:flex; align-items:center; justify-content:space-between; gap:14px; font-family:'Poppins',sans-serif; font-weight:600; font-size:14px; color:var(--mocha-dark); }
.acc summary::-webkit-details-marker{ display:none; }
.acc summary .pm{ font-size:22px; font-weight:400; color:var(--mocha); flex:0 0 auto; line-height:1; transition:transform .2s ease; }
.acc details[open] summary .pm{ transform:rotate(45deg); }
.acc .a-body{ padding:0 18px 16px; font-size:13.5px; line-height:1.7; color:var(--ink-soft); }
.acc .a-body a{ color:var(--mocha-dark); font-weight:700; }

/* ---------- Track & Trace ---------- */
.ly-track .tt-card{ background:var(--white); border-radius:20px; box-shadow:var(--shadow); padding:22px; max-width:760px; margin:0 auto; }
.tt-head{ display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:18px; }
.tt-eyebrow{ font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--mocha); }
.tt-head h2{ font-size:22px; color:var(--mocha-dark); margin:2px 0 0; }
.tt-date{ font-size:12px; color:var(--ink-soft); white-space:nowrap; }
.tt-timeline{ list-style:none; margin:0; padding:0; }
.tt-timeline li{ position:relative; padding:0 0 22px 30px; }
.tt-timeline li:last-child{ padding-bottom:0; }
.tt-timeline li .dot{ position:absolute; left:3px; top:1px; width:15px; height:15px; border-radius:50%; background:var(--sand); border:2px solid var(--sand); z-index:2; }
.tt-timeline li::before{ content:""; position:absolute; left:10px; top:12px; bottom:-3px; width:2px; background:var(--sand); }
.tt-timeline li:last-child::before{ display:none; }
.tt-timeline li.done .dot{ background:var(--brown-bg); border-color:var(--brown-bg); }
.tt-timeline li.done::before{ background:var(--brown-bg); }
.tt-timeline li.current .dot{ background:var(--pink); border-color:var(--pink); box-shadow:0 0 0 4px rgba(231,176,183,0.3); }
.tt-timeline li .lab{ font-family:'Poppins',sans-serif; font-weight:600; font-size:13.5px; color:var(--ink-soft); }
.tt-timeline li.done .lab, .tt-timeline li.current .lab{ color:var(--mocha-dark); }
.tt-block{ margin-top:16px; padding-top:16px; border-top:1px solid rgba(140,116,106,0.14); }
.tt-block p{ font-size:13.5px; line-height:1.6; color:var(--ink); margin:0 0 12px; }
.tt-block .btn{ width:auto; }
.tt-pickup h3{ font-size:15px; color:var(--mocha-dark); margin:0 0 6px; }
.tt-lookup h2{ font-size:18px; color:var(--mocha-dark); margin:0 0 4px; }
.tt-lookup .lead{ font-size:12.5px; color:var(--ink-soft); margin:0 0 14px; }
.tt-form .btn{ width:100%; border:none; margin-top:4px; }
.tt-points{ background:var(--peach-soft); border-radius:20px; box-shadow:var(--shadow); padding:22px; max-width:760px; margin:0 auto; display:flex; gap:16px; align-items:flex-start; }
.tt-points__ic{ width:46px; height:46px; border-radius:14px; background:var(--white); display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
.tt-points__ic .icon{ width:24px; height:24px; color:var(--mocha-dark); fill:var(--peach); }
.tt-points h3{ font-size:16px; color:var(--mocha-dark); margin:0 0 6px; }
.tt-points p{ font-size:13px; color:var(--ink-soft); line-height:1.6; margin:0 0 14px; }
.tt-points .btn{ width:auto; }
.ly-track .acc{ max-width:760px; }

/* ---------- Nieuwsbrief-popup (v16) ---------- */
.ly-nl-pop{ position:fixed; inset:0; z-index:100000; display:none; align-items:center; justify-content:center; padding:16px; }
.ly-nl-pop.open{ display:flex; }
.ly-nl-backdrop{ position:absolute; inset:0; background:rgba(61,50,44,0.55); }
.ly-nl-card{ position:relative; z-index:2; background:var(--cream); border-radius:24px; max-width:760px; width:100%; overflow:hidden; box-shadow:0 30px 70px rgba(0,0,0,0.32); display:flex; flex-direction:column; max-height:94vh; }
.ly-nl-x{ position:absolute; top:12px; right:12px; z-index:3; width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,0.92); border:none; font-size:22px; color:var(--mocha-dark); cursor:pointer; line-height:1; }
.ly-nl-img img{ width:100%; height:170px; object-fit:cover; display:block; }
.ly-nl-body{ padding:22px 26px 26px; text-align:center; overflow-y:auto; }
.ly-nl-eyebrow{ font-family:"Poppins",sans-serif; font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--mocha); }
.ly-nl-body h2{ font-family:"Poppins",sans-serif; font-size:24px; color:var(--mocha-dark); margin:8px 0; line-height:1.2; }
.ly-nl-body p{ font-size:13.5px; color:var(--ink-soft); line-height:1.6; margin:0 auto 14px; max-width:420px; }
.ly-nl-later{ background:none; border:none; color:var(--ink-soft); font-size:12.5px; text-decoration:underline; cursor:pointer; margin-top:10px; }
.ly-nl-form{ max-width:420px; margin:0 auto; }
.ly-nl-form ._form_7{ margin:0 !important; width:100% !important; }
.ly-nl-form input[type=text], .ly-nl-form input[type=email]{ width:100% !important; border:1px solid rgba(140,116,106,0.25) !important; border-radius:30px !important; padding:13px 18px !important; font-family:"Quicksand",sans-serif !important; background:var(--white) !important; font-size:14px !important; margin-bottom:8px !important; box-shadow:none !important; }
.ly-nl-form ._submit, .ly-nl-form button[type=submit], .ly-nl-form input[type=submit]{ background:var(--brown-bg) !important; color:#fff !important; border:none !important; border-radius:30px !important; padding:14px 24px !important; font-family:"Poppins",sans-serif !important; font-weight:700 !important; font-size:15px !important; width:100% !important; cursor:pointer !important; }
.ly-nl-form ._form-title{ display:none !important; }


/* Native productreviews op de productpagina */
.ly-product-reviews{ max-width:820px; margin:40px auto; padding:0 20px; }
.ly-product-reviews .section-head h2{ font-size:24px; color:var(--mocha-dark); margin:0 0 4px; }
.ly-product-reviews .section-head p{ color:var(--ink-soft); font-size:13.5px; margin:0 0 16px; }
.ly-product-reviews #comments > h2{ font-size:17px; color:var(--mocha-dark); margin:6px 0 12px; }
.ly-product-reviews .commentlist{ list-style:none; margin:0 0 22px; padding:0; display:flex; flex-direction:column; gap:12px; }
.ly-product-reviews .commentlist li .comment_container{ background:#fff; border:1px solid rgba(140,116,106,.15); border-radius:14px; padding:14px 16px; }
.ly-product-reviews .commentlist .comment-text{ margin-left:0; }
.ly-product-reviews .meta{ font-size:12.5px; color:var(--ink-soft); margin:0 0 4px; }
.ly-product-reviews .star-rating{ color:#e0a95f; font-size:13px; margin-bottom:6px; }
.ly-product-reviews .description p{ margin:6px 0 0; color:var(--ink); line-height:1.6; }
.ly-product-reviews .woocommerce-noreviews{ color:var(--ink-soft); background:#faf3ee; border-radius:12px; padding:12px 16px; }
.ly-product-reviews #respond{ background:#faf3ee; border-radius:16px; padding:18px 18px 22px; }
.ly-product-reviews #respond .comment-reply-title{ font-family:Poppins,sans-serif; color:var(--mocha-dark); font-size:16px; }
.ly-product-reviews .comment-form-rating label{ display:block; margin:10px 0 4px; }
.ly-product-reviews .comment-form-rating .stars a{ color:#e0a95f; }
.ly-product-reviews .comment-form-comment label, .ly-product-reviews .comment-form-author label, .ly-product-reviews .comment-form-email label{ display:block; margin:10px 0 4px; font-size:13.5px; color:var(--ink); }
.ly-product-reviews textarea, .ly-product-reviews input[type=text], .ly-product-reviews input[type=email]{ width:100%; border:1px solid rgba(140,116,106,.25); border-radius:12px; padding:10px 14px; font-family:inherit; font-size:14px; box-sizing:border-box; background:#fff; }
.ly-product-reviews #respond .form-submit input, .ly-product-reviews #respond input#submit{ background:var(--brown-bg); color:#fff; border:none; border-radius:30px; padding:12px 28px; font-family:Poppins,sans-serif; font-weight:700; font-size:14px; cursor:pointer; margin-top:12px; }
.ly-product-reviews #respond .form-submit input:hover{ background:var(--brown-bg-hover); }

/* Vaste nieuwsbrief-sectie op de homepage */
.ly-nlsec{ background:var(--cream,#f7f0ea); padding:58px 20px; }
.ly-nlsec-inner{ max-width:560px; margin:0 auto; text-align:center; }
.ly-nlsec h2{ font-family:Poppins,sans-serif; color:var(--mocha-dark); font-size:26px; line-height:1.2; margin:8px 0 10px; }
.ly-nlsec p{ color:var(--ink-soft); font-size:14.5px; line-height:1.6; margin:0 auto 18px; max-width:460px; }
.ly-nlsec .ly-nl-form2, .ly-nlsec .ly-nl-success{ margin-left:auto; margin-right:auto; }

/* Nieuwsbrief-popup: eigen formulier + directe kortingscode */
.ly-nl-hp{ position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; opacity:0 !important; }
.ly-nl-form2{ max-width:420px; margin:0 auto; }
.ly-nl-form2 input[type=email]{ width:100%; border:1px solid rgba(140,116,106,0.25); border-radius:30px; padding:13px 18px; font-family:'Quicksand',sans-serif; background:var(--white); font-size:14px; margin-bottom:8px; box-sizing:border-box; }
.ly-nl-submit{ background:var(--brown-bg); color:#fff; border:none; border-radius:30px; padding:14px 24px; font-family:'Poppins',sans-serif; font-weight:700; font-size:15px; width:100%; cursor:pointer; transition:background .2s; }
.ly-nl-submit:hover{ background:var(--brown-bg-hover); }
.ly-nl-submit:disabled{ opacity:.7; cursor:default; }
.ly-nl-err{ color:#c0392b; font-size:12.5px; margin:8px auto 0 !important; }
.ly-nl-success{ max-width:420px; margin:0 auto; }
.ly-nl-code{ display:flex; align-items:stretch; gap:8px; max-width:340px; margin:6px auto 10px; }
.ly-nl-code-val{ flex:1; display:flex; align-items:center; justify-content:center; background:var(--white); border:2px dashed var(--mocha); border-radius:14px; padding:12px 14px; font-family:'Poppins',sans-serif; font-weight:800; font-size:19px; letter-spacing:2px; color:var(--mocha-dark); }
.ly-nl-copy{ flex:0 0 auto; background:var(--brown-bg); color:#fff; border:none; border-radius:14px; padding:0 16px; font-family:'Poppins',sans-serif; font-weight:700; font-size:13px; cursor:pointer; }
.ly-nl-copy:hover{ background:var(--brown-bg-hover); }
.ly-nl-note{ font-size:12.5px; color:var(--ink-soft); }
@media(min-width:640px){ .ly-nl-form2, .ly-nl-success, .ly-nl-code{ margin-left:0; } }
@media (min-width:700px){
	.ly-nl-card{ flex-direction:row; align-items:stretch; }
	.ly-nl-img{ width:42%; flex:0 0 auto; }
	.ly-nl-img img{ height:100%; min-height:360px; }
	.ly-nl-body{ flex:1; display:flex; flex-direction:column; justify-content:center; text-align:left; padding:34px; }
	.ly-nl-body p{ margin-left:0; }
	.ly-nl-form{ margin-left:0; }
}

/* ---------- Desktop dropdowns ---------- */
.desktop-nav .dn-item{ position:relative; display:flex; align-items:center; }
.desktop-nav .dn-top{ display:flex; align-items:center; gap:4px; }
.desktop-nav .dn-caret{ font-size:9px; color:var(--mocha); }
.desktop-nav .dn-drop{ position:absolute; top:100%; left:0; margin-top:12px; min-width:220px; background:var(--white); border-radius:16px; box-shadow:0 18px 44px rgba(140,116,106,0.22); padding:10px; opacity:0; visibility:hidden; transform:translateY(6px); transition:opacity .18s ease, transform .18s ease; z-index:80; border:1px solid rgba(140,116,106,0.10); }
.desktop-nav .dn-item:hover .dn-drop, .desktop-nav .dn-item:focus-within .dn-drop{ opacity:1; visibility:visible; transform:translateY(0); }
.desktop-nav .dn-drop::before{ content:""; position:absolute; top:-14px; left:0; right:0; height:14px; }
.desktop-nav .dn-drop a{ display:block; padding:9px 14px; border-radius:10px; font-family:"Quicksand",sans-serif; font-weight:600; font-size:13px; color:var(--ink-soft); white-space:nowrap; }
.desktop-nav .dn-drop a:hover{ background:var(--peach-soft); color:var(--mocha-dark); }

/* Desktop dropdown 3e niveau */
.desktop-nav .dn-drop{ min-width:250px; max-height:80vh; overflow-y:auto; }
.desktop-nav .dn-drop .dn-group{ margin-bottom:2px; }
.desktop-nav .dn-drop .dn-sub-top{ font-weight:700; color:var(--mocha-dark); }
.desktop-nav .dn-drop .dn-sub{ margin:1px 0 6px 14px; padding-left:10px; border-left:2px solid var(--peach-soft); }
.desktop-nav .dn-drop .dn-sub a{ font-size:12px; color:var(--ink-soft); padding:6px 12px; }
.desktop-nav .dn-drop .dn-sub a:hover{ background:var(--peach-soft); color:var(--mocha-dark); }

/* PDP-prijs: kleur gelijk aan categoriekaarten (bruin i.p.v. groen) */
.ly-pdp__price .woocommerce-Price-amount,
.ly-pdp__price .woocommerce-Price-amount .amount,
.ly-pdp__price ins .woocommerce-Price-amount,
.ly-pdp__price .ly-price-current,
.woocommerce-variation-price .woocommerce-Price-amount,
.wapf-product-totals .woocommerce-Price-amount,
.wapf-product-totals .amount{ color:var(--mocha-dark) !important; }
.ly-pdp__price del,
.ly-pdp__price del .woocommerce-Price-amount{ color:var(--ink-soft) !important; }

/* ============================================================
   Mijn account - login + registratie (v16)
   ============================================================ */
/* Elementor-wrappers laten meebuigen (geen botsende max-width/padding) */
body.woocommerce-account:not(.logged-in) .ly-account .elementor,
body.woocommerce-account:not(.logged-in) .ly-account .e-con,
body.woocommerce-account:not(.logged-in) .ly-account .e-con-inner,
body.woocommerce-account:not(.logged-in) .ly-account .elementor-widget-woocommerce-my-account,
body.woocommerce-account:not(.logged-in) .ly-account .elementor-widget-container,
body.woocommerce-account:not(.logged-in) .ly-account .e-my-account-tab{ width:100%; max-width:none; padding:0; margin:0; background:none; box-shadow:none; }

/* Uitgelogd: login + registratie als twee kaarten naast elkaar */
body.woocommerce-account:not(.logged-in) .ly-account .woocommerce{ display:block; max-width:940px; margin:0 auto; }
body.woocommerce-account:not(.logged-in) .ly-account .u-columns,
body.woocommerce-account:not(.logged-in) .ly-account .col2-set{ display:grid; grid-template-columns:1fr; gap:22px; margin:0; width:auto; }
@media (min-width:820px){
  body.woocommerce-account:not(.logged-in) .ly-account .u-columns,
  body.woocommerce-account:not(.logged-in) .ly-account .col2-set{ grid-template-columns:1fr 1fr; align-items:start; }
}
body.woocommerce-account:not(.logged-in) .ly-account .u-column1,
body.woocommerce-account:not(.logged-in) .ly-account .u-column2,
body.woocommerce-account:not(.logged-in) .ly-account .col-1,
body.woocommerce-account:not(.logged-in) .ly-account .col-2{
  float:none !important; width:auto !important; max-width:none !important; margin:0 !important;
  background:#fff; border:1px solid #f1e7e0; border-radius:22px; padding:30px 28px;
  box-shadow:0 8px 26px rgba(140,116,106,.09);
}
/* Kop per kaart */
body.woocommerce-account .ly-account .u-columns h2,
body.woocommerce-account .ly-account .col2-set h2{
  font-family:Poppins,sans-serif; font-weight:700; font-size:19px; color:var(--mocha-dark);
  margin:0 0 12px; padding:0; border:none;
}
/* Formulier-rijen + labels */
body.woocommerce-account .ly-account form.woocommerce-form .form-row,
body.woocommerce-account .ly-account form.login .form-row,
body.woocommerce-account .ly-account form.register .form-row{ margin:0 0 15px; padding:0; }
body.woocommerce-account .ly-account form label{
  display:block; font-family:Poppins,sans-serif; font-weight:600; font-size:12.5px;
  color:var(--ink); margin:0 0 6px;
}
body.woocommerce-account .ly-account form label.woocommerce-form-login__rememberme{
  display:flex; align-items:center; gap:8px; font-weight:500; color:var(--ink-soft); margin:2px 0 0;
}
/* Inputs */
body.woocommerce-account .ly-account form .woocommerce-Input,
body.woocommerce-account .ly-account form input[type=text],
body.woocommerce-account .ly-account form input[type=email],
body.woocommerce-account .ly-account form input[type=password]{
  width:100%; box-sizing:border-box; border:1px solid #e7d8ce; border-radius:13px;
  padding:13px 15px; font-family:Quicksand,sans-serif; font-size:14.5px; color:var(--ink);
  background:#fdfbf8; transition:border-color .15s ease, box-shadow .15s ease;
}
body.woocommerce-account .ly-account form input:focus{
  outline:none; border-color:var(--brown-bg,#a6897a); box-shadow:0 0 0 3px rgba(166,137,122,.15);
}
body.woocommerce-account .ly-account form input.woocommerce-form__input-checkbox{ width:auto; box-shadow:none; }
/* Knop */
body.woocommerce-account .ly-account form .button,
body.woocommerce-account .ly-account form button[type=submit]{
  display:block; width:100%; border:none; cursor:pointer; margin-top:6px;
  background:var(--brown-bg,#a6897a); color:#fff !important;
  font-family:Poppins,sans-serif; font-weight:700; font-size:14px;
  padding:14px 20px; border-radius:30px; transition:background .15s ease, transform .15s ease;
}
body.woocommerce-account .ly-account form .button:hover,
body.woocommerce-account .ly-account form button[type=submit]:hover{
  background:var(--brown-bg-hover,#8f7466); transform:translateY(-1px);
}
/* Wachtwoord-vergeten + privacytekst */
body.woocommerce-account .ly-account .lost_password{ margin:12px 0 0; font-size:13px; }
body.woocommerce-account .ly-account .lost_password a{ color:var(--mocha-dark); font-weight:600; }
body.woocommerce-account .ly-account .woocommerce-privacy-policy-text p{
  font-size:12px; color:var(--ink-soft); line-height:1.55; margin:0 0 14px;
}
body.woocommerce-account .ly-account .woocommerce-privacy-policy-text a{ color:var(--mocha-dark); font-weight:600; }
body.woocommerce-account .ly-account .woocommerce-notices-wrapper:empty{ display:none; }

/* ---------- Categorie: uitverkocht-product (zichtbaar + voorraadmelding) ---------- */
.pcard .badge.out{ background:#9a8d84; color:#fff; }
.pcard .add.soldout{
  display:flex; align-items:center; justify-content:center; gap:7px; cursor:pointer;
  background:#f4ece7; color:var(--mocha-dark); border:1px solid #e7d8ce;
}
.pcard .add.soldout:hover{ background:#ece0d8; }
.pcard .add.soldout .icon{ width:15px; height:15px; stroke:var(--mocha-dark); }
.pcard:has(.badge.out) .ph img{ opacity:.72; }

/* ===== Menu-dropdown: betrouwbaar aanklikbaar (geen dood hover-gat) ===== */
.devicewrap > header{ z-index:60; }
.desktop-nav .dn-item{ position:relative; }
/* hitbox van de topknop reikt tot aan het menu, zodat hover niet wegvalt */
.desktop-nav .dn-top{ padding-bottom:16px; margin-bottom:-16px; }
/* menu sluit direct aan (geen gat) en staat altijd bovenop */
.desktop-nav .dn-drop{ margin-top:0 !important; z-index:210; }
/* ruime onzichtbare brug rond de bovenrand voor diagonale muisbeweging */
.desktop-nav .dn-drop::before{ content:""; position:absolute; top:-18px; left:-20px; right:-20px; height:22px; display:block; }
.desktop-nav .dn-item:hover .dn-drop,
.desktop-nav .dn-item:focus-within .dn-drop{ opacity:1 !important; visibility:visible !important; transform:translateY(0) !important; }

/* ===== Eigen review-balk (horizontaal scrollen, gevuld) ===== */
.wwk-widget{ display:block; padding:16px 0; }
.ly-rev-strip{ display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x proximity; padding:2px 20px 12px; -webkit-overflow-scrolling:touch; scrollbar-width:thin; scrollbar-color:rgba(140,116,106,.5) transparent; }
.ly-rev-strip::-webkit-scrollbar{ height:7px; }
.ly-rev-strip::-webkit-scrollbar-track{ background:transparent; }
.ly-rev-strip::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.45); border-radius:4px; }
.ly-rev-card{ flex:0 0 auto; width:250px; scroll-snap-align:start; background:#fff; border-radius:16px; padding:16px 16px 14px; box-shadow:0 8px 22px rgba(0,0,0,.10); display:flex; flex-direction:column; gap:8px; }
.ly-rev-stars{ color:#f0b429; font-size:15px; letter-spacing:2px; line-height:1; }
.ly-rev-text{ font-family:"Quicksand",sans-serif; font-size:13px; line-height:1.6; color:var(--ink); margin:0; display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden; }
.ly-rev-meta{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; padding-top:4px; }
.ly-rev-name{ font-family:"Poppins",sans-serif; font-weight:700; font-size:12.5px; color:var(--mocha-dark); }
.ly-rev-verified{ display:inline-flex; align-items:center; gap:3px; font-size:10px; font-weight:600; color:#5b8c6e; }
.ly-rev-verified svg{ fill:none; stroke:#5b8c6e; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
@media (min-width:980px){ .ly-rev-strip{ padding-left:52px; padding-right:52px; } }

/* ===== WhatsApp-hulplink op de checkout ===== */
.ly-checkout-help{ display:flex; align-items:center; gap:11px; max-width:760px; margin:0 0 18px; padding:12px 16px; background:#f0faf3; border:1px solid #cdecd6; border-radius:14px; font-family:"Quicksand",sans-serif; font-size:13.5px; color:var(--ink); transition:background .15s ease; }
.ly-checkout-help:hover{ background:#e6f6ec; }
.ly-checkout-help .ly-wa-ic{ flex:0 0 auto; width:34px; height:34px; border-radius:50%; background:#25d366; color:#fff; display:flex; align-items:center; justify-content:center; }
.ly-checkout-help .ly-wa-tx b{ color:#1c8a45; font-weight:700; }

/* ===== PDP: WAPF-personalisatie in v16-stijl (concept-look) ===== */
body.single-product .wapf-wrapper{ display:flex; flex-direction:column; gap:16px; margin:2px 0 8px; }
body.single-product .wapf-field-container{ margin:0; }
body.single-product .wapf-field-label,
body.single-product .wapf-label-text{ font-family:"Poppins",sans-serif; font-weight:700; font-size:12.5px; color:var(--mocha-dark); margin:0 0 9px; display:block; }
body.single-product .wapf-required{ color:#c98a86; margin-left:2px; }
/* invoervelden (select, tekst, textarea) */
body.single-product .wapf select,
body.single-product .wapf input[type=text],
body.single-product .wapf input[type=email],
body.single-product .wapf input[type=number],
body.single-product .wapf textarea{ width:100%; box-sizing:border-box; border:1px solid #e7d8ce; border-radius:12px; padding:11px 14px; font-family:"Quicksand",sans-serif; font-size:14px; color:var(--ink); background:#fdfbf8; }
body.single-product .wapf select:focus,
body.single-product .wapf input:focus,
body.single-product .wapf textarea:focus{ outline:none; border-color:var(--brown-bg,#a6897a); box-shadow:0 0 0 3px rgba(166,137,122,.15); }
/* tekst-swatches -> pillen */
body.single-product .wapf-swatch-wrapper,
body.single-product .wapf-image-swatch-wrapper{ display:flex; flex-wrap:wrap; gap:8px; }
body.single-product .wapf-swatch--text{ font-family:"Poppins",sans-serif; font-weight:600; font-size:12px; color:var(--mocha-dark); padding:8px 14px; border-radius:20px; background:#fff; border:1px solid rgba(140,116,106,.22); cursor:pointer; transition:background .15s ease, border-color .15s ease, color .15s ease; }
body.single-product .wapf-swatch--text:hover{ border-color:var(--mocha); }
body.single-product .wapf-swatch--text.wapf-selected,
body.single-product .wapf-swatch--text:has(input:checked){ background:var(--pink,#e7b0b7); color:#fff; border-color:var(--pink,#e7b0b7); }
/* afbeelding-swatches */
body.single-product .wapf-swatch--image{ border-radius:12px; overflow:hidden; border:2px solid transparent; cursor:pointer; box-shadow:0 6px 16px rgba(140,116,106,.14); transition:border-color .15s ease, transform .15s ease; }
body.single-product .wapf-swatch--image:hover{ transform:translateY(-2px); }
body.single-product .wapf-swatch--image.wapf-selected,
body.single-product .wapf-swatch--image:has(input:checked){ border-color:var(--mocha-dark); }
body.single-product .wapf-swatch--image img{ display:block; width:100%; height:100%; object-fit:cover; }
/* checkboxes -> nette rij */
body.single-product .wapf-checkable{ display:flex; align-items:center; gap:9px; font-family:"Quicksand",sans-serif; font-size:13.5px; color:var(--ink); cursor:pointer; }
body.single-product .wapf-checkable input[type=checkbox],
body.single-product .wapf-checkable input[type=radio]{ width:18px; height:18px; accent-color:var(--mocha-dark); flex:0 0 auto; }
/* prijs-hint (+€1,00) + totaal */
body.single-product .wapf-pricing-hint{ color:var(--ink-soft); font-weight:600; font-size:11.5px; }
body.single-product .wapf-product-totals{ font-family:"Poppins",sans-serif; font-weight:700; color:var(--mocha-dark); }
/* tooltip-icoon subtieler */
body.single-product .wapf-tt-icon{ color:var(--mocha); }

/* ===== Review-balk: auto-scroll (geen snap, verborgen scrollbar) ===== */
.ly-rev-strip{ scroll-snap-type:none !important; scrollbar-width:none; -ms-overflow-style:none; scroll-behavior:auto; }
.ly-rev-strip::-webkit-scrollbar{ display:none; width:0; height:0; }
.wwk-widget{ position:relative; overflow:hidden; }
.wwk-widget::before,.wwk-widget::after{ content:""; position:absolute; top:0; bottom:0; width:36px; z-index:2; pointer-events:none; }
.wwk-widget::before{ left:0; background:linear-gradient(90deg, #fde7df, rgba(253,231,223,0)); }
.wwk-widget::after{ right:0; background:linear-gradient(270deg, #fde7df, rgba(253,231,223,0)); }

/* ===== Review-balk: automatische CSS-marquee (draait vanzelf, geen JS) ===== */
.ly-rev-strip{ display:block !important; overflow:hidden; padding:0; }
.ly-rev-track{ display:flex; width:max-content; padding:2px 20px 14px; animation-name:ly-marquee; animation-timing-function:linear; animation-iteration-count:infinite; will-change:transform; }
.ly-rev-strip .ly-rev-card{ flex:0 0 auto; margin-right:14px; }
@keyframes ly-marquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
.ly-rev-strip:hover .ly-rev-track{ animation-play-state:paused; }
@media (prefers-reduced-motion: reduce){ .ly-rev-track{ animation:none; } .ly-rev-strip{ overflow-x:auto; } }

/* ============================================================
   PDP v16 volledige opbouw (single-product.php + shortcodes)
   Mobiel-first; overschrijft WooCommerce- en WAPF-defaults.
   ============================================================ */
body.single-product .ly-pdp-page{ background:var(--cream); }
body.single-product .ly-pdp{ display:grid; grid-template-columns:1fr; gap:24px; padding:10px 0 44px; }
@media (min-width:860px){ body.single-product .ly-pdp{ grid-template-columns:1.05fr 1fr; gap:46px; align-items:start; } }

/* Galerij */
body.single-product .ly-pdp__gallery{ display:flex; flex-direction:column; gap:10px; }
body.single-product .ly-pdp__main{ aspect-ratio:4/4.4; border-radius:22px; background:var(--peach-soft); overflow:hidden; }
body.single-product .ly-pdp__main img{ width:100%; height:100%; object-fit:cover; display:block; }
body.single-product .ly-pdp__thumbs{ display:flex; gap:10px; overflow-x:auto; padding-bottom:2px; }
body.single-product .ly-pdp__thumb{ flex:0 0 62px; width:62px; height:62px; aspect-ratio:1/1; border-radius:14px; border:2px solid transparent; overflow:hidden; padding:0; background:var(--peach-soft); cursor:pointer; }
body.single-product .ly-pdp__thumb.is-active{ border-color:var(--mocha-dark); }
body.single-product .ly-pdp__thumb img{ width:100%; height:100%; object-fit:cover; }
@media (min-width:860px){ body.single-product .ly-pdp__gallery{ position:sticky; top:96px; } }

/* Info-kolom */
body.single-product .ly-pdp__info{ display:flex; flex-direction:column; align-items:stretch; gap:15px; }
body.single-product .ly-pdp__title{ font-family:"Poppins",sans-serif; font-weight:700; color:var(--mocha-dark); font-size:clamp(22px,5.5vw,30px); line-height:1.22; margin:0; }
body.single-product .ly-pdp__price{ font-family:"Poppins",sans-serif; font-weight:800; font-size:24px; color:var(--mocha-dark); margin:-6px 0 0; }

/* Variant-opties (maat-chips / kleur-swatches uit de shortcode) */
body.single-product .ly-pdp__opt{ display:flex; flex-direction:column; gap:9px; margin:2px 0; }
body.single-product .ly-swatch{ width:42px; height:42px; }
body.single-product .ly-chip-opt{ font-size:13px; padding:9px 16px; }

/* WAPF personalisatie: nette kaart + COMPACTE swatches (fix "enorm") */
body.single-product .wapf-wrapper{ background:#fff; border:1px solid #f0e6df; border-radius:18px; padding:18px 18px 4px; box-shadow:0 6px 20px rgba(140,116,106,.07); gap:4px; }
body.single-product .wapf-field-container{ margin:0 0 16px; }
body.single-product .wapf-image-swatch-wrapper,
body.single-product .wapf-swatch-wrapper{ display:flex; flex-wrap:wrap; gap:10px; }
body.single-product [class*="wapf-col--"]{ width:auto !important; max-width:none !important; flex:0 0 auto !important; padding:0 !important; margin:0 !important; }
body.single-product .wapf-swatch{ display:flex; flex-direction:column; align-items:center; gap:5px; width:auto; margin:0; }
body.single-product .wapf-swatch--image{ width:62px; height:62px; min-width:0; border-radius:12px; overflow:hidden; }
body.single-product .wapf-swatch--image img{ width:100%; height:100%; object-fit:cover; }
/* Stijl/Kleur initiaal (vierkant): GROTE swatch-kaders — overschrijft de 62px hierboven */
body.single-product .wapf-field-image-swatch.vierkant:not(.ly-lt-vk) .wapf-image-swatch-wrapper{ display:grid !important; grid-template-columns:repeat(2,1fr) !important; gap:18px !important; }
body.single-product .wapf-field-image-swatch.vierkant:not(.ly-lt-vk) .wapf-swatch{ height:auto !important; }
body.single-product .wapf-field-image-swatch.vierkant:not(.ly-lt-vk) .wapf-swatch--image{ width:100% !important; height:auto !important; min-width:0 !important; border:none !important; overflow:visible !important; }
body.single-product .wapf-field-image-swatch.vierkant:not(.ly-lt-vk) .wapf-swatch--image img{ display:block !important; width:100% !important; height:230px !important; object-fit:cover !important; border-radius:14px !important; border:3px solid transparent !important; box-sizing:border-box; }
body.single-product .wapf-field-image-swatch.vierkant:not(.ly-lt-vk) .wapf-swatch.wapf-checked .wapf-swatch--image img,
body.single-product .wapf-field-image-swatch.vierkant:not(.ly-lt-vk) .wapf-swatch--image.wapf-checked img{ border-color:var(--mocha-dark) !important; }
body.single-product .wapf-field-image-swatch.vierkant:not(.ly-lt-vk) .wapf-swatch-label{ display:block !important; max-width:none !important; width:100% !important; text-align:center !important; font-family:'Quicksand',sans-serif !important; font-size:13.5px !important; font-weight:600 !important; color:var(--mocha-dark) !important; margin-top:9px !important; line-height:1.3 !important; white-space:normal !important; overflow:visible !important; }
body.single-product .wapf-swatch-label{ font-family:"Quicksand",sans-serif; font-size:10.5px; color:var(--ink-soft); text-align:center; max-width:66px; line-height:1.25; }

/* Koopblok */
body.single-product .ly-buy{ display:flex; gap:10px; align-items:stretch; margin-top:6px; }
body.single-product .ly-pdp__atc.ly-btn{ background:var(--brown-bg,#a6897a); color:#fff !important; border:none; border-radius:30px; font-family:"Poppins",sans-serif; font-weight:700; }
body.single-product .ly-pdp__atc.ly-btn:hover{ background:var(--brown-bg-hover,#8f7466); }

/* WooCommerce-defaults binnen de PDP neutraliseren */
body.single-product .ly-buy-form .quantity{ margin:0; }
body.single-product .ly-buy-form:before,
body.single-product .ly-buy-form:after{ display:none; }
body.single-product .woocommerce-variation-add-to-cart{ display:contents; }

/* WAPF checkbox-optie + prijshint netjes (geen lelijke afbreking) */
body.single-product .wapf-checkable{ align-items:center; gap:10px; flex-wrap:wrap; font-size:14px; }
body.single-product .wapf-checkable .wapf-label-text,
body.single-product .wapf-checkable .wapf-input-label{ font-weight:600; color:var(--ink); font-size:14px; }
body.single-product .wapf-pricing-hint{ white-space:nowrap; font-size:12px; color:var(--ink-soft); }
/* WAPF-totalen compacter + subtieler */
body.single-product .wapf-product-totals{ font-size:13.5px !important; margin-top:10px; padding-top:12px; border-top:1px solid #f0e6df; }
body.single-product .wapf-product-totals *{ font-size:13.5px !important; }

/* FIX: body heeft class ly-pdp op productpagina; de .ly-pdp{display:grid}-regel
   uit shortcodes.css trof daardoor de hele body (2-koloms grid + WWK-snippet in kolom 2).
   Onze nieuwe PDP gebruikt .ly-pdpc, dus body mag gewoon block zijn. */
body.ly-pdp{ display:block !important; gap:0 !important; grid-template-columns:none !important; }

/* ===== Blogartikel (single.php) ===== */
.ly-blog-single{padding:2.5rem 1rem 1rem;}
.ly-blog-article{max-width:820px;margin:0 auto;}
.ly-blog-article img{max-width:100%;height:auto;border-radius:14px;}
.ly-blog-related{max-width:1100px;margin:2.5rem auto 3rem;padding:2rem 1rem 0;border-top:1px solid #ecdfd6;}
.ly-blog-related h2{text-align:center;color:#6e594f;font-size:1.5rem;margin:0 0 1.6rem;}
.ly-blog-related__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;}
.ly-blog-rcard{display:flex;flex-direction:column;background:#fff;border:1px solid #ecdfd6;border-radius:16px;overflow:hidden;text-decoration:none;color:#6e594f;transition:transform .18s,box-shadow .18s;}
.ly-blog-rcard:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(110,89,79,.12);}
.ly-blog-rcard__img{display:block;aspect-ratio:4/3;background:#faf3ee;overflow:hidden;}
.ly-blog-rcard__img img{width:100%;height:100%;object-fit:cover;display:block;}
.ly-blog-rcard__t{display:block;padding:1rem 1.1rem .3rem;font-weight:600;font-size:1rem;line-height:1.35;}
.ly-blog-rcard__more{display:block;padding:.2rem 1.1rem 1.1rem;color:#a6897a;font-size:.9rem;font-weight:600;}
@media(max-width:760px){.ly-blog-related__grid{grid-template-columns:1fr;}.ly-blog-single{padding-top:1.5rem;}}


/* ---- betaal-logo's (veilig & vertrouwd betalen) — paylogo merkstijl ---- */
.pay-methods--logos{ gap:6px 7px; }
.pay-methods--logos .paylogo{
  display:inline-flex; align-items:center; justify-content:center;
  height:27px; min-width:44px; padding:0 8px; background:#fff;
  border:1px solid rgba(140,116,106,.16); border-radius:6px;
  font-weight:800; font-size:12px; line-height:1; letter-spacing:.2px;
  box-shadow:0 1px 2px rgba(0,0,0,.05);
}
.pay-methods--logos .pl-ideal{ color:#cc0066; font-style:italic; }
.pay-methods--logos .pl-bancontact{ color:#004e8c; font-size:10px; letter-spacing:0; }
.pay-methods--logos .pl-visa{ color:#1a1f71; font-style:italic; letter-spacing:.6px; }
.pay-methods--logos .pl-klarna{ background:#ffb3c7; border-color:#ffb3c7; color:#17120f; border-radius:8px; }
.pay-methods--logos .pl-mc{ padding:0 9px; }
.pay-methods--logos .pl-mc svg{ height:17px; width:28px; display:block; }

/* sticky bestseller-knop als anchor (ajax add-to-cart) — zelfde look als de knop */
.sticky-bar .sb-btn{ background:var(--brown-bg); color:#fff !important; border:none; font-family:'Poppins',sans-serif; font-weight:700; font-size:12.5px; padding:10px 16px; border-radius:30px; flex:0 0 auto; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; white-space:nowrap; transition:transform .15s ease, box-shadow .2s ease; }
.sticky-bar .sb-btn:hover{ transform:translateY(-1px); box-shadow:0 6px 16px rgba(110,89,79,0.28); color:#fff !important; }

/* ---------- klantenservice/utility-balk ---------- */
.util-bar{ background:var(--peach-soft); color:var(--mocha-dark); }
.util-bar__inner{ max-width:1280px; margin:0 auto; display:flex; justify-content:flex-end; gap:22px; padding:6px 22px; font-size:11.5px; }
.util-bar__inner a{ color:var(--mocha-dark); text-decoration:none; font-weight:600; letter-spacing:.02em; }
.util-bar__inner a:hover{ color:var(--ink); text-decoration:underline; }
@media(max-width:640px){ .util-bar__inner{ justify-content:center; gap:15px; padding:6px 12px; font-size:11px; } }

/* Over mij: staande foto hoger uitsnijden zodat het gezicht in beeld komt */
.ly-page-over .media{ aspect-ratio:1/1; }
.ly-page-over .media img{ object-position:center 20%; }

/* ly-sum-fix: verzending-rij in het winkelwagen-overzicht netjes laten doorlopen (niet rechts propgedrukt) */
.ly-sum-table tr.woocommerce-shipping-totals,
.ly-sum-table tr.shipping{ display:block; margin:0 0 14px; }
.ly-sum-table tr.shipping th{ display:block; margin:0 0 9px; color:var(--ink-soft); }
.ly-sum-table tr.shipping td{ display:block; text-align:left; }
.ly-sum-table .woocommerce-shipping-methods{ text-align:left; display:flex; flex-direction:column; gap:9px; margin:0; padding:0; list-style:none; }
.ly-sum-table .woocommerce-shipping-methods li{ display:flex; align-items:flex-start; gap:9px; line-height:1.4; }
.ly-sum-table .woocommerce-shipping-methods li input[type=radio]{ margin-top:3px; flex:0 0 auto; }
.ly-sum-table .woocommerce-shipping-methods li label{ text-align:left; margin:0; }
.ly-sum-table tr.shipping td > p,
.ly-sum-table .woocommerce-shipping-destination{ text-align:left; font-size:12px; color:var(--ink-soft); margin:9px 0 0; line-height:1.5; }
.ly-sum-table .shipping-calculator-button{ display:inline-block; margin-top:8px; color:var(--mocha-dark); font-size:12px; }

/* ===== ly-account-fix: compacte, nette ingelogde account-navigatie (wint van plugin-woocommerce.css) ===== */
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:4px; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li{ margin:0 !important; border:none !important; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li a{ display:block; padding:11px 16px !important; border-radius:12px; font-family:'Quicksand',sans-serif !important; font-weight:600 !important; font-size:14px !important; color:var(--ink) !important; text-decoration:none !important; transition:background .15s ease; }
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li.is-active a,
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li a:hover{ background:var(--peach-soft) !important; color:var(--mocha-dark) !important; }

/* ===== ly-sum-fix2: winkelwagen-overzicht volledig borderloos + nette flex (wint van woocommerce.css) ===== */
.woocommerce-cart .summary .ly-sum-table,
.summary.cart_totals .ly-sum-table{ border:none !important; background:none !important; }
.woocommerce-cart .summary .ly-sum-table tr,
.summary.cart_totals .ly-sum-table tr{ display:flex; align-items:center; justify-content:space-between; border:none !important; margin:0 0 11px; }
.woocommerce-cart .summary .ly-sum-table th,
.woocommerce-cart .summary .ly-sum-table td,
.summary.cart_totals .ly-sum-table th,
.summary.cart_totals .ly-sum-table td{ border:none !important; padding:0 !important; }
.woocommerce-cart .summary .ly-sum-table tr.shipping,
.woocommerce-cart .summary .ly-sum-table tr.woocommerce-shipping-totals,
.summary.cart_totals .ly-sum-table tr.shipping{ display:block; }
.woocommerce-cart .summary .ly-sum-table tr.shipping th,
.summary.cart_totals .ly-sum-table tr.shipping th{ display:block; margin:0 0 9px; }
.woocommerce-cart .summary .ly-sum-table tr.shipping td,
.summary.cart_totals .ly-sum-table tr.shipping td{ display:block; text-align:left; }
.woocommerce-cart .summary .ly-sum-table .woocommerce-shipping-methods{ display:flex; flex-direction:column; gap:9px; margin:0; padding:0; list-style:none; text-align:left; }
.woocommerce-cart .summary .ly-sum-table .woocommerce-shipping-methods li{ display:flex; align-items:flex-start; gap:9px; line-height:1.4; }
.woocommerce-cart .summary .ly-sum-table tr.order-total,
.summary.cart_totals .ly-sum-table tr.order-total{ border-top:1px solid rgba(140,116,106,.2) !important; padding-top:14px !important; margin-top:4px; }

/* Ontbrekend verplicht personalisatieveld duidelijk markeren (bij poging tot toevoegen) */
.ly-wapf-missing{ scroll-margin-top:110px; }
.ly-wapf-missing > .wapf-field-label{ color:#c1554a !important; }
.ly-wapf-missing > .wapf-field-label::after{ content:' \2014 nog invullen'; color:#c1554a; font-weight:700; font-size:12px; margin-left:2px; }
.ly-wapf-missing.wapf-field-image-swatch > .wapf-field-label::after{ content:' \2014 kies een optie'; }
.ly-wapf-missing .wapf-image-swatch-wrapper,
.ly-wapf-missing .wapf-swatch-wrapper,
.ly-wapf-missing > .wapf-field-input{ outline:2px solid #e39a90; outline-offset:7px; border-radius:14px; }

/* Live zoeksuggesties onder de zoekbalk */
.ly-search-suggest{ margin-top:10px; background:#fff; border-radius:16px; box-shadow:0 12px 30px rgba(140,116,106,.16); overflow:hidden; max-height:62vh; overflow-y:auto; text-align:left; }
.ly-sg-item{ display:flex; align-items:center; gap:12px; padding:10px 14px; text-decoration:none; color:var(--ink); border-bottom:1px solid rgba(140,116,106,.08); }
.ly-sg-item:last-of-type{ border-bottom:none; }
.ly-sg-item:hover{ background:var(--peach-soft); }
.ly-sg-img img{ width:48px; height:48px; object-fit:cover; border-radius:11px; display:block; background:#faf8f3; }
.ly-sg-info{ display:flex; flex-direction:column; min-width:0; }
.ly-sg-name{ font-family:'Poppins',sans-serif; font-weight:600; font-size:13.5px; color:var(--mocha-dark); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ly-sg-price{ font-size:12.5px; color:var(--ink-soft); margin-top:1px; }
.ly-sg-all{ display:block; text-align:center; padding:11px 14px; font-family:'Poppins',sans-serif; font-weight:600; font-size:12.5px; color:var(--mocha-dark); background:var(--peach-soft); text-decoration:none; }
.ly-sg-all:hover{ background:var(--peach); }
.ly-sg-empty{ padding:14px; font-size:13px; color:var(--ink-soft); text-align:center; }

/* FAQ: blog-verwijzing onder een antwoord */
.acc .faq-more{ margin-top:11px; padding-top:10px; border-top:1px dashed rgba(140,116,106,.2); font-size:12.5px; color:var(--ink-soft); line-height:1.6; }
.acc .faq-more a{ color:var(--mocha-dark); font-weight:600; text-decoration:underline; }
.acc .faq-more a:hover{ color:var(--brown-bg); }

/* Zelf-samenstellen: Speldje-kleurvelden als accordion */
body.single-product .wapf-field-container.ly-speld-acc{ border:1.5px solid rgba(140,116,106,.2); border-radius:14px; padding:0 !important; overflow:hidden; background:#fff; margin-bottom:12px; }
body.single-product .ly-speld-acc .ly-speld-head{ cursor:pointer; padding:14px 16px !important; margin:0 !important; display:flex; align-items:center; user-select:none; }
body.single-product .ly-speld-acc .ly-speld-head label{ margin:0; }
body.single-product .ly-speld-acc .ly-speld-chev{ margin-left:auto; color:var(--mocha-dark); transition:transform .2s ease; font-size:14px; }
body.single-product .ly-speld-acc.is-collapsed .ly-speld-chev{ transform:rotate(-90deg); }
body.single-product .ly-speld-acc .wapf-field-input{ padding:0 14px 14px !important; max-height:360px; overflow-y:auto; }
body.single-product .ly-speld-acc.is-collapsed .wapf-field-input{ display:none !important; }
/* Vorm: grote, duidelijke vorm-swatches (ook op mobiel) */
body.single-product .ly-vorm-field .wapf-image-swatch-wrapper{ display:flex !important; flex-wrap:wrap !important; gap:10px !important; }
body.single-product .ly-vorm-field .wapf-swatch--image{ flex:0 0 auto !important; width:130px !important; max-width:130px !important; min-width:0 !important; height:auto !important; margin:0 !important; }
body.single-product .ly-vorm-field .wapf-swatch--image img{ display:block !important; width:130px !important; max-width:130px !important; height:auto !important; object-fit:contain !important; }
@media(max-width:600px){
  body.single-product .ly-vorm-field .wapf-swatch--image,
  body.single-product .ly-vorm-field .wapf-swatch--image img{ width:calc((100vw - 60px)/3) !important; max-width:calc((100vw - 60px)/3) !important; }
}

/* ly-speld-hover: desktop hover-zoom op speldje-kleuropties */
@media (hover:hover) and (pointer:fine){
  body.single-product .ly-speld-acc{ overflow:visible !important; }
  body.single-product .ly-speld-acc .wapf-field-input{ max-height:none !important; overflow:visible !important; }
  body.single-product .ly-speld-acc .wapf-image-swatch-wrapper{ overflow:visible !important; }
  body.single-product .ly-speld-acc .wapf-swatch--image{ transition:transform .14s ease, box-shadow .14s ease; }
  body.single-product .ly-speld-acc .wapf-swatch--image:hover{ transform:scale(1.7); z-index:8; position:relative; filter:drop-shadow(0 6px 14px rgba(0,0,0,.32)); border-radius:8px; }
  body.single-product .ly-speld-acc .wapf-swatch--image:first-child:hover{ transform-origin:left center; }
  body.single-product .ly-speld-acc .wapf-image-swatch-wrapper .wapf-swatch--image:nth-child(8n+1):hover{ transform-origin:left center; }
  body.single-product .ly-speld-acc .wapf-image-swatch-wrapper .wapf-swatch--image:nth-child(8n):hover{ transform-origin:right center; }
}

/* Zelf-samenstellen: voortgang + tab-vinkjes */
body.single-product .ly-speld-status{ margin:14px 0; padding:12px 16px; border-radius:12px; background:#fbeee8; color:#6e594f; font-weight:600; text-align:center; font-size:15px; line-height:1.4; }
body.single-product .ly-speld-status.is-done{ background:#e7f3ea; color:#3f7a54; }
body.single-product .wapf-field-container.speldjekeuze .wapf-swatch{ position:relative; overflow:visible; }
body.single-product .wapf-field-container.speldjekeuze .wapf-swatch.ly-tab-done::after{ content:"\2713"; position:absolute; top:-7px; right:-7px; background:#3f7a54; color:#fff; width:19px; height:19px; border-radius:50%; font-size:12px; line-height:19px; text-align:center; box-shadow:0 1px 4px rgba(0,0,0,.28); z-index:3; }

@keyframes lyShake{ 0%,100%{transform:translateX(0);} 20%,60%{transform:translateX(-6px);} 40%,80%{transform:translateX(6px);} }
body.single-product .ly-speld-status.ly-shake{ animation:lyShake .5s ease; background:#fbe2da; color:#a1493f; }

/* Weer op voorraad-formulier */
body.single-product .ly-bis{ margin:16px 0; }
body.single-product .ly-bis-inner{ background:#fbeee8; border-radius:14px; padding:16px 18px; }
body.single-product .ly-bis-title{ display:block; color:#6e594f; font-size:16px; }
body.single-product .ly-bis-sub{ margin:4px 0 12px; color:#6e594f; font-size:14px; }
body.single-product .ly-bis-form{ display:flex; flex-wrap:wrap; gap:8px; align-items:stretch; }
body.single-product .ly-bis-email{ flex:1 1 200px; min-width:0; padding:11px 14px; border:1px solid #e4d5cd; border-radius:10px; font-size:15px; background:#fff; }
body.single-product .ly-bis-hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0; }
body.single-product .ly-bis-btn{ background:#8c746a; color:#fff; border:0; border-radius:999px; padding:11px 22px; font-weight:600; cursor:pointer; white-space:nowrap; }
body.single-product .ly-bis-btn:hover{ background:#6e594f; }
body.single-product .ly-bis-btn:disabled{ opacity:.6; cursor:default; }
body.single-product .ly-bis-msg{ flex:1 1 100%; font-size:14px; }
body.single-product .ly-bis-msg.is-ok{ color:#3f7a54; }
body.single-product .ly-bis-msg.is-err{ color:#a1493f; }
body.single-product .ly-bis-testflag{ flex:1 1 100%; font-size:11px; color:#a1493f; background:#fff; padding:3px 8px; border-radius:6px; }

/* Productdetail: gecentreerd op ruime breedte (listings/home blijven full-width) */
@media (min-width:980px){
  body.single-product .ly-pdpc{ max-width:1440px; margin-left:auto; margin-right:auto; }
}

/* Categorie-SEO-tekst onderaan archief */
body.tax-product_cat .ly-cat-seo, body.post-type-archive-product .ly-cat-seo{ max-width:900px; margin:40px auto 10px; padding:0 20px; color:var(--ink,#5b4a42); line-height:1.7; }
body .ly-cat-seo h2{ font-size:24px; margin:0 0 12px; }
body .ly-cat-seo h3{ font-size:18px; margin:22px 0 8px; }
body .ly-cat-seo p{ margin:0 0 12px; }
body .ly-cat-seo ul{ margin:0 0 14px 20px; }
body .ly-cat-seo li{ margin:4px 0; }
body .ly-cat-seo a{ color:var(--mocha-dark,#6e594f); text-decoration:underline; }
/* Categorie-extras (banner + FAQ + reviews) staan buiten .ly-cat-seo -> volle breedte */
.ly-cat .ly-faq{ margin-left:auto; margin-right:auto; padding:0 20px; }
.ly-cat > .ly-cat-reviews{ margin:40px 0; }

body.single-product .wapf-field-image-swatch.vierkant.ly-lt-vk .wapf-image-swatch-wrapper{ grid-template-columns:repeat(2,1fr) !important; gap:14px !important; }
/* ly-lt-vk font-preview fix: strak-bijgesneden woorden compact tonen (mobiel+desktop) */
body.single-product .wapf-field-image-swatch.vierkant.ly-lt-vk .wapf-swatch{ width:100% !important; height:auto !important; min-width:0 !important; }
body.single-product .wapf-field-image-swatch.vierkant.ly-lt-vk .wapf-swatch--image{ width:100% !important; height:auto !important; display:block !important; text-align:center !important; overflow:hidden !important; border:2px solid #efe7e1 !important; border-radius:12px !important; box-sizing:border-box !important; padding:11px 12px !important; background:#fff !important; }
body.single-product .wapf-field-image-swatch.vierkant.ly-lt-vk .wapf-swatch--image img{ display:block !important; width:100% !important; height:auto !important; max-height:70px !important; max-width:100% !important; min-height:0 !important; object-fit:contain !important; aspect-ratio:auto !important; margin:0 auto !important; border-radius:0 !important; background:transparent !important; }
body.single-product .wapf-field-image-swatch.vierkant.ly-lt-vk .wapf-swatch.wapf-checked .wapf-swatch--image,
body.single-product .wapf-field-image-swatch.vierkant.ly-lt-vk .wapf-swatch--image.wapf-checked{ border-color:var(--mocha-dark) !important; }

/* Lettertype: grote voorbeeldweergave bij klik */
body.single-product .ly-lt-preview{ margin:14px 0 4px; padding:16px 14px; border-radius:16px; background:#faf6f2; text-align:center; }
body.single-product .ly-lt-preview__cap{ display:block; font-family:'Quicksand',sans-serif; font-size:12.5px; font-weight:600; color:#a08c82; margin-bottom:10px; }
body.single-product .ly-lt-preview img{ display:inline-block; max-height:120px; max-width:100%; width:auto; height:auto; object-fit:contain; }

/* ly-buyrow-spacing: meer lucht rond teller/knop/voordelenbalk op productpagina */
body.single-product .buy-row{ gap:22px !important; }
body.single-product .ly-vdb{ margin-top:26px !important; }

/* Reviews-sectiekop */
body.single-product .ly-rev-heading, .front-page .ly-rev-heading, .home .ly-rev-heading{ text-align:center; font-size:22px; color:var(--mocha-dark,#6e594f); margin:8px 0 16px; }
.ly-rev-heading{ text-align:center; font-size:22px; color:#6e594f; margin:8px 0 16px; font-family:'Poppins',sans-serif; }
