:root{
  --liv-brand-primary:#75c053;
  --liv-brand-secondary:#1f3524;
  --liv-accent:#92d46f;
  --liv-bg:#f5f8f2;
  --liv-text-dark:#1e241e;
  --liv-text-light:#ffffff;
  --radius-sm:8px;
  --radius-lg:16px;
  --radius-xl:22px;
  --shadow-sm:0 6px 18px rgba(0,0,0,0.06);
  --shadow-lg:0 24px 60px rgba(0,0,0,0.14);
  --shadow-soft:0 30px 120px rgba(31,53,36,0.12);
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
  --space-6:24px;
  --space-7:28px;
  --space-8:32px;
  --space-10:40px;
  --space-12:48px;
  --space-16:64px;
  color-scheme: light;
}
*,
*::before,
*::after{
  box-sizing:border-box;
}
table,img,svg,video,iframe,embed,object{
  max-width:100%;
  height:auto;
}
input,select,textarea,button{
  max-width:100%;
}
html{
  width:100%;
  overflow-x:hidden;
  max-width:100%;
}
body{
  margin:0;
  padding:0;
  font-family:"Inter",system-ui,-apple-system,sans-serif;
  background:radial-gradient(circle at 20% 20%, rgba(146,212,111,0.08), transparent 32%), radial-gradient(circle at 80% 10%, rgba(117,192,83,0.06), transparent 30%), var(--liv-bg);
  color:var(--liv-text-dark);
  line-height:1.6;
  width:100%;
  max-width:100%;
  position:relative;
  overflow-x:hidden;
}
h1,h2,h3,h4{
  font-family:"Poppins","Inter",sans-serif;
  margin:0 0 var(--space-3);
  letter-spacing:-0.015em;
}
h1{font-size:clamp(2.4rem,4vw,3.2rem);}
h2{font-size:clamp(1.8rem,2.8vw,2.4rem);}
h3{font-size:clamp(1.35rem,2vw,1.55rem);}
p{margin:0 0 var(--space-4);}
a{color:inherit;text-decoration:none;}
img{
  max-width:100%;
  height:auto;
  display:block;
  width:100%;
  box-sizing:border-box;
}
ul{padding-left:20px;margin:0;}

.skip-link{
  position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden;
}
.skip-link:focus{
  position:fixed;left:var(--space-4);top:var(--space-4);width:auto;height:auto;z-index:999;background:var(--liv-text-light);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);
}
.sr-only{
  position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden;
}

.site-header{
  position:sticky;top:0;z-index:900;background:rgba(237,243,232,0.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,0.06);
}
@media (max-width:1024px){
  .nav-open .site-header{
    z-index:99998!important;
  }
}
.header-inner{
  max-width:1200px;margin:0 auto;
  padding:var(--space-3) var(--space-5);
  display:flex;align-items:center;
  justify-content:space-between;gap:var(--space-4);
  width:100%;
  box-sizing:border-box;
  padding-left:var(--space-5);
  padding-right:var(--space-5);
}
.brand{display:flex;align-items:center;gap:var(--space-3);}
.brand a{display:flex;align-items:center;gap:var(--space-3);color:inherit;text-decoration:none;}
.site-header .brand-logo{
  width:118px;max-width:100%;
  height:auto;object-fit:contain;
  filter:invert(1) brightness(0.1);
}
.brand-text{font-weight:700;letter-spacing:0.4px;}
.nav{position:relative;}
.nav-list{display:flex;align-items:center;gap:var(--space-4);list-style:none;margin:0;padding:0;}
.nav-list a{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-weight:600;transition:background .2s ease,color .2s ease;}
.nav-list a:hover,.nav-list a:focus-visible{background:rgba(117,192,83,0.12);color:var(--liv-brand-secondary);}
.nav-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(0,0,0,0.1);background:var(--liv-text-light);border-radius:var(--radius-sm);}
.nav-close-wrapper{display:none;}
.burger,
.burger::before,
.burger::after{
  display:block;
  position:relative;
  width:22px;
  height:2px;
  background:var(--liv-text-dark);
  transition:transform .3s ease,opacity .3s ease,background .3s ease;
}
.burger::before,.burger::after{
  content:"";
  position:absolute;
  left:0;
}
.burger::before{top:-6px;}
.burger::after{top:6px;}
.nav-open .burger{
  transform:rotate(45deg);
  background:#fff;
}
.nav-open .burger::before{
  transform:translateY(6px) rotate(90deg);
  background:#fff;
}
.nav-open .burger::after{
  opacity:0;
}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 18px;border-radius:var(--radius-lg);font-weight:700;
  border:1px solid transparent;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease;
}
.nav-list .btn.primary.small{
  padding:10px 16px;
  min-width:120px;
  text-align:center;
  white-space:nowrap;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.nav-list .btn.primary.small:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-lg);
}
.btn.primary{background:var(--liv-brand-primary);color:var(--liv-text-light);box-shadow:var(--shadow-sm);}
.btn.primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);}
.btn.ghost{background:transparent;border-color:rgba(255,255,255,0.6);color:var(--liv-text-light);}
.btn.text{padding:8px 0;font-weight:600;color:var(--liv-brand-secondary);}
.btn.small{padding:10px 14px;}
.btn.full{width:100%;}

.hero{
  position:relative;min-height:70vh;color:var(--liv-text-light);display:flex;align-items:center;overflow:hidden;
}
.hero.hero-simple{
  min-height:40vh;background:linear-gradient(135deg,var(--liv-brand-secondary),rgba(31,53,36,0.95));
  color:var(--liv-text-light);
}
.hero-bg{position:absolute;inset:0;background-image:var(--hero-image);background-size:cover;background-position:center;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(120deg,rgba(31,53,36,0.9),rgba(31,53,36,0.5));}
.hero-content{position:relative;max-width:760px;margin:0 auto;padding:120px 24px;text-align:center;}
.hero.hero-simple .hero-content{padding:80px 24px;}
.hero .eyebrow{color:#ffffff;}
.hero .lede{font-size:1.1rem;color:rgba(255,255,255,0.9);}
.hero-text-white{color:#fff!important;}
.hero-actions{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-6);flex-wrap:wrap;}
.scroll-indicator{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);}
.scroll-indicator .dot{display:block;width:10px;height:10px;border-radius:50%;background:var(--liv-text-light);animation:pulse 2s infinite;}

.layout{
  max-width:1200px;margin:0 auto;
  padding:var(--space-10) var(--space-5);
  display:grid;gap:var(--space-8);
  width:100%;
  box-sizing:border-box;
  padding-left:var(--space-5);
  padding-right:var(--space-5);
}

.section{
  background:rgba(255,255,255,0.96);
  border-radius:24px;
  padding:var(--space-8);
  box-shadow:var(--shadow-soft);
  border:1px solid rgba(31,53,36,0.05);
  text-align:left;
  width:100%;
  box-sizing:border-box;
  overflow-wrap:break-word;
}
.section.bg-soft{
  background:linear-gradient(180deg, rgba(117,192,83,0.05), rgba(146,212,111,0.02));
  border-color:rgba(117,192,83,0.1);
}
.section.bg-soft .contact-card,.section.bg-soft .form-card{
  background:rgba(255,255,255,0.98);
  box-shadow:0 4px 20px rgba(0,0,0,0.08);
}
.section-header{
  max-width:720px;margin-bottom:var(--space-6);
  text-align:left!important;
}
.process .section-header{
  margin-bottom:var(--space-4);
}
.welcome{
  background:#FFFFFF;
  border:1px solid rgba(31,53,36,0.05);
  padding:50px 0;
}
.welcome .section-header{
  max-width:900px;
  margin:0 auto;
  text-align:center;
}
.welcome .section-header p.body:first-of-type{
  margin-bottom:25px;
}
.welcome .section-header p.body{
  line-height:1.7;
  text-align:left;
}
.section-header h1,.section-header h2,.section-header h3{
  text-align:left!important;
}
.section-header .eyebrow{margin-bottom:var(--space-3);}
.section-header h2{margin-top:var(--space-2);}
.section-header p{
  text-align:left!important;
}
.section-content{
  max-width:900px;margin:0 auto;
  text-align:left!important;
}
.section-content h1,.section-content h2,.section-content h3,.section-content h4{
  text-align:left!important;
}
.section-content h2{margin-top:var(--space-8);margin-bottom:var(--space-4);}
.section-content h3{margin-top:var(--space-6);margin-bottom:var(--space-3);}
.section-content ul,.section-content ol{
  margin-bottom:var(--space-4);
  text-align:left!important;
}
.section-content li{
  margin-bottom:var(--space-2);
  text-align:left!important;
}
.section-content p{
  text-align:left!important;
}
.section-content strong,.section-content em{
  text-align:left!important;
}

/* ============================================
   DOCUMENT PAGES - Links uitlijning voor alle schermformaten
   ============================================ */
.document-page{
  text-align:left!important;
}
.document-page .section-header{
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
}
.document-page .section-content{
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
}
.document-page .section-header h1,
.document-page .section-header h2,
.document-page .section-header h3,
.document-page .section-content h1,
.document-page .section-content h2,
.document-page .section-content h3,
.document-page .section-content h4,
.document-page .section-header p,
.document-page .section-content p,
.document-page p,
.document-page h1,
.document-page h2,
.document-page h3,
.document-page h4,
.document-page h5,
.document-page h6{
  text-align:left!important;
  margin-left:0!important;
  margin-right:0!important;
}
.document-page .section-content ul,
.document-page .section-content ol,
.document-page ul,
.document-page ol{
  text-align:left!important;
  margin-left:0!important;
  padding-left:20px!important;
  list-style-position:outside!important;
}
.document-page .section-content ul li,
.document-page .section-content ol li,
.document-page ul li,
.document-page ol li{
  text-align:left!important;
  margin-left:0!important;
}
.document-page .section-content strong,
.document-page .section-content em,
.document-page strong,
.document-page em{
  text-align:left!important;
}
.document-page a{
  text-align:left!important;
}
.eyebrow{text-transform:uppercase;letter-spacing:1px;font-weight:700;color:var(--liv-brand-secondary);margin-bottom:var(--space-2);}
.body{color:#3f4a3f;}
.pillars{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));
  gap:var(--space-4);
  width:100%;
  align-items:stretch;
  min-width:0;
}
.card{
  padding:var(--space-5);
  border:1px solid rgba(0,0,0,0.05);
  border-radius:24px;
  box-shadow:var(--shadow-sm);
  background:linear-gradient(180deg,rgba(255,255,255,0.95),rgba(255,255,255,0.9));
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
  display:flex;
  flex-direction:column;
  height:100%;
  min-width:0;
  overflow-wrap:break-word;
  word-wrap:break-word;
}
.card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-lg);
  border-color:rgba(117,192,83,0.25);
}
.card.accent{background:linear-gradient(160deg,rgba(117,192,83,0.12),#fff);}
.card.mini{padding:var(--space-4);}
/* Testimonials: duw naam naar onderkant van card */
.pillars .card p:last-child{
  margin-top:auto;
  padding-top:var(--space-4);
}

/* Welcome Section - Core Values */
.core-values-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));
  gap:var(--space-6);margin-top:var(--space-8);
  width:100%;
  min-width:0;
}
.core-value-card{
  background:rgba(255,255,255,0.9);
  padding:var(--space-6);border-radius:24px;
  border:1px solid rgba(117,192,83,0.15);
  text-align:center;
  transition:transform .3s ease,box-shadow .3s ease;
}
.core-value-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-lg);
}
.core-value-icon{
  font-size:3.5rem;margin-bottom:var(--space-4);
  display:block;
}
.core-value-card h3{
  margin-bottom:var(--space-3);
  color:var(--liv-brand-secondary);
}
.core-value-card p{
  color:#3f4a3f;line-height:1.7;margin:0;
}

/* About Section - Mission Quote */
.mission-quote{
  max-width:900px;margin:0 auto var(--space-8);
  text-align:center;
  width:100%;
  box-sizing:border-box;
}
.mission-text{
  font-size:clamp(1.25rem,2.5vw,1.75rem);
  line-height:1.6;color:var(--liv-brand-secondary);
  font-style:italic;font-weight:500;
  padding:var(--space-6) var(--space-8);
  position:relative;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.mission-text::before,.mission-text::after{
  content:'"';font-size:3em;line-height:0;
  color:var(--liv-brand-primary);opacity:0.3;
  position:absolute;
}
.mission-text::before{left:0;top:var(--space-4);}
.mission-text::after{right:0;bottom:var(--space-4);}

/* About Grid */
.about-grid{
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:var(--space-6);max-width:900px;margin:0 auto;
  width:100%;
  box-sizing:border-box;
}
.about-card{
  background:rgba(255,255,255,0.8);
  padding:var(--space-6);border-radius:20px;
  border:1px solid rgba(117,192,83,0.15);
}
.about-card h3{margin-bottom:var(--space-4);}
.core-values-list{
  list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;gap:var(--space-3);
}
.core-values-list li{
  padding-left:var(--space-6);position:relative;
  color:#3f4a3f;
}
.core-values-list li::before{
  content:"✓";position:absolute;left:0;
  color:var(--liv-brand-primary);font-weight:700;
}

.about{
  background:#F0F7F0;
  border:1px solid rgba(117,192,83,0.1);
  padding:80px 0;
}
.about .section-header{
  max-width:900px;
  margin:0 auto 20px;
  text-align:center;
}
.about .section-header h2{
  color:#000000;
  font-size:clamp(1.8rem,2.8vw,2.2rem);
  font-weight:700;
  margin-bottom:20px;
  white-space:nowrap;
}
.about-content{
  max-width:800px;
  margin:0 auto;
  padding:30px;
  background:rgba(255,255,255,0.9);
  border-radius:20px;
  box-shadow:0 4px 20px rgba(31,53,36,0.08);
}
.about-content p:first-child{
  margin-top:0;
}
.about-content p{
  line-height:1.8;
  margin-bottom:var(--space-5);
  color:var(--liv-text-dark);
  font-size:1.05rem;
}

/* Features Grid (Why Us) */
.features-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:var(--space-6);max-width:1200px;margin:0 auto;
  width:100%;
  box-sizing:border-box;
  min-width:0;
}
.feature-item{
  min-width:0;
  overflow-wrap:break-word;
  word-wrap:break-word;
}
.feature-item{
  text-align:center;padding:var(--space-6);
  background:#fff;border-radius:24px;
  border:1px solid rgba(117,192,83,0.2);
  box-shadow:var(--shadow-sm);
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease;
}
.feature-item:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-lg);
  border-color:var(--liv-brand-primary);
  background:linear-gradient(180deg, rgba(117,192,83,0.05), #fff);
}
.feature-icon{
  font-size:3rem;margin-bottom:var(--space-4);
  display:block;
}
.feature-item h3{
  margin-bottom:var(--space-3);font-size:1.2rem;
  color:var(--liv-brand-secondary);
}
.feature-item p{
  color:#3f4a3f;line-height:1.7;margin:0;
}

/* Team Layout */
.team-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.team-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-8);
  align-items:start;
  margin-top:var(--space-6);
}
.team-image{
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--shadow-lg);
  width:100%;
  height:100%;
  align-self:stretch;
}
.team-image img{
  width:100%;
  height:100%;
  min-height:400px;
  object-fit:cover;
  display:block;
}
.team-values{
  list-style:none;padding:0;margin:var(--space-6) 0 0;
  display:flex;flex-direction:column;gap:var(--space-5);
}
.team-values li{
  display:flex;gap:var(--space-4);align-items:flex-start;
}
.check-icon{
  flex-shrink:0;
  width:32px;
  height:32px;
  border-radius:50%;
  background:var(--liv-brand-primary);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  font-size:1.1rem;
  margin-top:2px;
  transform:translateY(0);
}
.team-values strong{
  display:block;margin-bottom:var(--space-1);
  color:var(--liv-brand-secondary);
}
.team-values p{
  margin:0;color:#3f4a3f;line-height:1.6;
}
.team-special{
  margin-top:var(--space-3);
}
.team-special h3{
  margin-bottom:var(--space-5);
  color:var(--liv-brand-secondary);
}
.team-roles{
  margin-top:var(--space-6);
  padding-top:var(--space-6);
  border-top:1px solid rgba(0,0,0,0.08);
}
.team-roles h3{
  margin-bottom:var(--space-3);
  color:var(--liv-brand-secondary);
}
.team-roles p{
  color:#3f4a3f;line-height:1.7;
}
.roles-list{
  list-style:none;padding:0;margin:var(--space-4) 0 0;
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:var(--space-3);
}
.roles-list li{
  padding:var(--space-3) var(--space-4);
  background:rgba(117,192,83,0.08);
  border-radius:12px;
  color:var(--liv-brand-secondary);
  font-weight:500;
  position:relative;
  padding-left:var(--space-8);
}
.roles-list li::before{
  content:"✓";position:absolute;left:var(--space-4);
  color:var(--liv-brand-primary);font-weight:700;
}
.icon-circle{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(129,201,76,0.15);color:var(--liv-brand-secondary);font-weight:700;}
.icon-circle.sm{width:36px;height:36px;font-size:14px;}
.feather{font-size:18px;}

.services-container{
  width:100%;
  max-width:1200px;
  margin:0 auto;
}
.service-section{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-8);
  align-items:center;
  margin-bottom:var(--space-8);
  padding:var(--space-8);
  border-radius:24px;
}
.service-section:nth-child(even){
  background:linear-gradient(180deg, rgba(117,192,83,0.05), rgba(146,212,111,0.02));
}
.service-section:nth-child(odd){
  background:#FFFFFF;
  box-shadow:var(--shadow-sm);
  border:1px solid rgba(31,53,36,0.05);
}
.service-section:nth-child(even) .service-content{
  order:1;
}
.service-section:nth-child(even) .service-image{
  order:2;
}
.service-image{
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--shadow-lg);
}
.service-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  min-height:300px;
}
.service-content{
  max-width:500px;
  padding:var(--space-4);
}
.service-content h3{
  margin-bottom:var(--space-3);
  color:var(--liv-brand-secondary);
}
.service-intro{
  font-weight:600;color:var(--liv-brand-secondary);
  margin-bottom:var(--space-3);font-size:1.05rem;
}
.service-description{
  margin-bottom:var(--space-4);color:#3f4a3f;line-height:1.7;
}
.service-features{
  list-style:none;padding:0;margin:0 0 var(--space-5);
  display:flex;flex-direction:column;gap:var(--space-2);
}
.service-features li{
  padding-left:var(--space-6);position:relative;
  color:#3f4a3f;line-height:1.6;
  display:flex;
  align-items:center;
}
.service-features li::before{
  content:"✓";position:absolute;left:0;
  color:var(--liv-brand-primary);font-weight:700;font-size:1.2em;
}
.service-content .btn{margin-top:var(--space-4);align-self:flex-start;}

@media (max-width:1024px){
  .service-section{
    grid-template-columns:1fr;
    gap:var(--space-6);
    text-align:center;
  }
  .service-section:nth-child(even) .service-content,
  .service-section:nth-child(even) .service-image{
    order:unset;
  }
  .service-content{
    max-width:100%;
    padding:0;
  }
}

.split{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);align-items:center;}
.media img{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);}
.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4);margin-top:var(--space-5);}

.steps{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-4);}
.step{
  padding:var(--space-5);
  border-radius:var(--radius-lg);
  border:1px solid rgba(0,0,0,0.06);
  background:#fff;
  box-shadow:var(--shadow-sm);
  max-width:100%;
  margin:0 auto;
}
.step-head{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:var(--space-4);
}
.step-head h3{
  margin:0;
  display:flex;
  align-items:center;
  min-height:40px;
}
.step-number{
  width:40px;
  height:40px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--liv-brand-primary);
  color:#fff;
  font-weight:700;
  font-size:1.1rem;
  flex-shrink:0;
}
.step-content{
  margin-top:var(--space-2);
  padding-top:var(--space-2);
}
.step-content p{
  margin:0;
  line-height:1.7;
  color:#3f4a3f;
  padding-left:calc(40px + var(--space-4));
}
.info-box{margin-top:var(--space-5);padding:var(--space-5);border-radius:var(--radius-lg);background:linear-gradient(120deg,rgba(129,201,76,0.12),#fff);border:1px solid rgba(0,0,0,0.06);}

.downloads-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);}

.contact-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:var(--space-6);align-items:start;
  margin-bottom:var(--space-6);
  min-width:0;
}
.contact-info-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:var(--space-6);align-items:start;
}
.contact-card,.form-card{
  padding:var(--space-6);border-radius:20px;
  border:1px solid rgba(0,0,0,0.06);
  box-shadow:var(--shadow-sm);background:#fff;
}
.map-wrap{
  border-radius:20px;overflow:hidden;
  box-shadow:var(--shadow-sm);
  max-height:400px;margin-top:var(--space-6);
}
.map-wrap iframe{
  width:100%;height:400px;border:0;display:block;
}
.social{display:flex;gap:10px;flex-wrap:wrap;margin-top:var(--space-4);}
.social a{
  display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:50%;
  background:rgba(117,192,83,0.1);
  color:var(--liv-brand-secondary);
  transition:background .2s ease,transform .2s ease;
}
.social a:hover{
  background:var(--liv-brand-primary);
  color:#fff;transform:translateY(-2px);
}
.social a svg{width:20px;height:20px;}
.form .field{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--space-5);}
.form label{
  font-weight:600;color:var(--liv-brand-secondary);
  font-size:0.95rem;
}
.form input,.form textarea{
  padding:14px 16px;border-radius:12px;
  border:none;border-bottom:2px solid rgba(0,0,0,0.1);
  background:#f9f9f9;font:inherit;
  transition:all .2s ease;
}
.form input:focus,.form textarea:focus{
  outline:none;border-bottom-color:var(--liv-brand-primary);
  background:#fff;box-shadow:0 2px 8px rgba(117,192,83,0.1);
}
.form textarea{resize:vertical;min-height:120px;}

/* Signup Form Styles */
.form-wrapper{
  max-width:800px;margin:0 auto;
}
.signup-form .field{
  margin-bottom:var(--space-6);
}
.checkbox-group{
  display:flex;flex-direction:column;
  gap:var(--space-3);margin-top:var(--space-2);
}
.checkbox-label{
  display:flex;align-items:center;gap:var(--space-3);
  cursor:pointer;padding:var(--space-3);
  border-radius:12px;transition:background .2s ease;
}
.checkbox-label:hover{
  background:rgba(117,192,83,0.05);
}
.checkbox-label input[type="checkbox"]{
  width:20px;height:20px;
  cursor:pointer;accent-color:var(--liv-brand-primary);
}
.checkbox-label span{
  color:#3f4a3f;font-weight:500;
}
.disclaimer-text{
  color:#666;font-style:italic;
  margin-bottom:var(--space-5);
  padding:var(--space-3);
  background:rgba(117,192,83,0.08);
  border-radius:12px;
}
.small{font-size:0.9rem;color:#4a4f46;}
.map-wrap{margin-top:var(--space-4);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);}
.map-wrap iframe{width:100%;height:260px;border:0;}

.site-footer{
  background:var(--liv-brand-secondary);
  color:var(--liv-text-light);
  padding:var(--space-10) var(--space-5) var(--space-5);
  margin-top:var(--space-10);
}
.footer-grid{
  max-width:1200px;margin:0 auto;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:var(--space-6);
  width:100%;
  box-sizing:border-box;
}
.footer-nav{
  list-style:none;padding:0;margin:0;
  display:grid;gap:var(--space-2);
}
.footer-nav a{
  color:rgba(255,255,255,0.8);
  transition:color .2s ease;
}
.footer-nav a:hover{
  color:#fff;
}
.footer-meta{
  max-width:1200px;margin:var(--space-5) auto 0;
  display:flex;align-items:center;
  justify-content:space-between;gap:var(--space-3);
  font-size:0.95rem;color:rgba(255,255,255,0.7);
  padding-top:var(--space-5);
  border-top:1px solid rgba(255,255,255,0.1);
  width:100%;
  box-sizing:border-box;
  flex-wrap:wrap;
}
.badges{
  display:flex;align-items:center;
  gap:var(--space-4);margin-top:var(--space-4);
}
.badges{
  flex-wrap:wrap;
  width:100%;
}
.badges img{
  width:118px;height:auto;
  max-width:100%;
  object-fit:contain;filter:brightness(0) invert(1);
  opacity:0.9;
}
.back-to-top{
  color:var(--liv-text-light);
  transition:opacity .2s ease;
}
.back-to-top:hover{opacity:0.8;}
.site-footer .brand{
  margin-left:-4px;
}
@media (max-width:1024px){
  .about .section-header h2{
    white-space:normal;
  }
}
@media (max-width:768px){
  .service-section{
    grid-template-columns:1fr;
    gap:var(--space-6);
    text-align:center;
    padding:var(--space-6);
  }
  .service-section:nth-child(even) .service-content,
  .service-section:nth-child(even) .service-image{
    order:unset;
  }
  .service-content{
    max-width:100%;
    padding:0;
  }
  .about{
    padding:var(--space-6) 0;
  }
  .about-content{
    padding:var(--space-4);
  }
  .about .section-header h2{
    white-space:normal;
  }
  .welcome{
    padding:var(--space-6) 0;
  }
  .site-footer .brand{
    margin-left:0;
  }
}
.site-footer .brand-logo{
  filter:brightness(0) invert(1);
  image-rendering:-webkit-optimize-contrast;
  image-rendering:crisp-edges;
  image-rendering:high-quality;
  width:118px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
.site-footer .body{color:rgba(255,255,255,0.8);}
.site-footer h3{color:#fff;margin-bottom:var(--space-3);}
.site-footer a{color:rgba(255,255,255,0.9);}
.site-footer a:hover{color:#fff;}
.social{
  display:flex;gap:10px;flex-wrap:wrap;
  margin-top:var(--space-4);
}
.social a{
  display:inline-flex;align-items:center;
  justify-content:center;width:40px;height:40px;
  border-radius:50%;background:rgba(255,255,255,0.1);
  color:#fff;font-weight:600;
  transition:background .2s ease,transform .2s ease;
}
.social a:hover{
  background:rgba(255,255,255,0.2);
  transform:translateY(-2px);
}

.floating-top{
  position:fixed;right:24px;bottom:100px;
  width:50px;height:50px;border-radius:50%;
  border:none;background:var(--liv-brand-primary);
  color:#fff;font-weight:700;font-size:1.2rem;
  cursor:pointer;box-shadow:0 4px 12px rgba(117,192,83,0.4);
  opacity:0;pointer-events:none;
  transform:translateY(12px) scale(0.9);
  transition:opacity .3s ease,transform .3s ease;
  z-index:800;display:flex;align-items:center;
  justify-content:center;
  max-width:calc(100vw - 48px);
}
.floating-top:hover{
  background:var(--liv-brand-secondary);
  transform:translateY(0) scale(1.05);
  box-shadow:0 6px 20px rgba(31,53,36,0.3);
}
.floating-top.show{
  opacity:1;pointer-events:auto;
  transform:translateY(0) scale(1);
}

/* Vertical Progress Bar (Scrollspy) */
.scrollspy-nav{
  position:fixed;left:24px;top:50%;transform:translateY(-50%);z-index:700;
  display:flex;align-items:center;
}
@media (max-width:1024px){
  .scrollspy-nav{left:12px;}
}
.scrollspy-list{
  list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3);
}
.scrollspy-dot{
  display:block;width:12px;height:12px;border-radius:50%;
  background:rgba(31,53,36,0.2);border:2px solid rgba(31,53,36,0.3);
  transition:all .3s ease;position:relative;
}
.scrollspy-dot:hover,.scrollspy-dot.active{
  background:var(--liv-brand-primary);border-color:var(--liv-brand-primary);
  transform:scale(1.3);box-shadow:0 0 0 4px rgba(117,192,83,0.2);
}
.scrollspy-dot::after{
  content:attr(aria-label);position:absolute;left:20px;top:50%;
  transform:translateY(-50%);white-space:nowrap;
  background:var(--liv-brand-secondary);color:#fff;padding:6px 12px;
  border-radius:var(--radius-sm);font-size:0.875rem;font-weight:600;
  transition:opacity .2s ease;z-index:10;
  opacity:0;pointer-events:none;
}
.scrollspy-dot:hover::after,
.scrollspy-dot.active::after{opacity:1;}

/* WhatsApp Button */
.whatsapp-button{
  position:fixed;right:16px;bottom:16px;width:56px;height:56px;
  border-radius:50%;background:#25D366;color:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 12px rgba(37,211,102,0.4);
  transition:transform .2s ease,box-shadow .2s ease;z-index:800;
  max-width:calc(100vw - 32px);
}
.whatsapp-button:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(37,211,102,0.6);}
.whatsapp-button svg{width:28px;height:28px;}


/* Pulse animation for scroll indicator only */
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(129,201,76,0.4);}70%{box-shadow:0 0 0 10px rgba(129,201,76,0);}100%{box-shadow:0 0 0 0 rgba(129,201,76,0);}}

@media (max-width:1024px){
  .layout{
    grid-template-columns:1fr;
    gap:var(--space-6);
    width:100%;
    box-sizing:border-box;
  }
  .hero{min-height:60vh;}
  .hero.hero-simple{min-height:35vh;}
  .header-inner{
    padding:var(--space-3) var(--space-4);
    width:100%;
    box-sizing:border-box;
  }
  .nav-toggle{
    display:flex!important;
    position:relative;
    z-index:1001;
    background:transparent;
    border:none;
    padding:8px;
  }
  .nav-toggle:focus{
    outline:2px solid var(--liv-brand-primary);
    outline-offset:2px;
  }
  .nav-list{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100vw!important;
    height:100vh!important;
    max-width:100vw!important;
    min-width:100vw!important;
    margin:0!important;
    padding:var(--space-8) var(--space-4)!important;
    background-color:#1a332a!important;
    background:var(--liv-brand-secondary)!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:var(--space-6)!important;
    z-index:99999!important;
    transform:translateX(100%)!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:transform .3s ease,opacity .3s ease!important;
    box-sizing:border-box!important;
    overflow-y:auto!important;
    border:none!important;
    outline:none!important;
  }
  .nav-open .nav-list{
    transform:translateX(0)!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  .nav-open body,
  .nav-open html{
    overflow:hidden!important;
    position:fixed!important;
    width:100%!important;
    height:100%!important;
  }
  .nav-close-wrapper{
    display:block!important;
    position:absolute!important;
    top:var(--space-4)!important;
    right:var(--space-4)!important;
    width:auto!important;
    max-width:none!important;
    z-index:1002!important;
  }
  .nav-close{
    width:48px!important;
    height:48px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,0.2)!important;
    border:none!important;
    color:#fff!important;
    font-size:1.5rem!important;
    font-weight:700!important;
    cursor:pointer!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    transition:background .2s ease,transform .2s ease!important;
    padding:0!important;
  }
  .nav-close:hover,
  .nav-close:focus{
    background:rgba(255,255,255,0.3)!important;
    transform:scale(1.1)!important;
    outline:2px solid rgba(255,255,255,0.5)!important;
    outline-offset:2px!important;
  }
  .nav-list li{
    width:100%!important;
    max-width:400px!important;
    text-align:center!important;
  }
  .nav-list a{
    display:block!important;
    padding:var(--space-4) var(--space-5)!important;
    font-size:1.2rem!important;
    font-weight:600!important;
    color:#fff!important;
    border-radius:var(--radius-lg)!important;
    transition:background .2s ease,transform .2s ease!important;
    width:100%!important;
    text-align:center!important;
  }
  .nav-list a:hover,
  .nav-list a:focus-visible{
    background:rgba(255,255,255,0.15)!important;
    transform:translateY(-2px)!important;
  }
  .nav-list .btn.primary.small{
    width:100%!important;
    max-width:400px!important;
    padding:var(--space-4) var(--space-5)!important;
    font-size:1.2rem!important;
    white-space:normal!important;
    min-width:auto!important;
  }
  .contact-grid{
    grid-template-columns:1fr;
    width:100%;
  }
  .contact-info-grid{
    grid-template-columns:1fr;
    width:100%;
  }
  .split{grid-template-columns:1fr;}
  .scrollspy-nav{display:none;}
  .services-grid{
    grid-template-columns:1fr;
    width:100%;
  }
  .about-grid{
    grid-template-columns:1fr;
    width:100%;
  }
  .team-split{
    grid-template-columns:1fr;
    gap:var(--space-6);
  }
  .team-special{
    margin-top:var(--space-3)!important;
  }
  .team-image{
    margin-top:0;
  }
  .team-image img{
    min-height:350px;
    height:auto;
  }
  .features-grid{
    grid-template-columns:repeat(2,1fr);
    gap:var(--space-6);
    width:100%;
  }
  .roles-list{grid-template-columns:1fr;}
  .core-values-grid{
    grid-template-columns:1fr;
    width:100%;
  }
}
@media (max-width:768px){
  body,html{
    width:100%!important;
    position:relative;
    overflow-x:hidden!important;
  }
  body{
    overflow-x:hidden!important;
  }
  main{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  .site-header,.header-inner,.layout,.section,.section-header,.section-content{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .hero,.hero-bg,.hero-overlay{
    width:100%;
    overflow:hidden;
  }
  .site-header{
    width:100%;
  }
  .brand-logo{
    max-width:90px;
  }
  .hero-actions{
    flex-direction:column;
    width:100%;
  }
  .hero-actions .btn{
    width:100%;
    max-width:100%;
  }
  .header-inner{
    padding:var(--space-3) var(--space-4)!important;
    flex-wrap:wrap;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    gap:var(--space-3);
    margin:0!important;
    padding-left:var(--space-4)!important;
    padding-right:var(--space-4)!important;
  }
  .layout{
    display:block!important;
    padding:var(--space-6) var(--space-4)!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding-left:var(--space-4)!important;
    padding-right:var(--space-4)!important;
  }
  .hero-content{
    padding:96px var(--space-4)!important;
    width:100%;
    box-sizing:border-box;
    max-width:100%;
  }
  .hero.hero-simple .hero-content{
    padding:60px var(--space-4)!important;
    width:100%;
    box-sizing:border-box;
    max-width:100%;
  }
  .section{
    display:block!important;
    padding:var(--space-5) var(--space-4)!important;
    border-radius:20px;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    margin:0 auto var(--space-5)!important;
    padding-left:var(--space-4)!important;
    padding-right:var(--space-4)!important;
  }
  .hero{min-height:55vh;}
  .hero.hero-simple{min-height:30vh;}
  .scrollspy-nav{display:none!important;}
  .whatsapp-button{
    width:52px;height:52px;
    right:12px;bottom:12px;
    max-width:calc(100% - 24px);
  }
  .whatsapp-button svg{width:24px;height:24px;}
  .floating-top{
    right:12px;bottom:72px;
    width:40px;height:40px;
    max-width:calc(100% - 24px);
  }
  .services-grid{
    grid-template-columns:1fr!important;
    gap:var(--space-5);
    width:100%;
  }
  .about-grid{
    grid-template-columns:1fr!important;
    gap:var(--space-5);
    width:100%;
  }
  .mission-text{
    padding:var(--space-5) var(--space-4)!important;
    font-size:1.15rem;
    width:100%;
    box-sizing:border-box;
  }
  .mission-text::before,.mission-text::after{
    display:none;
  }
  .features-grid{
    grid-template-columns:1fr!important;
    gap:var(--space-5);
    width:100%;
  }
  .roles-list{grid-template-columns:1fr!important;}
  .contact-grid{
    grid-template-columns:1fr!important;
    width:100%;
    gap:var(--space-5);
  }
  .team-split{
    grid-template-columns:1fr!important;
    gap:var(--space-5);
  }
  .team-special{
    margin-top:var(--space-3)!important;
  }
  .team-image{
    margin-top:0;
  }
  .team-image img{
    min-height:300px;
    height:auto;
  }
  .contact-info-grid{
    grid-template-columns:1fr!important;
    width:100%;
  }
  .core-values-grid{
    grid-template-columns:1fr!important;
    gap:var(--space-5);
    width:100%;
  }
  .pillars{
    grid-template-columns:1fr!important;
    gap:var(--space-3);
    width:100%;
  }
  .core-value-icon{font-size:2.5rem;}
  .nav-list .btn.primary.small{
    min-width:auto!important;
    width:100%;
    white-space:normal;
  }
  .site-footer{
    padding:var(--space-8) var(--space-4) var(--space-4)!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    padding-left:var(--space-4)!important;
    padding-right:var(--space-4)!important;
  }
  .footer-grid{
    gap:var(--space-5);
    grid-template-columns:1fr!important;
    width:100%;
  }
  .footer-meta{
    flex-direction:column;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:var(--space-2);
  }
  .section-header,.section-content{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
    margin-left:0!important;
    margin-right:0!important;
  }
  /* Centreer alle teksten en elementen op mobiel, BEHALVE document pagina's */
  .section:not(.document-page) .section-header,
  .section:not(.document-page) .section-content,
  .section:not(.document-page) .section-header h1,
  .section:not(.document-page) .section-header h2,
  .section:not(.document-page) .section-header h3,
  .section:not(.document-page) .section-content h1,
  .section:not(.document-page) .section-content h2,
  .section:not(.document-page) .section-content h3,
  .section:not(.document-page) .section-content h4,
  .section:not(.document-page) .section-header p,
  .section:not(.document-page) .section-content p,
  .section:not(.document-page) .section-content ul,
  .section:not(.document-page) .section-content ol,
  .section:not(.document-page) .section-content li,
  .section:not(.document-page) p,
  .section:not(.document-page) h1,
  .section:not(.document-page) h2,
  .section:not(.document-page) h3,
  .section:not(.document-page) h4,
  .section:not(.document-page) ul,
  .section:not(.document-page) ol,
  .section:not(.document-page) li,
  .card:not(.document-page .card),
  .card:not(.document-page .card) p,
  .card:not(.document-page .card) h3,
  .card:not(.document-page .card) ul,
  .card:not(.document-page .card) li{
    text-align:center!important;
  }
  /* Document pagina's: behoud links uitlijning */
  .document-page .section-header,
  .document-page .section-content,
  .document-page .section-header h1,
  .document-page .section-header h2,
  .document-page .section-header h3,
  .document-page .section-content h1,
  .document-page .section-content h2,
  .document-page .section-content h3,
  .document-page .section-content h4,
  .document-page .section-header p,
  .document-page .section-content p,
  .document-page .section-content ul,
  .document-page .section-content ol,
  .document-page .section-content li,
  .document-page p,
  .document-page h1,
  .document-page h2,
  .document-page h3,
  .document-page h4,
  .document-page ul,
  .document-page ol,
  .document-page li{
    text-align:left!important;
  }
  /* Lists centreren, BEHALVE in document pagina's */
  .section:not(.document-page) .section-content ul,
  .section:not(.document-page) .section-content ol,
  .section:not(.document-page) .section ul,
  .section:not(.document-page) .section ol,
  .card:not(.document-page .card) ul,
  .card:not(.document-page .card) ol{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    padding-left:0!important;
    list-style-position:inside!important;
  }
  .section:not(.document-page) .section-content ul li,
  .section:not(.document-page) .section-content ol li,
  .section:not(.document-page) .section ul li,
  .section:not(.document-page) .section ol li,
  .card:not(.document-page .card) ul li,
  .card:not(.document-page .card) ol li{
    text-align:center!important;
    width:100%!important;
  }
  /* Document pagina's: lists links uitgelijnd */
  .document-page .section-content ul,
  .document-page .section-content ol,
  .document-page ul,
  .document-page ol{
    display:block!important;
    text-align:left!important;
    padding-left:20px!important;
    list-style-position:outside!important;
  }
  .document-page .section-content ul li,
  .document-page .section-content ol li,
  .document-page ul li,
  .document-page ol li{
    text-align:left!important;
  }
  /* Buttons centreren */
  .btn,
  .hero-actions,
  .hero-actions .btn{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .service-content .btn{
    align-self:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  /* Iconen en symbolen centreren */
  .core-value-icon,
  .feature-icon,
  .icon-circle,
  .check-icon{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  /* Cards en items centreren */
  .service-card,
  .service-content,
  .feature-item,
  .core-value-card,
  .about-card,
  .card{
    text-align:center!important;
  }
  .service-content h3,
  .feature-item h3,
  .core-value-card h3,
  .about-card h3,
  .card h3{
    text-align:center!important;
  }
  .service-features{
    align-items:center!important;
  }
  .service-features li{
    text-align:center!important;
  }
  /* Footer content centreren */
  .site-footer{
    text-align:center!important;
  }
  .footer-grid{
    text-align:center!important;
  }
  .footer-grid > *{
    text-align:center!important;
  }
  .site-footer h3,
  .site-footer p,
  .site-footer a,
  .site-footer .body,
  .footer-nav,
  .footer-nav li,
  .footer-nav a{
    text-align:center!important;
  }
  .footer-nav{
    justify-items:center!important;
  }
  .site-footer .brand{
    justify-content:center!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .social{
    justify-content:center!important;
  }
  .footer-meta{
    text-align:center!important;
    justify-content:center!important;
    align-items:center!important;
  }
  .site-footer{
    margin-bottom:0!important;
    padding-bottom:var(--space-4)!important;
  }
  body{
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
  html{
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
  .badges{
    justify-content:center!important;
  }
  .about-who{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
    margin-left:0!important;
    margin-right:0!important;
  }
  .mission-quote{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
    margin-left:0!important;
    margin-right:0!important;
  }
  .contact-card,.form-card{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
  }
  .map-wrap{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
  }
  .map-wrap iframe{
    width:100%!important;
    max-width:100%!important;
  }
  .form-wrapper{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
  }
  .mission-text{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
    padding-left:var(--space-4)!important;
    padding-right:var(--space-4)!important;
  }
  .step{
    margin:0 auto var(--space-4)!important;
    width:calc(100% - var(--space-4) * 2)!important;
    max-width:100%!important;
  }
  .step-head{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
    gap:var(--space-3)!important;
  }
  .step-head .step-number{
    order:1;
  }
  .step-head h3{
    order:2;
    text-align:center!important;
    width:100%;
    justify-content:center!important;
    display:flex!important;
  }
  .step-content{
    margin-top:var(--space-2)!important;
    padding-top:var(--space-2)!important;
    text-align:center!important;
  }
  .step-content p{
    padding-left:0!important;
    text-align:center!important;
  }
  .pillars{
    grid-template-columns:1fr!important;
    width:100%;
  }
  .card{
    width:100%;
    box-sizing:border-box;
  }
  .step{
    width:100%;
    box-sizing:border-box;
  }
  .service-card{
    width:100%;
    box-sizing:border-box;
  }
  .feature-item{
    width:100%;
    box-sizing:border-box;
  }
  .core-value-card{
    width:100%;
    box-sizing:border-box;
  }
  .about-card{
    width:100%;
    box-sizing:border-box;
  }
  .hero-actions .btn{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
  }
  .form input,.form textarea,.form select{
    width:100%;
    box-sizing:border-box;
  }
}

@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important;}
}

/* Contact form link styles */
.contact-card a,.form-card a{
  color:var(--liv-brand-secondary);text-decoration:underline;
  transition:color .2s ease;
}
.contact-card a:hover,.form-card a:hover{
  color:var(--liv-brand-primary);
}

/* ============================================
   GLOBAL GRID SAFETY - Voorkom grid blowout
   ============================================ */
.pillars,
.core-values-grid,
.services-grid,
.features-grid,
.contact-grid,
.contact-info-grid,
.about-grid,
.footer-grid{
  min-width:0;
}
.pillars > *,
.core-values-grid > *,
.services-grid > *,
.features-grid > *,
.contact-grid > *,
.contact-info-grid > *,
.about-grid > *,
.footer-grid > *,
.card,
.service-card,
.feature-item,
.core-value-card,
.about-card,
.contact-card,
.form-card{
  min-width:0;
  overflow-wrap:break-word;
  word-wrap:break-word;
}

/* ============================================
   GLOBAL MOBILE FIX - Vangnet voor overige elementen
   ============================================ */
@media (max-width:767px){
  /* Forceer alle containers binnen viewport */
  *{
    max-width:100%;
  }
  
  /* Grid items moeten flexibel zijn */
  [class*="grid"]{
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:100%!important;
  }
  
  /* Alle containers met max-width moeten ook width:100% hebben */
  [class*="max-width"],
  [style*="max-width"]{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  
  /* Padding reductie voor kleine schermen */
  .section,
  .card,
  .contact-card,
  .form-card{
    padding-left:var(--space-4)!important;
    padding-right:var(--space-4)!important;
  }
  
  /* Zorg dat alle flex/grid containers niet overlappen */
  .layout,
  .section,
  .section-header,
  .section-content{
    margin-left:0!important;
    margin-right:0!important;
    padding-left:var(--space-4)!important;
    padding-right:var(--space-4)!important;
  }
  
  /* Forceer single column voor alle multi-column layouts */
  .split,
  .contact-grid,
  .contact-info-grid{
    grid-template-columns:1fr!important;
  }
  
  /* Zorg dat images nooit de container overschrijden */
  img,
  svg,
  video,
  iframe,
  embed,
  object{
    max-width:100%!important;
    height:auto!important;
  }
  
  /* Text overflow preventie */
  p,h1,h2,h3,h4,h5,h6,span,a,li{
    word-wrap:break-word;
    overflow-wrap:break-word;
  }
  
  /* Zorg dat fixed elements binnen viewport blijven */
  .floating-top,
  .whatsapp-button,
  .scrollspy-nav{
    max-width:calc(100% - 24px)!important;
    right:12px!important;
    left:auto!important;
  }
}

