/* Eén achtergrondkleur over de hele site */
html,body{background:#f8f6f2!important}
main,.op{background:transparent!important}
.site-header,.site-header.is-scrolled{background:#f8f6f2!important}
.section,.section-grey,.page-body,.legal,.cta-band,.about-tabs,.page-hero:not(.has-photo){background:transparent!important}
.section::before,.cta-band::before,.page-hero::before{display:none!important}
.page-hero.has-photo::after{background:linear-gradient(90deg,rgba(248,246,242,.96) 0%,rgba(248,246,242,.86) 45%,rgba(248,246,242,.25) 100%)!important}
@media(max-width:860px){.menu{background:#f8f6f2!important}}
/* Klachtenvakken: wit met randje, blauw bij aanwijzen */
#klachten .complaints li{background:#fff!important;border:1px solid #e6e3dd;box-shadow:0 14px 30px -24px rgba(23,50,70,.45)!important;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
@media(hover:hover){#klachten .complaints li:hover{background:#e7f2f9!important;border-color:#bcd9e9;box-shadow:0 18px 34px -22px rgba(23,50,70,.5)!important}}
/* Stappen op de homepage: lopende tekst links uitgelijnd */
#aanpak ol.steps li p{text-align:left!important}
/* Knop naar Over Jeroen op de homepage */
.over-knop{margin:.9rem 0 1.2rem}
.over-knop .btn{min-height:0!important;padding:8px 16px!important;font-size:.82rem!important;font-weight:600!important;border-width:1px!important;box-shadow:none!important}
@media(max-width:860px){.alleen-breed{display:none}}
@media(max-width:360px){main p,main li,main h1,main h2,main h3{overflow-wrap:anywhere}}
/* Telefoon: velden zoomen niet in, knoppen goed aan te tikken */
@media(max-width:760px){
  input:not([type=checkbox]):not([type=radio]),textarea,select{font-size:16px!important}
  .article-back,.back-link,.article-end a{display:inline-flex;align-items:center;min-height:44px}
}
/* Drie behandelkaarten: geen losse kaart op een eigen rij */
@media(min-width:700px) and (max-width:1099px){#behandelingen .cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:699px){#behandelingen .cards{grid-template-columns:minmax(0,1fr)}}
@media(min-width:700px) and (max-width:1099px){#behandelingen .cards .card:last-child{grid-column:auto!important}}
@media(max-width:699px){#behandelingen .cards .card:last-child{grid-column:auto!important}}
/* Onderbalk: links goed leesbaar op donker */
.site-footer .foot-door a,.foot-bottom a{color:inherit!important;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.foot-bottom>a,.foot-door a{display:inline-flex;align-items:center;min-height:36px}}

/* Onderbalk: tekst klachtrecht */
.foot-wkkgz{margin:0 0 18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.72);font-size:.82rem;line-height:1.6;text-wrap:balance}
.foot-wkkgz strong{color:#fff}
.foot-wkkgz a{color:inherit!important;text-decoration:underline;text-underline-offset:3px}
.form-val{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
/* Technische uitleg bij bioresonantie */
.uitklap-techniek{margin:6px 0 4px;border-top:1px solid #dcdcd6;border-bottom:1px solid #dcdcd6}
.uitklap-techniek>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600;color:#377c9d}
.uitklap-techniek[open]{padding-bottom:10px}
/* Telefoon: voettekst, menu en koppen netjes */
.foot-wkkgz{margin-top:28px}
.op4 .tekst :is(h2,h3,h4){margin-bottom:.55rem}
.op4 .tekst .deel h2{margin-bottom:0}
@media(max-width:860px){.menu .submenu{border-bottom:0}}
@media(max-width:520px){.footer-cols{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:860px){.menu{max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px);overflow-y:auto;overscroll-behavior:contain}}

/* Onderbalk: op elke pagina gelijk en compact */
.site-footer{background:#183c51;color:rgba(255,255,255,.75);padding:44px 0 20px;font-size:.8rem;line-height:1.55}
.site-footer .wrap{width:min(1180px,100% - 40px);max-width:none;margin-inline:auto;padding-inline:0}
.site-footer .foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px}
.site-footer .foot,.site-footer .foot li{font-size:.8rem;line-height:1.55}
.foot .logo-white{display:inline-block;margin-bottom:10px}
.foot .logo-white img{display:block;height:58px;width:auto}
.foot p{margin:0}
.foot h4{color:#fff;font-size:.95rem;font-weight:500;line-height:1.4;margin:0 0 8px}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:3px}
.foot a{color:rgba(255,255,255,.85);text-decoration:none}
.site-footer a:hover{color:#bce5f5;text-decoration:none}
.site-footer .foot-wkkgz{margin:22px 0 0;padding-top:14px;font-size:.72rem;line-height:1.5}
.foot-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:14px;padding-top:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.72rem;color:rgba(255,255,255,.55)}
@media(max-width:1020px){.site-footer .foot{grid-template-columns:1fr 1fr}.site-footer .foot>div:first-child{grid-column:1/-1}}
@media(max-width:480px){.site-footer .foot{grid-template-columns:1fr;gap:20px}}
@media(max-width:760px){.foot ul{gap:0}.foot li a{display:inline-flex;align-items:center;min-height:36px}}
.site-footer .foot-door a{text-decoration:none}
.site-footer .foot-bottom a{text-decoration:none}
@media(max-width:860px){.foot-bottom>a[href="/werkplek"]{display:none}}

/* Vaste knop op telefoon, zoals bij Salon TOF: pas zichtbaar als de eerste knop voorbij is */
.plak-balk{display:none}
@media(max-width:760px) and (min-height:501px){
  .plak-balk.zichtbaar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;padding:8px 12px max(8px,calc(env(safe-area-inset-bottom) - 12px));background:#f8f6f2;border-top:1px solid #d9e9f1;animation:plak-in .2s ease}
  .plak-balk.zichtbaar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:46px;background:#9bd3eb;color:#173d52;border-radius:999px;font-weight:700;text-decoration:none}
  .plak-balk.zichtbaar::after{content:"";position:absolute;left:0;right:0;top:100%;height:120px;background:#f8f6f2}
}
@media(max-width:760px) and (min-height:501px) and (pointer:fine){body:has(.plak-balk){padding-bottom:63px}}
@keyframes plak-in{from{transform:translate3d(0,100%,0)}to{transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){.plak-balk.zichtbaar{animation:none}}
.contact-direct a[href^="tel:"]{white-space:nowrap}
.emb-logo{margin:0 0 22px}
.emb-logo img{display:block;width:clamp(170px,40vw,230px);height:auto}
.opt-tile img.tegel-logo{object-fit:contain;padding:12% 14%;background:#fff;box-sizing:border-box}
.emb-kop{display:flex;align-items:center;flex-wrap:wrap;gap:10px clamp(16px,3vw,36px)}
.emb-kop h1{margin:0}
.emb-sticker{display:block;height:clamp(40px,6vw,68px);width:auto}
@media(max-width:359px){.emb-kop{gap:12px}.emb-sticker{height:30px}}

/* Keurmerken in de onderbalk, op elke pagina */
.foot-keurmerken{list-style:none;margin:30px 0 0;padding:22px 0 0;border-top:1px solid rgba(255,255,255,.18);display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px}
.foot-keurmerken a{display:grid;place-items:center;height:62px;padding:6px 12px;background:#fff;border-radius:12px}
.foot-keurmerken img{display:block;height:50px;width:auto;max-width:120px;object-fit:contain}
.foot-keurmerken+.foot-wkkgz{margin-top:18px}
@media(max-width:480px){.foot-keurmerken{gap:8px;flex-wrap:nowrap}.foot-keurmerken li{flex:1 1 0;min-width:0}.foot-keurmerken li:first-child{flex:1.5 1 0}.foot-keurmerken a{height:52px;padding:5px 6px}.foot-keurmerken img{height:40px;max-width:100%}}
/* Let op-tekst bij bioresonantie, tussenkop aandoeningen en pdf-link */
.let-op{margin:0 0 1.4em;padding:14px 18px;background:#e6f1f8;border-left:4px solid #3c7896;border-radius:10px;color:#1d3c52}
.tussenkop{margin:1.6em 0 .6em}
.pdf-link a{font-weight:600}
