/*
Theme Name: LoveLifeLive – Kwaliteit van leven
Theme URI: https://lovelifelive.nl/
Author: LoveLifeLive
Description: Een rustige, nuchtere en uitnodigende WordPress-site voor LoveLifeLive, met focus op kwaliteit van leven, leefstijlcoaching, de overgang en de maandelijkse ademcirkel in Warnsveld.
Version: 12.1
Text Domain: lovelifelive
*/

:root{
  --cream:#f7f4ea;
  --paper:#fbfaf6;
  --ink:#26332e;
  --muted:#5c6a62;
  --sage:#7c9473;
  --sage-dark:#3c5940;
  --sage-text:#56704e;
  --sage-pale:#e7ecdf;
  --sand:#ded3bd;
  --line:#e1dcc9;
  --white:#fff;
  --max:1180px;
  --radius:20px;
  --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --font-head: "Fraunces", Georgia, serif;
  --font-script: "Caveat", cursive;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth; scroll-padding-top:90px;}
body{
  margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.7;
}
img{max-width:100%; display:block;}
a{color:inherit;}
h1,h2,h3{font-family:var(--font-head); font-weight:600; line-height:1.18; margin:0 0 .5em; color:var(--sage-dark);}
h1{font-size:clamp(2rem,4.4vw,3.1rem);}
h2{font-size:clamp(1.6rem,3.2vw,2.4rem);}
h3{font-size:1.2rem;}
p{margin:0 0 1.1em;}
.container{width:min(var(--max), 100% - 2.5rem); margin-inline:auto;}
.small{font-size:.9rem; color:var(--muted);}
.script{font-family:var(--font-script); font-weight:700; color:var(--sage-dark);}
.skip-link{position:absolute; left:-999px; top:0; background:#fff; padding:.6rem 1rem; z-index:300;}
.skip-link:focus{left:8px; top:8px;}
:focus-visible{outline:3px solid var(--sand); outline-offset:2px;}

/* Buttons */
.button{display:inline-flex; align-items:center; gap:.5rem; padding:.85rem 1.5rem; border-radius:999px; font-weight:600; text-decoration:none; font-size:.98rem; transition:transform .15s, background .15s;}
.button.primary{background:var(--sage-dark); color:#fff;}
.button.primary:hover{background:#2c4530; transform:translateY(-1px);}
.button.secondary{background:transparent; color:var(--sage-dark); border:1.6px solid var(--sage-dark);}
.button.secondary:hover{background:var(--sage-dark); color:#fff;}
.hero-actions{display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.6rem;}

/* Header */
.site-header{position:sticky; top:0; z-index:100; background:rgba(247,244,234,.94); backdrop-filter:blur(8px); border-bottom:1px solid var(--line);}
.header-inner{display:flex; align-items:center; gap:1.4rem; min-height:78px;}
.brand{display:flex; align-items:center; gap:.6rem; text-decoration:none; color:var(--sage-dark); margin-right:auto;}
.brand-heart{color:var(--sage-dark); flex-shrink:0;}
.brand-text{display:flex; flex-direction:column; line-height:1.15;}
.brand-text strong{font-family:var(--font-head); font-size:1.25rem;}
.brand-text em{font-style:normal; font-size:.72rem; color:var(--muted);}
.menu{display:flex; align-items:center; gap:1.5rem;}
.menu > a{text-decoration:none; font-weight:600; font-size:.96rem; color:var(--ink);}
.menu > a:hover{color:var(--sage-dark);}
.has-dropdown{position:relative;}
.dropdown-toggle{display:flex; align-items:center; gap:.35rem; background:none; border:0; font:inherit; font-weight:600; font-size:.96rem; color:var(--ink); cursor:pointer; padding:0;}
.dropdown-menu{display:none; position:absolute; top:calc(100% + 14px); left:50%; transform:translateX(-50%); background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 12px 28px rgba(38,51,46,.12); padding:.6rem; min-width:210px; flex-direction:column;}
.has-dropdown:hover .dropdown-menu, .has-dropdown:focus-within .dropdown-menu{display:flex;}
.dropdown-menu a{padding:.55rem .7rem; border-radius:8px; text-decoration:none; color:var(--ink); font-size:.94rem; font-weight:500;}
.dropdown-menu a:hover{background:var(--sage-pale);}
.nav-cta{white-space:nowrap;}
.nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; padding:.4rem; cursor:pointer;}
.nav-toggle span{width:22px; height:2px; background:var(--sage-dark); display:block;}

/* Hero */
.hero{padding:clamp(2.5rem,6vw,5rem) 0 clamp(2.5rem,5vw,4rem);}
.hero-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center;}
.eyebrow{text-transform:uppercase; letter-spacing:.1em; font-weight:700; font-size:.78rem; color:var(--sage-text); margin-bottom:1rem;}
.hero .lead{font-size:1.15rem; color:var(--muted); max-width:36em;}
.hero-photo{position:relative; width:100%; padding-top:115%; overflow:hidden; border-radius:var(--radius); box-shadow:0 20px 40px rgba(38,51,46,.14);}
.hero-photo img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; border-radius:inherit; box-shadow:none;}

/* Pillars strip */
.pillars-strip{background:var(--sage-pale); padding:2.6rem 0;}
.pillars-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1.6rem;}
.pillar{text-align:center;}
.pillar-icon{display:inline-grid; place-items:center; width:52px; height:52px; border-radius:50%; background:#fff; color:var(--sage-dark); margin-bottom:.8rem;}
.pillar h3, .pillar h2{margin-bottom:.3rem; font-size:1.05rem;}
.pillar p{font-size:.92rem; color:var(--muted); margin:0;}

/* Story */
.story{padding:clamp(3rem,7vw,5.5rem) 0;}
.story-grid{display:grid; grid-template-columns:.85fr 1.15fr .85fr; gap:2.2rem; align-items:center;}
.story-photo{position:relative; width:100%; padding-top:133.33%; overflow:hidden; border-radius:var(--radius); box-shadow:0 16px 32px rgba(38,51,46,.12);}
.story-photo img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; border-radius:inherit; box-shadow:none;}
.story-copy h2{font-size:clamp(1.8rem,3.4vw,2.5rem);}
.signature{font-size:1.5rem; margin-top:1rem;}
.story-collage{display:flex; flex-direction:column; gap:1rem;}
.collage-item{position:relative; margin:0; padding-top:80%; border-radius:16px; overflow:hidden; box-shadow:none; line-height:0;}
.collage-item img{position:absolute; inset:0; object-fit:cover; width:100%; height:100%; display:block;}
.collage-placeholder{padding-top:80%; position:relative; background:repeating-linear-gradient(135deg, var(--sage-pale), var(--sage-pale) 10px, #fff 10px, #fff 20px); display:grid; place-items:center; text-align:center; border:2px dashed var(--sage); box-sizing:border-box;}
.collage-placeholder span{font-size:.85rem; color:var(--sage-dark); font-weight:600; line-height:1.4;}
.collage-placeholder small{font-weight:500; color:var(--muted);}

/* Balanswiel */
.balance-wheel-wrap{max-width:360px; margin:0 auto 2.4rem;}
.balance-wheel{width:100%; height:auto; display:block;}
@media (max-width: 900px){
  .balance-wheel-wrap{max-width:280px;}
}

/* Cards */
.cards-section{padding:clamp(3rem,7vw,5rem) 0;}
.cards-head{text-align:center; max-width:640px; margin:0 auto 2.4rem;}
.cards-head h2{font-size:clamp(1.8rem,3.4vw,2.5rem);}
.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem;}
.card{position:relative; background:#fff; border-radius:var(--radius); overflow:visible; box-shadow:0 10px 26px rgba(38,51,46,.08); display:flex; flex-direction:column;}
.card-image{position:relative; padding-top:75%; overflow:hidden; border-radius:var(--radius) var(--radius) 0 0;}
@media (max-width: 900px){
  .card-image{padding-top:50%;}
}
.card-image img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.card-icon{position:absolute; bottom:-22px; left:1.2rem; background:var(--sage-dark); color:#fff; width:44px; height:44px; border-radius:50%; display:grid; place-items:center; box-shadow:0 6px 14px rgba(38,51,46,.25);}
.card h3, .card p, .card .card-link{padding-inline:1.4rem;}
.card h3{margin-top:2rem;}
.card p{color:var(--muted); font-size:.95rem;}
.card-link{display:inline-flex; gap:.4rem; text-decoration:none; font-weight:700; color:var(--sage-dark); margin-bottom:1.4rem; margin-top:auto;}

/* Testimonials */
.testimonials{background:var(--sage-pale); padding:clamp(3rem,7vw,5rem) 0;}
.testimonial-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem;}
.testimonial{background:#fff; border-radius:16px; padding:1.6rem; box-shadow:0 8px 20px rgba(38,51,46,.06);}
.testimonial p{font-style:italic; color:var(--ink); margin-bottom:.9rem;}
.testimonial span{font-weight:700; color:var(--sage-dark);}

/* Final CTA */
.final-cta{padding:clamp(3rem,7vw,5.5rem) 0; text-align:center;}
.final-cta-grid{max-width:680px; margin:0 auto;}
.final-cta .button{margin-top:.6rem;}

/* Footer */
.site-footer{background:var(--sage-dark); color:#eef1ea; padding:2.6rem 0 1.2rem;}
.footer-inner{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1.4rem; padding-bottom:1.4rem; border-bottom:1px solid rgba(255,255,255,.15);}
.site-footer .brand{color:#fff;}
.footer-menu{display:flex; flex-wrap:wrap; gap:1.2rem;}
.footer-menu a{text-decoration:none; font-weight:500; font-size:.92rem; color:#eef1ea;}
.footer-contact{display:flex; flex-direction:column; gap:.2rem; text-align:right;}
.footer-contact a{color:#eef1ea; text-decoration:underline;}
.site-footer .small{color:#cdd8cd;}
.footer-bottom{padding-top:1rem; font-size:.85rem; color:#cdd8cd;}

@media (max-width: 900px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-photo{order:-1; max-width:220px; margin-inline:auto; padding-top:100%;}
  .pillars-grid{grid-template-columns:repeat(2,1fr);}
  .story-grid{grid-template-columns:1fr;}
  .story-photo{max-width:220px; margin-inline:auto; padding-top:100%;}
  .story-collage{display:grid; grid-template-columns:1fr 1fr; gap:.8rem; max-width:320px; margin-inline:auto;}
  .collage-item{width:100%; padding-top:100%;}
  .cards{grid-template-columns:1fr;}
  .testimonial-grid{grid-template-columns:1fr;}
  .menu{display:none; position:absolute; top:100%; left:0; right:0; background:var(--cream); flex-direction:column; align-items:flex-start; gap:1rem; padding:1.2rem 1.5rem 1.6rem; border-bottom:1px solid var(--line);}
  .menu.is-open{display:flex;}
  .has-dropdown{width:100%;}
  .dropdown-menu{position:static; transform:none; box-shadow:none; border:0; padding:.4rem 0 0 .8rem; display:none;}
  .has-dropdown.is-open .dropdown-menu{display:flex;}
  .nav-toggle{display:flex;}
  .nav-cta{display:none;}
}

/* ===== Inner pages (non-front-page templates) ===== */

/* Page hero band */
.page-hero{background:var(--sage-pale); padding:clamp(2.6rem,6vw,4.2rem) 0 clamp(2.2rem,5vw,3.2rem); text-align:center;}
.page-hero .container{max-width:760px;}
.page-hero .eyebrow{justify-content:center;}
.page-hero h1{margin-bottom:.6rem;}
.page-hero p{color:var(--muted); font-size:1.08rem; max-width:42em; margin-inline:auto;}

/* Body copy */
.page-content{padding:clamp(2.8rem,6vw,4.5rem) 0 clamp(3.2rem,7vw,5.5rem);}
.page-content .container{max-width:760px;}
.page-content h2{margin-top:2.2rem;}
.page-content h2:first-child{margin-top:0;}
.page-content > .container > *:first-child{margin-top:0;}

/* Checklist grid (used on leefstijlcoaching) */
.checklist{display:grid; grid-template-columns:repeat(2,1fr); gap:.75rem 1.5rem; margin:1.6rem 0 2.2rem; padding:0; list-style:none;}
.checklist div{display:block; position:relative; font-weight:600; color:var(--sage-dark); background:var(--sage-pale); border-radius:12px; padding:.75rem 1rem .75rem 2.85rem; font-size:.95rem; line-height:1.6;}
.checklist div::before{content:"✓"; position:absolute; left:1rem; top:calc(.75rem + .8em - 11px); display:flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:var(--sage-dark); color:#fff; font-size:.75rem;}

/* Callout / notice box */
.notice{background:#fff; border:1.6px solid var(--sage); border-left-width:5px; border-radius:14px; padding:1.3rem 1.5rem; margin:1.8rem 0; box-shadow:0 8px 20px rgba(38,51,46,.06);}
.hero-photo, .story-photo, .collage-item, .card-image, .notice{contain: layout paint;}
.notice strong{color:var(--sage-dark); font-family:var(--font-head); font-size:1.05rem;}

/* Text-only cards (e.g. Tarieven) — .cards/.card already used with images on the front page;
   these rules restore top padding + a kicker label when there is no .card-image */
.page-content .cards{grid-template-columns:repeat(3,1fr);}
.card:not(.image-card){padding:1.7rem 1.5rem 1.6rem;}
.card:not(.image-card) h3, .card:not(.image-card) p, .card:not(.image-card) .card-link{padding-inline:0;}
.card:not(.image-card) h3{margin-top:.4rem;}
.card .number{text-transform:uppercase; letter-spacing:.08em; font-weight:700; font-size:.72rem; color:var(--sage-text);}

/* Two-column "topic" section (ademcirkel highlight on Tarieven) */
.topic-section{padding:clamp(2.4rem,5vw,3.4rem) 0;}
.topic-grid{display:grid; grid-template-columns:1.3fr .9fr; gap:2rem; align-items:center; background:var(--sage-pale); border-radius:var(--radius); padding:clamp(1.6rem,4vw,2.6rem);}
.topic-grid h2{margin-bottom:.5rem;}
.topic-grid .button{margin-top:.6rem;}
.note{background:#fff; border-radius:14px; padding:1.4rem; text-align:center; box-shadow:0 8px 20px rgba(38,51,46,.08); display:flex; flex-direction:column; gap:.3rem;}
.note strong{font-family:var(--font-head); color:var(--sage-dark); font-size:1.2rem;}
.note span{color:var(--muted); font-size:.9rem;}

/* Transition section (Overgang page) — mirrors the hero layout */
.transition{padding:clamp(2.6rem,6vw,4.5rem) 0;}
.transition-grid{display:grid; grid-template-columns:1fr 1fr; gap:2.6rem; align-items:center;}
.transition-grid .hero-photo img{border-radius:var(--radius); width:100%; height:100%; object-fit:cover; box-shadow:0 16px 32px rgba(38,51,46,.12);}

/* Contact page */
.contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:2.8rem; align-items:start; max-width:1000px !important;}
.form{display:flex; flex-direction:column; gap:.3rem; background:#fff; border-radius:var(--radius); padding:1.8rem; box-shadow:0 12px 28px rgba(38,51,46,.08);}
.form label{font-weight:600; font-size:.9rem; color:var(--sage-dark); margin-top:.7rem;}
.form input, .form textarea{font:inherit; font-size:.98rem; padding:.75rem .9rem; border:1.6px solid var(--line); border-radius:10px; background:var(--cream); color:var(--ink);}
.form input:focus, .form textarea:focus{outline:none; border-color:var(--sage);}
.form textarea{min-height:130px; resize:vertical;}
.form .button{align-self:flex-start; margin-top:1.2rem; border:0; cursor:pointer;}

@media (max-width: 900px){
  .checklist{grid-template-columns:1fr;}
  .page-content .cards{grid-template-columns:1fr;}
  .topic-grid{grid-template-columns:1fr;}
  .transition-grid{grid-template-columns:1fr;}
  .transition-grid .hero-photo{order:-1;}
  .contact-grid{grid-template-columns:1fr;}
}

/* ===== Uitgelichte programma's op de homepage (v10.33) ===== */
.hero-programs{margin:1.1rem 0 0; font-size:.98rem;}
.hero-programs a{color:var(--sage-dark); font-weight:700; text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1.5px;}
.offer-band{position:relative; background:var(--sage-dark); color:#fff; padding:clamp(3.4rem,8vw,6rem) 0; overflow:hidden;}
.offer-band::before{content:""; position:absolute; inset:auto -12% -45% auto; width:620px; height:620px; border-radius:50%; background:radial-gradient(circle, rgba(231,236,223,.13) 0%, rgba(231,236,223,0) 70%); pointer-events:none;}
.offer-head{position:relative; max-width:720px; margin:0 auto 2.8rem; text-align:center;}
.offer-eyebrow{text-transform:uppercase; letter-spacing:.14em; font-weight:700; font-size:.78rem; color:#cfdcc6; margin:0 0 .9rem;}
.offer-head h2{color:#fff; font-size:clamp(2rem,4.4vw,3.2rem); line-height:1.08; margin:0 0 1rem;}
.offer-head h2 span{font-family:var(--font-script); font-weight:700; color:#e7ecdf; font-size:1.12em;}
.offer-head p{color:rgba(255,255,255,.82); font-size:1.08rem; margin:0 auto; max-width:34em;}
.offer-chooser{position:relative; max-width:980px; margin:0 auto 2.8rem;}
.offer-chooser-title{text-align:center; font-weight:700; color:#fff; font-size:1.05rem; margin:0 0 1rem;}
.offer-chooser ul{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:.7rem;}
.offer-chooser li a{display:flex; flex-direction:column; gap:.25rem; height:100%; text-decoration:none; color:#fff; border:1.5px solid rgba(255,255,255,.32); border-radius:14px; padding:.8rem 1rem; transition:background .2s ease, border-color .2s ease;}
.offer-chooser li a span{font-size:.95rem; line-height:1.4; color:rgba(255,255,255,.88);}
.offer-chooser li a strong{font-size:.92rem; color:#e7ecdf;}
.offer-chooser li a:hover, .offer-chooser li a:focus-visible{background:rgba(255,255,255,.1); border-color:#fff;}
.offer-chooser-doubt{text-align:center; color:rgba(255,255,255,.82); margin:1.1rem 0 0; font-size:.98rem;}
.offer-chooser-doubt a{color:#fff; font-weight:700;}
@media (max-width:900px){ .offer-chooser ul{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .offer-chooser ul{grid-template-columns:1fr; gap:.5rem;} .offer-chooser li a{padding:.6rem .9rem;} .offer-chooser li a span{font-size:.9rem;} }
.offer-grid{position:relative; display:flex; flex-wrap:wrap; justify-content:center; gap:1.4rem;}
.offer-grid{gap:1.1rem;}
.offer-grid > .offer-card{flex:0 0 calc((100% - 3*1.1rem)/4); min-width:0;}
.offer-top .offer-body{padding-left:.9rem; padding-right:.9rem;}
.offer-card{display:flex; flex-direction:column; background:var(--paper); color:var(--ink); border-radius:var(--radius); overflow:hidden; text-decoration:none; box-shadow:0 18px 40px rgba(12,24,15,.28); transition:transform .25s ease, box-shadow .25s ease;}
.offer-card:hover, .offer-card:focus-visible{transform:translateY(-6px); box-shadow:0 26px 50px rgba(12,24,15,.36);}
.offer-card:focus-visible{outline:3px solid #e7ecdf; outline-offset:3px;}
.offer-cover{position:relative; display:block; aspect-ratio:1/1; overflow:hidden; background:var(--sage-pale);}
.offer-cover img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.offer-card:hover .offer-cover img{transform:scale(1.035);}
.offer-badge{position:absolute; top:14px; right:14px; background:#a85d38; color:#fff; font-size:.74rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:.35rem .8rem; border-radius:999px; box-shadow:0 4px 12px rgba(0,0,0,.2);}
.offer-body{display:flex; flex-direction:column; gap:.45rem; padding:1.25rem 1.3rem 1.4rem; flex:1;}
.offer-meta{font-size:.76rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--sage-text);}
.offer-title{font-family:var(--font-head); font-weight:600; font-size:1.3rem; line-height:1.2; color:var(--sage-dark);}
.offer-text{font-size:.93rem; line-height:1.55; color:var(--muted);}
.offer-cta{margin-top:auto; padding-top:.6rem; font-weight:700; font-size:.95rem; color:var(--sage-dark); display:block;}
.offer-card:hover .offer-cta span{transform:translateX(3px);}
.offer-cta span{display:inline-block; transition:transform .2s ease;}
.offer-cta .offer-cta-long{display:inline; transition:none;}
.offer-coaching{position:relative; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:.7rem 1rem; margin-top:2.6rem; padding-top:2rem; border-top:1px solid rgba(255,255,255,.18);}
.offer-coaching-label{font-weight:600; color:#fff; margin-right:.4rem;}
.offer-coaching a{color:#fff; text-decoration:none; font-weight:600; font-size:.95rem; border:1.5px solid rgba(255,255,255,.45); border-radius:999px; padding:.5rem 1.1rem; transition:background .2s ease, color .2s ease;}
.offer-coaching a:hover{background:#fff; color:var(--sage-dark);}
@media (min-width:1061px){ .offer-cta .offer-cta-long{display:none;} .offer-title{font-size:1.2rem;} }
@media (max-width:1060px){ .offer-grid > .offer-card{flex-basis:calc((100% - 2*1.1rem)/3);} }
@media (max-width:620px){
  .offer-grid{gap:.8rem;}
  .offer-grid > .offer-card{flex-basis:calc((100% - .8rem)/2);}
  .offer-body{padding:.8rem .85rem 1rem; gap:.3rem;}
  .offer-meta{font-size:.66rem; letter-spacing:.06em;}
  .offer-title{font-size:1.02rem;}
  .offer-text{display:none;}
  .offer-cta .offer-cta-long{display:none;}
  .offer-cta{font-size:.82rem; padding-top:.3rem;}
  .offer-badge{top:8px; right:8px; font-size:.62rem; padding:.25rem .55rem;}
  .offer-coaching-label{width:100%; text-align:center; margin:0;}
}
@media (prefers-reduced-motion: reduce){ .offer-card, .offer-cover img, .offer-cta span{transition:none;} }
.cards.cards-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:1060px){ .cards.cards-4{grid-template-columns:repeat(2,1fr);} }
@media (max-width:620px){ .cards.cards-4{grid-template-columns:1fr;} }

/* ===== Programma's vooraan (v10.36) ===== */
.promo-bar{display:flex; align-items:center; justify-content:center; gap:.7rem; flex-wrap:nowrap; background:#a85d38; color:#fff; text-decoration:none; font-size:.93rem; line-height:1.3; padding:.6rem 16px;}
.promo-bar:hover .promo-cta span, .promo-bar:focus-visible .promo-cta span{transform:translateX(3px);}
.promo-bar:focus-visible{outline:3px solid var(--sage-dark); outline-offset:-3px;}
.promo-new{flex:none; background:#fff; color:#a45a35; font-weight:700; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; padding:.22rem .6rem; border-radius:999px;}
.promo-text{min-width:0;}
.promo-cta{flex:none; font-weight:700; text-decoration:underline; text-underline-offset:3px;}
.promo-cta span{display:inline-block; transition:transform .2s ease;}
.offer-top{padding:clamp(2rem,5vw,3.6rem) 0 clamp(2.4rem,5vw,3.8rem);}
.offer-top .offer-head{margin-bottom:1.8rem;}
.offer-top .offer-head h2{font-size:clamp(1.9rem,4vw,2.9rem);}
@media (max-width:1060px){
  .offer-top .offer-grid{flex-wrap:nowrap; justify-content:flex-start; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding:.3rem 1.25rem 1.2rem; margin:0 -1.25rem; scroll-padding-inline:1.25rem; scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.35) transparent;}
  .offer-top .offer-grid > .offer-card{flex:0 0 32%; scroll-snap-align:start;}
  .offer-top .offer-grid > .offer-card:hover{transform:none;}
}
@media (max-width:620px){
  .promo-long{display:none;}
  .promo-bar{font-size:.86rem; gap:.5rem;}
  .offer-top{padding:1.6rem 0 1.8rem;}
  .offer-top .offer-head{margin-bottom:1.1rem;}
  .offer-top .offer-head h2{font-size:1.75rem; margin-bottom:.5rem;}
  .offer-top .offer-head p{font-size:.95rem;}
  .offer-top .offer-grid{gap:.75rem;}
  .offer-top .offer-grid > .offer-card{flex-basis:44%;}
  .offer-top .offer-coaching{margin-top:1.4rem; padding-top:1.4rem;}
}
@media (prefers-reduced-motion: reduce){ .promo-cta span{transition:none;} }
.product-reviews blockquote{margin:0 0 1rem; padding:1rem 1.2rem; background:var(--sage-pale); border-radius:12px;}
.product-reviews blockquote p{margin:0 0 .4rem; font-style:italic;}
.product-reviews cite{font-style:normal; font-weight:600; color:var(--sage-dark);}

/* Welkom bovenaan de homepage */
.welcome{background:linear-gradient(180deg,var(--cream) 0%,var(--paper) 100%); padding:clamp(2.2rem,5vw,4.2rem) 0 clamp(2.4rem,5vw,4rem);}
.welcome-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(2rem,5vw,4rem); align-items:center;}
.welcome h1{font-size:clamp(2.4rem,5.2vw,3.9rem); line-height:1.04; margin:0 0 1rem; color:var(--sage-dark);}
.welcome h1 .script{display:inline-block; font-size:1.02em; color:#a85d38; margin-top:.15em;}
.welcome .lead{font-size:1.15rem; color:var(--muted); max-width:32em; margin:0 0 1.6rem;}
.welcome-ask{font-weight:700; color:var(--ink); margin:0 0 .8rem; font-size:1.02rem;}
.welcome-pills li{display:flex;}
.welcome-pills li a{width:100%;}
.welcome-pills{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.6rem;}
.welcome-pills a{display:flex; align-items:center; gap:.65rem; background:#fff; border:1.5px solid var(--line); border-radius:999px; padding:.5rem .9rem .5rem .5rem; text-decoration:none; color:var(--ink); font-weight:600; font-size:.97rem; line-height:1.25; box-shadow:0 4px 14px rgba(38,51,46,.06); transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;}
.welcome-pills a:hover, .welcome-pills a:focus-visible{border-color:var(--sage-dark); transform:translateY(-2px); box-shadow:0 8px 20px rgba(38,51,46,.12);}
.pill-icon{flex:none; display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:var(--sage-pale); color:var(--sage-dark);}
.pill-label{flex:1;}
.pill-arrow{color:var(--sage-text); transition:transform .2s ease;}
.welcome-pills a:hover .pill-arrow{transform:translateX(3px);}
.welcome-sub{margin:1.1rem 0 0; font-size:.95rem; color:var(--muted);}
.welcome-sub a{color:var(--sage-dark); font-weight:700; text-underline-offset:4px;}
.welcome-photo{position:relative; margin:0;}
.welcome-photo img{display:block; width:100%; height:min(560px,68vh); max-height:none; object-fit:cover; object-position:50% 78%; border-radius:var(--radius); box-shadow:0 24px 48px rgba(38,51,46,.16);}
.welcome-badge{position:absolute; left:-1rem; bottom:1.6rem; background:#fff; border-radius:999px; padding:.55rem 1.1rem; font-size:.88rem; color:var(--muted); box-shadow:0 10px 24px rgba(38,51,46,.14);}
.welcome-badge strong{color:var(--sage-dark); font-family:var(--font-head); font-size:1.05rem; margin-right:.3rem;}
.hero-solo .hero-grid{grid-template-columns:1fr; text-align:center;}
.hero-solo .hero-copy{max-width:760px; margin:0 auto;}
.hero-solo .lead{margin-inline:auto;}
.hero-solo .hero-actions{justify-content:center;}
.hero-title{font-size:clamp(1.8rem,3.6vw,2.7rem);}
@media (max-width:900px){
  .welcome-grid{grid-template-columns:1fr; gap:1.4rem;}
  .welcome-photo{order:-1; max-width:440px; width:100%; margin:0 auto;}
  .welcome-photo img{height:230px; object-position:50% 40%; border-radius:var(--radius);}
  .welcome-badge{left:.7rem; bottom:.7rem; font-size:.8rem; padding:.4rem .85rem;}
  .welcome-copy{text-align:center;}
  .welcome .lead{margin-inline:auto;}
}
@media (max-width:560px){
  .welcome{padding-top:1rem;}
  .welcome-photo img{height:190px;}
  .welcome h1{font-size:2.3rem;}
  .welcome .lead{font-size:1.02rem; margin-bottom:1.2rem;}
  .welcome-pills{gap:.5rem;}
  .welcome-pills a{flex-direction:column; text-align:center; border-radius:16px; padding:.7rem .5rem; gap:.35rem; font-size:.9rem;}
  .pill-arrow{display:none;}
  .pill-icon{width:34px; height:34px;}
}

/* Werkgeverspagina */
.stat-row{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:1.4rem 0 .4rem;}
.stat-row div{border-left:4px solid var(--sage-dark); padding:.2rem 0 .2rem .9rem;}
.stat-row strong{display:block; font-family:var(--font-head); font-size:1.6rem; color:var(--sage-dark); line-height:1.15;}
.stat-row span{font-size:.92rem; color:var(--muted);}
.pkg-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; align-items:stretch;}
.pkg{position:relative; background:#fff; border:1.5px solid var(--line); border-radius:var(--radius); padding:1.6rem 1.4rem 1.4rem; display:flex; flex-direction:column;}
.pkg-featured{border-color:var(--sage-dark); box-shadow:0 18px 40px rgba(38,51,46,.12);}
.pkg-badge{position:absolute; top:-.8rem; left:50%; transform:translateX(-50%); background:var(--sage-dark); color:#fff; font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:.3rem .8rem; border-radius:999px; margin:0; white-space:nowrap;}
.pkg-name{font-family:var(--font-head); font-size:1.3rem; color:var(--sage-dark); font-weight:600; margin:0 0 .3rem;}
.pkg-price{font-family:var(--font-head); font-size:2rem; font-weight:600; color:var(--ink); margin:0;}
.pkg-price span{font-family:var(--font-body); font-size:.9rem; font-weight:400; color:var(--muted);}
.pkg-for{font-size:.92rem; color:var(--sage-text); font-weight:600; margin:.2rem 0 1rem;}
.pkg ul{margin:0; padding-left:1.1rem; font-size:.95rem;}
.pkg li{margin-bottom:.4rem;}
@media (max-width:900px){ .pkg-grid, .stat-row{grid-template-columns:1fr;} .pkg-grid{gap:1.6rem;} }

/* Veelgestelde vragen (LoveLifeLive Compleet) */
.page-content details{border-bottom:1px solid var(--line, #dfe4d6);padding:.75rem 0}
.page-content details summary{cursor:pointer;font-weight:600;color:var(--sage-dark, #3c5940);list-style-position:outside}
.page-content details p{margin:.5rem 0 0}

/* Bundel (10.61) */
.bundle-card{display:grid; grid-template-columns:minmax(0,220px) 1fr; gap:1.6rem; align-items:center; background:#fff; border-radius:16px; padding:1.5rem; margin:2rem 0; box-shadow:0 10px 26px rgba(38,51,46,.08); border:1px solid var(--sage-pale);}
.bundle-covers{position:relative; aspect-ratio:1/1; max-width:220px;}
.bundle-covers img{position:absolute; width:72%; height:auto; border-radius:10px; box-shadow:0 8px 20px rgba(38,51,46,.18);}
.bundle-covers img:first-child{left:0; top:0;}
.bundle-covers img:last-child{right:0; bottom:0;}
.bundle-text h3{margin:.2rem 0 .5rem; font-family:var(--font-head); color:var(--sage-dark); font-size:1.4rem;}
.bundle-text .eyebrow{margin:0;}
.bundle-price{display:flex; flex-wrap:wrap; gap:.4rem .7rem; align-items:baseline; margin:.4rem 0 1rem;}
.bundle-price strong{font-size:1.5rem; color:var(--sage-dark); font-family:var(--font-head);}
.bundle-price s{color:var(--muted);}
.bundle-price span{color:var(--muted); font-size:.9rem;}
@media (max-width:640px){.bundle-card{grid-template-columns:1fr; text-align:center;} .bundle-covers{margin:0 auto; width:70%;} .bundle-price{justify-content:center;}}

/* 10.70: icoon op de rand van de foto, niet onderaan de kaart */
.image-card .card-icon{position:relative; bottom:auto; left:auto; margin:-22px 0 0 1.2rem; z-index:1;}
.image-card .card-icon + h3{margin-top:.7rem;}

/* 10.75: foto op de overgangspagina kleiner */
.hero-photo.overgang-photo{max-width:340px; margin-inline:auto; padding-top:0; aspect-ratio:4/5; height:auto;}
@media (max-width: 900px){ .hero-photo.overgang-photo{max-width:170px;} }

/* 10.76: overgangspagina compacter en netjes uitgelijnd */
.transition{padding:clamp(1.8rem,4vw,3rem) 0;}
@media (max-width: 900px){
  .transition{padding:1.8rem 0 1.4rem;}
  .transition-grid{gap:1.2rem; text-align:center;}
  .transition-grid p{margin-inline:auto; max-width:34ch;}
}
.topic-grid .checklist div{background:#fff;}
.transition + .topic-section{padding-top:.4rem;}
/* 10.77: op de telefoon eerst de tekst, dan de foto (anders lijkt de titel een onderschrift) */
@media (max-width: 900px){
  .transition-grid .hero-photo.overgang-photo{order:0; margin-top:0;}
  .transition-grid > div > p:last-child{margin-bottom:0;}
  .transition-grid{gap:1.4rem;}
}

/* 10.78: belofte onder de intro op home */
.welcome-promise{list-style:none; margin:0 0 1.6rem; padding:0; display:grid; gap:.55rem; max-width:34em;}
.welcome-promise li{position:relative; padding-left:1.9rem; font-size:.98rem; line-height:1.55; color:var(--ink, #26332e);}
.welcome-promise li::before{content:"✓"; position:absolute; left:0; top:.15em; width:1.25rem; height:1.25rem; border-radius:50%; background:var(--sage-dark); color:#fff; font-size:.7rem; display:flex; align-items:center; justify-content:center;}
.welcome-promise strong{color:var(--sage-dark);}
@media (max-width: 900px){ .welcome-promise{margin-inline:auto; text-align:left; font-size:.95rem;} }

/* 10.80: portret bovenaan home, hele foto (uitgezoomd) */
.welcome-photo img.welcome-portret{height:auto; aspect-ratio:1089/1445; object-position:50% 50%;}
.welcome-photo:has(.welcome-portret){max-width:360px; margin-left:auto;}
@media (max-width:900px){
  .welcome-photo:has(.welcome-portret){max-width:200px; margin:0 auto;}
  .welcome-photo img.welcome-portret{height:auto;}
}
@media (max-width:560px){
  .welcome-photo:has(.welcome-portret){max-width:170px;}
  .welcome-photo img.welcome-portret{height:auto;}
}
@media (max-width:560px){ .welcome-photo:has(.welcome-portret) .welcome-badge{font-size:.72rem; padding:.3rem .7rem; left:50%; transform:translateX(-50%); white-space:nowrap;} }

/* 10.84 — gratis weggever op de homepage + twee hoofdprogramma's */
.freebie-band{background:var(--sage-pale); padding:clamp(2.4rem,5vw,3.6rem) 0;}
.freebie-grid{display:grid; grid-template-columns:1.6fr 1fr; gap:clamp(1.2rem,3vw,2.4rem); align-items:stretch;}
.freebie-main h2{font-size:clamp(1.7rem,3.4vw,2.4rem); color:var(--sage-dark); margin:.2rem 0 .6rem;}
.freebie-lead{color:var(--ink); max-width:34em; margin:0 0 1.1rem;}
.freebie-form{display:flex; flex-wrap:wrap; gap:.6rem; align-items:stretch;}
.freebie-form input{flex:1 1 180px; font:inherit; font-size:.98rem; padding:.8rem .95rem; border:1.6px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); min-width:0;}
.freebie-form input:focus{outline:none; border-color:var(--sage);}
.freebie-form .button{flex:0 0 auto; border:0; cursor:pointer;}
.freebie-small{font-size:.85rem; color:var(--muted); margin:.6rem 0 0;}
.freebie-check{display:flex; flex-direction:column; gap:.45rem; background:var(--sage-dark); color:#fff; border-radius:var(--radius); padding:1.6rem 1.6rem 1.5rem; text-decoration:none; transition:transform .25s ease;}
.freebie-check:hover,.freebie-check:focus-visible{transform:translateY(-4px);}
.freebie-check-label{font-size:.78rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#cfdcc6;}
.freebie-check-title{font-family:var(--font-head); font-size:1.45rem; line-height:1.2; color:#fff;}
.freebie-check-text{color:rgba(255,255,255,.85); font-size:.97rem;}
.freebie-check-cta{margin-top:auto; padding-top:.5rem; font-weight:700; color:#e7ecdf;}
.screen-reader-text{position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); white-space:nowrap;}
@media (max-width:860px){ .freebie-grid{grid-template-columns:1fr;} .freebie-form .button{width:100%;} }

.offer-featured{position:relative; display:grid; grid-template-columns:1fr 1fr; gap:1.4rem; max-width:1000px; margin:0 auto;}
.offer-card-big{flex-direction:row;}
.offer-card-big .offer-cover{flex:0 0 44%; aspect-ratio:auto; min-height:100%;}
.offer-card-big .offer-body{padding:1.5rem 1.4rem 1.5rem; gap:.55rem;}
.offer-card-big .offer-title{font-size:1.55rem;}
.offer-card-big .offer-text{display:block; font-size:.97rem;}
.offer-card-big .offer-cta .offer-cta-long{display:inline;}
.offer-more-title{position:relative; text-align:center; color:#fff; font-size:1.25rem; font-weight:600; margin:3rem 0 1.3rem;}
.offer-grid-more > .offer-card{flex-basis:calc((100% - 5*1.1rem)/6);}
.offer-grid-more .offer-title{font-size:1.02rem;}
.offer-grid-more .offer-text{display:none;}
.offer-grid-more .offer-cta .offer-cta-long{display:none;}
@media (max-width:1060px){ .offer-grid-more > .offer-card{flex-basis:calc((100% - 2*1.1rem)/3);} }
@media (max-width:860px){ .offer-featured{grid-template-columns:1fr;} }
@media (max-width:700px){
  .offer-grid-more > .offer-card{flex-basis:calc((100% - .8rem)/2);}
  .offer-card-big{flex-direction:column;}
  .offer-card-big .offer-cover{aspect-ratio:1/1; flex:none; min-height:0;}
  .offer-card-big .offer-text{display:block; font-size:.93rem;}
  .offer-card-big .offer-title{font-size:1.3rem;}
  .offer-card-big .offer-meta{font-size:.74rem;}
}

/* 10.86 — Lounge apart onder de programma's */
.offer-lounge{position:relative; max-width:1000px; margin:3rem auto 0; padding-top:2.4rem; border-top:1px solid rgba(255,255,255,.18);}
.offer-card-lounge{background:#f3efe4;}
.offer-card-lounge .offer-cover{flex:0 0 32%;}
@media (max-width:700px){ .offer-card-lounge .offer-cover{flex:none;} }

/* 10.88 — slaaptest */
.freebie-actions{margin:.2rem 0 0;}
.slaaptest-hero h1{margin-bottom:.6rem;}
.slaaptest-zin{font-family:var(--font-head); font-size:1.3rem; color:var(--sage-dark); font-style:italic; margin:.4rem 0;}
.slaaptest-wanneer{color:var(--muted); margin:.3rem 0 0;}
.slaaptest-form{position:relative; background:#fff; border-radius:var(--radius); padding:clamp(1.3rem,4vw,2.2rem); box-shadow:0 12px 28px rgba(38,51,46,.08);}
.slaaptest-voortgang{display:none; align-items:center; gap:.9rem; font-size:.85rem; font-weight:700; color:var(--sage-text); margin:0 0 1.2rem;}
.slaaptest-form.js .slaaptest-voortgang{display:flex;}
.slaaptest-balk{flex:1; height:6px; border-radius:99px; background:var(--sage-pale); overflow:hidden;}
.slaaptest-balk span{display:block; height:100%; width:0; background:var(--sage-dark); transition:width .3s ease;}
.slaaptest-stap-vraag{border:0; margin:0 0 2rem; padding:0; min-width:0;}
.slaaptest-form.js .slaaptest-stap-vraag{margin:0;}
.slaaptest-stap-vraag legend{font-family:var(--font-head); font-size:clamp(1.25rem,3vw,1.6rem); color:var(--sage-dark); line-height:1.25; margin-bottom:1rem; padding:0;}
.slaaptest-nr{color:var(--sage);}
.slaaptest-hint{color:var(--muted); font-size:.92rem; margin:-.4rem 0 .9rem;}
.slaaptest-opties{display:flex; flex-direction:column; gap:.6rem;}
.slaaptest-optie{display:flex; align-items:flex-start; gap:.75rem; padding:.85rem 1rem; border:1.6px solid var(--line); border-radius:12px; background:var(--paper); cursor:pointer; transition:border-color .15s ease, background .15s ease; font-size:1rem; line-height:1.45;}
.slaaptest-optie:hover{border-color:var(--sage);}
.slaaptest-optie input{margin-top:.25rem; accent-color:var(--sage-dark); flex:none; width:1.05rem; height:1.05rem;}
.slaaptest-optie:has(input:checked){border-color:var(--sage-dark); background:var(--sage-pale);}
.slaaptest-leeg .slaaptest-opties::after{content:"Kies een antwoord om verder te gaan."; color:#a85d38; font-size:.9rem; font-weight:600;}
.slaaptest-laatste.slaaptest-leeg legend::after{content:" Vul je voornaam en e-mail in."; display:block; color:#a85d38; font-family:var(--font-body); font-size:.9rem; font-weight:600; margin-top:.4rem;}
.slaaptest-nav{display:none; justify-content:space-between; align-items:center; gap:1rem; margin-top:1.3rem;}
.slaaptest-form.js .slaaptest-nav{display:flex;}
.slaaptest-form:not(.js) .slaaptest-laatste .slaaptest-nav{display:flex;}
.slaaptest-form:not(.js) .slaaptest-terug{visibility:hidden;}
.slaaptest-nav .button{border:0; cursor:pointer; margin-left:auto;}
.slaaptest-terug{background:none; border:0; color:var(--sage-text); font:inherit; font-weight:600; cursor:pointer; padding:.4rem 0;}
.slaaptest-laatste label{display:block; font-weight:600; font-size:.9rem; color:var(--sage-dark); margin-top:.8rem;}
.slaaptest-laatste input{width:100%; font:inherit; font-size:1rem; padding:.8rem .95rem; border:1.6px solid var(--line); border-radius:10px; background:var(--cream); color:var(--ink); margin-top:.3rem;}
.slaaptest-uitslag .content-narrow{display:flex; flex-direction:column; gap:1.2rem;}
.slaaptest-blok h2{font-size:1.25rem; color:var(--sage-dark); margin:0 0 .35rem;}
.slaaptest-blok p{margin:0;}
.slaaptest-veilig{background:#fbeee6; border:1.6px solid #e3b49a; border-radius:14px; padding:1.1rem 1.25rem;}
.slaaptest-veilig strong{color:#8a4524; font-size:1.05rem;}
.slaaptest-veilig p{margin:.5rem 0 0;}
.slaaptest-lang{background:var(--sage-pale); border-radius:14px; padding:1rem 1.2rem;}
.slaaptest-lang p{margin:0;}
.slaaptest-stap{background:var(--sage-dark); color:#fff; border-radius:var(--radius); padding:1.5rem 1.5rem 1.6rem;}
.slaaptest-stap .eyebrow{color:#cfdcc6; margin:0 0 .4rem;}
.slaaptest-stap-tekst{font-family:var(--font-head); font-size:1.25rem; line-height:1.35; margin:0 0 1.1rem;}
.slaaptest-stap .button.primary{background:#fff; color:var(--sage-dark);}
.slaaptest-ook{margin:0;}
.slaaptest-klein{font-size:.88rem; color:var(--muted); margin:0;}

/* 10.91 — primaire actie met inhoud en prijs */
.hero-cta{margin-top:1.4rem;}
.cta-meta{margin-top:.75rem; text-align:center;}
.cta-meta p{margin:0; font-size:.93rem; line-height:1.5;}
.cta-meta-inhoud{color:var(--ink);}
.cta-meta-prijs{color:var(--muted); margin-top:.2rem !important;}
.cta-meta-prijs strong{color:var(--sage-dark);}
/* 10.95 — langere kop op de homepage iets kleiner */
.welcome-copy h1#welkom-titel{font-size:clamp(2rem,3.6vw,3rem); line-height:1.12;}
.welcome-copy h1#welkom-titel .script{display:inline-block; margin-top:.35rem; font-size:.92em;}

/* 10.96 — introductietekst homepage */
.welcome-text{max-width:34em; margin:0 0 1.5rem;}
.welcome-text p{margin:0 0 .7rem; font-size:1rem; line-height:1.6; color:var(--ink);}
.welcome-text .welcome-motto{font-weight:700; color:var(--sage-dark); margin-top:.9rem;}
@media (max-width:900px){ .welcome-text{margin-inline:auto;} }

/* 10.97 Overgangscheck */
.oc-balken{display:grid;gap:1.1rem;margin-top:.6rem}
.oc-balk-kop{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;margin-bottom:.35rem}
.oc-balk-kop span{font-size:.92rem;color:#56704e;font-weight:600}
.oc-balk-baan{height:12px;border-radius:99px;background:#e7ecdf;overflow:hidden}
.oc-balk-baan span{display:block;height:100%;border-radius:99px;background:#a9bd9f}
.oc-niveau-2 .oc-balk-baan span{background:#7c9473}
.oc-niveau-3 .oc-balk-baan span{background:#3c5940}
.oc-balk-sub{font-size:.88rem;color:#5c6a62;margin:.35rem 0 0}
.oc-zwaar{margin-top:1.1rem}
.oc-schaal .slaaptest-opties{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem}
.oc-schaal .slaaptest-optie{flex-direction:column;align-items:center;text-align:center;gap:.35rem;padding:.75rem .4rem}
.oc-schaal .slaaptest-optie input{margin-top:0}
@media (max-width:560px){.oc-schaal .slaaptest-opties{grid-template-columns:1fr}.oc-schaal .slaaptest-optie{flex-direction:row;text-align:left;padding:.85rem 1rem}}
.slaaptest-uitslag .slaaptest-blok p + p{margin-top:.7rem}
.oc-zwaar{margin-top:1.4rem!important}

/* 10.98 bundels */
.bundel-sectie .bundle-card{margin:1rem 0 1.4rem}

/* Artikelen (11.9) */
.artikel-meta{font-size:.95rem; color:var(--muted); margin-top:.8rem;}
.artikel-meta a{color:var(--sage-dark);}
.kort-antwoord{background:var(--sage-pale); border-left:4px solid var(--sage); border-radius:12px; padding:1.1rem 1.3rem; font-size:1.05rem; margin:0 0 1.8rem;}
.artikel .content-narrow ul{padding-left:1.2rem;}
.artikel .content-narrow li{margin:.35rem 0;}
.artikel-cta{margin:2.2rem 0 1.2rem;}
.artikel-disclaimer{font-size:.88rem; color:var(--muted); border-top:1px solid var(--line); padding-top:1rem; margin-top:1.4rem;}
.artikel-lijst{list-style:none; padding:0 !important;}
.artikel-lijst li{border-bottom:1px solid var(--line); padding:.6rem 0 !important; margin:0 !important;}
.artikel-lijst a{color:var(--sage-dark); text-decoration:none; font-weight:600;}
.artikel-overzicht{display:grid; gap:1.2rem; margin-top:1rem;}
.artikel-overzicht article{background:#fff; border-radius:14px; padding:1.4rem 1.5rem; box-shadow:0 8px 20px rgba(38,51,46,.06);}
.artikel-overzicht h2{font-size:1.3rem; margin:0 0 .5rem !important;}
.artikel-overzicht h2 a{color:var(--ink); text-decoration:none;}
.artikel-overzicht p{margin:0 0 .7rem; color:var(--muted);}
.artikel-lees{color:var(--sage-dark); font-weight:600; text-decoration:none;}

/* 12.1 — homepage verkoopgerichter */
.welcome-free{margin:.6rem 0 0; font-size:.95rem; color:var(--muted);}
.welcome-free a{color:var(--sage-dark); font-weight:700; text-underline-offset:4px;}
.pillars-grid.pillars-3{grid-template-columns:repeat(3,1fr); gap:2rem;}
.promise-motto{text-align:center; margin:1.8rem 0 0; font-weight:700; color:var(--sage-dark); font-size:1.02rem;}
@media (max-width:900px){ .pillars-grid.pillars-3{grid-template-columns:1fr; max-width:30em; margin-inline:auto;} }
