/* =====================================================================
   Nadine — aanvullingen voor WordPress + Elementor
   ===================================================================== */

/* 1. Elementor-omhulsels doorzichtig maken op de site (niet in de editor),
      zodat de secties zich gedragen als in het ontwerp (sticky hero, gordijn, scroll-effecten). */
/* Alleen de containers van de import (klasse nadine-wrap) en de Nadine-widgets zelf;
   eigen Elementor-secties en -widgets van de klant houden hun normale opmaak. */
body.nadine:not(.nadine-editor) main > .elementor,
body.nadine:not(.nadine-editor) main .e-con.nadine-wrap:not(.flow),
body.nadine:not(.nadine-editor) main .e-con.nadine-wrap > .e-con-inner,
body.nadine:not(.nadine-editor) main .elementor-widget[class*="elementor-widget-nadine_"],
body.nadine:not(.nadine-editor) main .elementor-widget[class*="elementor-widget-nadine_"] > .elementor-widget-container { display: contents; }
/* de "flow"-container van de home schuift over de hero heen */
body.nadine main .e-con.flow.nadine-wrap { display: block; position: relative; z-index: 1; padding: 0; margin: 0; max-width: none; width: 100%; --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; --gap: 0; }
body.nadine main .e-con.flow.nadine-wrap > .e-con-inner { display: contents; }

/* 2. In de editor: alles direct zichtbaar, geen gordijn of sticky-trucs */
body.nadine-editor .hero { position: relative; }
body.nadine-editor .cursor, body.nadine-editor .mbar { display: none; }
body.nadine-editor [data-anim], body.nadine-editor [data-anim] * { opacity: 1 !important; visibility: visible !important; transform: none !important; clip-path: none !important; filter: none !important; }
body.nadine-editor .art { height: auto; }
body.nadine-editor .ftr { position: relative; }
body.nadine-editor main .elementor-widget { margin-bottom: 0; }

/* 3. Ingelogd: navigatie onder de WordPress-balk */
.admin-bar .nav { top: var(--wp-admin--admin-bar--height, 32px); }

/* 4. Honeypot tegen spam */
.nadine-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* 5. Huidgids-artikel (blokeditor-inhoud) — zelfde typografie als het ontwerp */
.nadine-prose { max-width: 780px; }
.nadine-prose > * + * { margin-top: 1.1em; }
.nadine-prose > h2 { margin-top: clamp(64px, 8vw, 112px); margin-bottom: 26px; font: 500 clamp(1.9rem, 3vw, 2.7rem)/1.08 var(--serif); letter-spacing: -.008em; color: var(--hd, #AB5F43); scroll-margin-top: calc(var(--nav) + 24px); }
.nadine-prose > h2:first-child { margin-top: 0; }
.nadine-prose > h3 { margin-top: 2em; font: 500 1.4rem/1.2 var(--serif); color: var(--acc, #8C4A32); }
.nadine-prose p, .nadine-prose li { font-size: 1.08rem; line-height: 1.75; color: var(--fg, #33281F); }
.nadine-prose a { color: var(--acc, #8C4A32); text-underline-offset: 3px; }
.nadine-prose ul:not([class*="ha-"]), .nadine-prose ol:not([class*="ha-"]) { padding-left: 1.2em; }
.nadine-prose img { max-width: 100%; height: auto; }
.nadine-prose figure { margin: 2em 0; }
.nadine-prose figcaption { font-size: .8rem; color: var(--mut, #66574B); }

/* herkennen: drie kolommen met lijn */
.nadine-prose .ha-signs { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; counter-reset: sg; }
.nadine-prose .ha-signs li { counter-increment: sg; display: grid; gap: 10px; align-content: start; padding-top: 18px; border-top: 1px solid var(--brown, #AB5F43); color: var(--mut, #66574B); font-size: .95rem; line-height: 1.6; }
.nadine-prose .ha-signs li::before { content: counter(sg, decimal-leading-zero); font: 500 .72rem/1 var(--sans); letter-spacing: .12em; color: var(--mut, #66574B); }
.nadine-prose .ha-signs strong { display: block; font: 500 1.35rem/1.15 var(--serif); color: var(--acc, #8C4A32); }
/* oorzaken: twee kolommen */
.nadine-prose .ha-causes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 36px; }
.nadine-prose .ha-causes li { padding: 18px 0; border-top: 1px solid var(--line, rgba(51,40,31,.18)); color: var(--mut, #66574B); font-size: 1rem; }
.nadine-prose .ha-causes strong { display: block; margin-bottom: 6px; font: 500 1.2rem/1.2 var(--serif); color: var(--acc, #8C4A32); }
/* zelf doen: genummerd */
.nadine-prose .ha-self { list-style: none; margin: 0; padding: 0; counter-reset: sf; }
.nadine-prose .ha-self li { counter-increment: sf; display: grid; grid-template-columns: 52px 1fr; padding: 16px 0; border-top: 1px solid var(--line, rgba(51,40,31,.18)); }
.nadine-prose .ha-self li:last-child { border-bottom: 1px solid var(--line, rgba(51,40,31,.18)); }
.nadine-prose .ha-self li::before { content: counter(sf, decimal-leading-zero); font: 500 .72rem/2 var(--sans); letter-spacing: .12em; color: var(--acc, #8C4A32); }
/* in de salon: paneel */
.nadine-prose .ha-salon { margin-top: clamp(64px, 8vw, 112px); padding: clamp(28px, 4.5vw, 64px); background: var(--paper, #F6F6F4); }
.nadine-prose .ha-salon > h2 { margin: 0 0 26px; font: 500 clamp(1.9rem, 3vw, 2.7rem)/1.08 var(--serif); color: var(--hd, #AB5F43); scroll-margin-top: calc(var(--nav) + 24px); }
.nadine-prose .ha-salon > * + * { margin-top: 1em; }
.nadine-prose .ha-trs { list-style: none; margin: 30px 0 0; padding: 0; }
.nadine-prose .ha-trs li { padding: 22px 0; border-top: 1px solid var(--line, rgba(51,40,31,.18)); color: var(--mut, #66574B); }
.nadine-prose .ha-trs li:last-child { border-bottom: 1px solid var(--line, rgba(51,40,31,.18)); }
.nadine-prose .ha-trs a { display: block; margin-bottom: 8px; font: 500 clamp(1.5rem, 2.2vw, 1.9rem)/1.1 var(--serif); color: var(--hd, #AB5F43); text-decoration: none; }
.nadine-prose .ha-trs a::after { content: " →"; font-family: var(--sans); font-size: .7em; }
.nadine-prose .ha-trs em { display: block; margin-top: 10px; font: 500 .75rem/1.45 var(--sans); font-style: normal; letter-spacing: .12em; text-transform: uppercase; color: var(--acc, #8C4A32); }
.nadine-prose .ha-note { margin-top: 26px; font: italic 400 1.2rem/1.5 var(--serif) !important; }
/* wanneer naar de huisarts */
.nadine-prose .ha-doc { margin-top: clamp(64px, 8vw, 112px); padding-left: 26px; border-left: 2px solid var(--brown, #AB5F43); }
.nadine-prose .ha-doc > h2 { margin: 0 0 14px; font: 500 clamp(1.4rem, 2vw, 1.8rem)/1.1 var(--serif); color: var(--hd, #AB5F43); scroll-margin-top: calc(var(--nav) + 24px); }
/* vragen: blok "Details" */
.nadine-prose details { border-top: 1px solid var(--line, rgba(51,40,31,.18)); }
.nadine-prose details:last-of-type { border-bottom: 1px solid var(--line, rgba(51,40,31,.18)); }
.nadine-prose details + details { margin-top: 0; }
.nadine-prose summary { display: flex; justify-content: space-between; gap: 20px; padding: 20px 0; cursor: pointer; list-style: none; font: 500 .8rem/1.4 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--fg, #33281F); }
.nadine-prose summary::-webkit-details-marker { display: none; }
.nadine-prose summary::after { content: "+"; font-size: 1.2rem; line-height: 1; color: var(--acc, #8C4A32); transition: transform .4s; }
.nadine-prose details[open] summary::after { transform: rotate(45deg); }
.nadine-prose details > :not(summary) { padding-bottom: 20px; color: var(--mut, #66574B); }
@media (max-width: 900px) {
  .nadine-prose .ha-signs, .nadine-prose .ha-causes { grid-template-columns: minmax(0, 1fr); }
}

/* 6. Paginering in archieven */
.nav-links { display: flex; gap: 16px; margin-top: 40px; font: 500 .75rem/1 var(--sans); letter-spacing: .12em; text-transform: uppercase; }
.nav-links a, .nav-links span { padding: 10px 14px; border: 1px solid var(--line, rgba(51,40,31,.18)); border-radius: 50px; text-decoration: none; color: inherit; }
