/* MazBe Counseling | statisch, geen trackers, lettertypes lokaal */
@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url("../assets/fonts/newsreader-latin-opsz-normal.woff2") format("woff2")}
@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url("../assets/fonts/newsreader-latin-opsz-italic.woff2") format("woff2")}
@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url("../assets/fonts/figtree-latin-wght-normal.woff2") format("woff2")}

:root{
  --bg:#fbf8f3;--paper:#f3ecdf;--surface:#fff;--ink:#26241d;--ink2:#4b473b;--muted:#6a6556;--line:#e6decc;
  --brand:#2b2920;--brand-d:#1c1b15;--brand-t:#f3ecdf;--accent:#7d5f27;--gold:#b08840;--amber:#d9bd85;--amber-t:#f6ecd5;--ok:#4d7a4a;
  --head:Newsreader,Georgia,"Times New Roman",serif;
  --body:Figtree,"Helvetica Neue",Arial,sans-serif;
  --r:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--body);text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
a{color:inherit}
p{margin:0 0 1rem}
h1,h2,h3{font-family:var(--head);font-weight:500;font-optical-sizing:auto;letter-spacing:-.015em;margin:0;text-wrap:balance}
h1{font-size:clamp(2.7rem,5.6vw,4.7rem);line-height:1.04}
h2{font-size:clamp(2.1rem,3.6vw,3.1rem);line-height:1.1}
h3{font-size:1.45rem;line-height:1.22;letter-spacing:-.01em;font-weight:550}
.wrap{width:min(1160px,calc(100% - 56px));margin-inline:auto}
.eyebrow{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.muted{color:var(--muted)}
.skip{position:absolute;left:-999px;top:8px;background:var(--brand);color:#fff;padding:10px 16px;font-weight:700;z-index:100;border-radius:8px}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:6px}
section{padding:88px 0}
section.tint{background:var(--brand-t)}
section.white{background:var(--surface)}
.sechead{max-width:700px;margin-bottom:40px}
.sechead h2{margin:10px 0 12px}
.sechead p{color:var(--muted);margin:0;font-size:1.05rem}

/* knoppen */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:12px;border:2px solid var(--brand);background:var(--brand);color:#fff;font:700 1rem/1 var(--body);text-decoration:none;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.btn:hover{background:var(--accent);border-color:var(--accent)}
.btn.alt{background:transparent;color:var(--brand)}
.btn.alt:hover{background:var(--brand);border-color:var(--brand);color:#fff}
.btn.light{background:var(--gold);color:#1c1b15;border-color:var(--gold)}
.btn.light:hover{background:var(--amber);border-color:var(--amber)}
.btn.ghost-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn.ghost-light:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn.block{width:100%}
.btn svg{width:18px;height:18px;flex:none}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.textlink{font-weight:700;color:var(--accent);text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:1px}
.textlink:hover{background:var(--amber-t)}

/* header */
header{position:sticky;top:0;z-index:50;background:rgba(251,248,243,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;line-height:1;white-space:nowrap}
.logo{flex-shrink:0}.logo img{height:64px;width:auto;max-width:none;display:block}
.logo-name{font-family:var(--head);font-weight:750;font-size:1.55rem;letter-spacing:-.03em;color:var(--brand-d)}
.logo-name span{font-weight:450;color:var(--brand)}
.logo-sub{display:block;margin-top:4px;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.links{display:flex;align-items:center;gap:6px}
.links a{white-space:nowrap}
.links a:not(.btn){display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:10px;font-weight:600;font-size:.96rem;text-decoration:none;color:var(--ink2)}
.links a:not(.btn):hover{background:var(--paper);color:var(--brand-d)}
.links a[aria-current="page"]{color:var(--brand-d);background:var(--paper);box-shadow:inset 0 -2px 0 var(--gold)}
.links .tel{gap:8px;font-weight:700;color:var(--accent)}
.links .tel svg{width:17px;height:17px}
.links .btn{min-height:46px;padding:0 20px;margin-left:6px}
.toggle{display:none;background:#fff;color:var(--brand-d);border:2px solid var(--line);border-radius:10px;padding:0 16px;min-height:44px;font:700 .95rem var(--body);cursor:pointer}

/* hero */
.hero{padding:70px 0 84px;background:radial-gradient(900px 500px at 85% 20%,#f1e6cd 0,rgba(241,230,205,0) 70%),var(--bg)}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:64px;align-items:center}
.hero .pill{display:inline-flex;align-items:center;gap:8px;background:var(--amber-t);color:#5d4516;font-weight:700;font-size:.86rem;padding:7px 14px;border-radius:99px;margin-bottom:22px}
.hero .pill:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok)}
.hero h1{margin-bottom:20px}
.hero h1 em{font-style:italic;color:var(--accent);font-weight:450}
.hero .lead{font-size:1.2rem;line-height:1.6;color:var(--ink2);max-width:560px;margin-bottom:28px}
.facts{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,auto);gap:10px 30px;justify-content:start}
.facts li{font-size:.94rem;color:var(--ink2);display:flex;gap:9px;align-items:center}
.facts li:before{content:"";width:18px;height:18px;border-radius:50%;background:var(--amber-t) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237d5f27' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat;flex:none}
.person{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:14px 14px 10px;box-shadow:0 24px 60px -34px rgba(60,44,12,.5)}
.person img{width:100%;height:auto;aspect-ratio:4/4.6;object-fit:cover;object-position:center 18%;border-radius:12px}
.person figcaption{padding:16px 8px 8px;display:flex;flex-direction:column;gap:2px;align-items:center;text-align:center}
.person strong{font-family:var(--head);font-weight:550;font-size:1.35rem;letter-spacing:-.01em}
.person span{color:var(--muted);font-size:.92rem}
.person figure{margin:0}

/* wat zoek je */
.finder{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden}
.tabs{display:flex;flex-wrap:wrap;gap:14px 28px;padding:20px 22px 0}
.tabgroup{display:flex;flex-direction:column;gap:8px}
.tglabel{font:700 .74rem var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.tabrow{display:flex;flex-wrap:wrap;gap:8px}
.panel .eyebrow{display:block;margin-bottom:6px}
.tab{border:2px solid var(--line);background:#fff;color:var(--ink2);border-radius:99px;min-height:46px;padding:0 20px;font:600 .97rem var(--body);cursor:pointer;transition:all .15s}
.tab:hover{border-color:var(--gold);color:var(--brand-d)}
.tab[aria-selected="true"]{background:var(--brand);border-color:var(--brand);color:#fff}
.panel{padding:30px 32px 34px;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:start}
.panel h3{font-size:1.7rem;margin-bottom:10px}
.panel p{color:var(--ink2)}
.panel ul{margin:14px 0 22px;padding:0;list-style:none;display:grid;gap:8px}
.panel li{display:flex;gap:10px;font-size:.98rem}
.panel li:before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--brand);margin-top:.62em}
.fit{background:var(--brand-t);border-radius:var(--r);padding:22px 24px}
.fit .eyebrow{margin-bottom:6px}
.fit .big{font-family:var(--head);font-weight:550;font-size:2.6rem;line-height:1;letter-spacing:-.02em;color:var(--brand-d)}
.fit p{margin:8px 0 0;font-size:.92rem;color:var(--ink2)}
.js .panel[hidden]{display:none}
html:not(.js) .tabs{display:none}
html:not(.js) .panel{border-top:1px solid var(--line)}

/* drie manieren */
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.way{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:30px 28px;display:flex;flex-direction:column;gap:12px}
.way .tag{align-self:flex-start;background:var(--amber-t);color:#5d4516;font-weight:700;font-size:.8rem;padding:4px 12px;border-radius:99px}
.way h3{font-size:1.5rem}
.way p{color:var(--muted);margin:0}
.way .price{font-family:var(--head);font-weight:550;font-size:2.2rem;letter-spacing:-.02em;line-height:1;margin-top:auto;padding-top:8px}
.way .price small{font-family:var(--body);font-weight:500;font-size:.9rem;color:var(--muted);letter-spacing:0}
.way .textlink{align-self:flex-start}

/* hulpvragen */
.themes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 48px;border-top:1px solid var(--line)}
.themes li{padding:20px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr;gap:4px;align-content:start}
.themes h3{font-size:1.4rem}
.themes p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.6}
.themes .fine{display:block;margin-top:6px;font-size:.84rem;font-weight:700;color:var(--accent)}
.note{background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--amber);border-radius:var(--r);padding:20px 24px;font-size:.96rem;color:var(--ink2)}
.note strong{color:var(--ink)}

/* tarieven */
.rates{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rate{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:28px}
.rate .eyebrow{color:var(--muted)}
.rate .price{font-family:var(--head);font-weight:500;font-size:3.4rem;letter-spacing:-.025em;line-height:1;margin:10px 0 10px;color:var(--brand-d)}
.rate .price small{font-family:var(--body);font-size:1rem;font-weight:500;letter-spacing:0;color:var(--muted)}
.rate p{margin:0;color:var(--muted);font-size:.95rem}

/* stappen */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:s}
.steps li{counter-increment:s;position:relative;padding-top:56px}
.steps li:before{content:counter(s);position:absolute;top:0;left:0;width:42px;height:42px;border-radius:50%;background:var(--brand);color:#fff;font:600 1.15rem/42px var(--head);text-align:center}
.steps li:after{content:"";position:absolute;top:21px;left:54px;right:-12px;height:2px;background:var(--line)}
.steps li:last-child:after{display:none}
.steps h3{margin-bottom:6px;font-size:1.4rem}
.steps p{margin:0;color:var(--muted);font-size:.95rem}

/* over teaser */
.meet{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}
.meet .person{max-width:420px}
.meet blockquote{margin:14px 0 20px;font-family:var(--head);font-weight:450;font-style:italic;font-size:clamp(2rem,3.4vw,2.9rem);line-height:1.15;letter-spacing:-.015em}
.meet p{color:var(--ink2)}
.creds{margin:22px 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.creds li{background:#fff;border:1px solid var(--line);color:var(--brand-d);font-weight:600;font-size:.88rem;padding:6px 14px;border-radius:99px}

/* praktisch */
.practical{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pcell{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.pcell h3{font-size:1.3rem;margin-bottom:8px;color:var(--brand-d)}
.pcell p{margin:0;font-size:.95rem;color:var(--muted)}
.pcell address{font-style:normal;font-size:.95rem;color:var(--ink2)}

/* faq */
.faq{border-top:1px solid var(--line);max-width:860px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 0;font-family:var(--head);font-weight:500;font-size:1.35rem;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--brand-t) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237d5f27' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/14px no-repeat}
.faq details[open] summary:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237d5f27' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E")}
.faq details p{margin:0 0 20px;color:var(--ink2);max-width:720px}

/* cta band */
.band{background:#25231b;color:#efe9dc;padding:80px 0}
.band-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.band h2{color:#fff;margin-bottom:14px}
.band p{color:#d9d2c1;max-width:520px}
.band .contact-list{display:grid;gap:14px;border-left:1px solid rgba(255,255,255,.2);padding-left:36px}
.band .contact-list span{display:block;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--amber)}
.band .contact-list a,.band .contact-list b{font-family:var(--head);font-weight:500;font-size:1.6rem;letter-spacing:-.01em;text-decoration:none;color:#fff;overflow-wrap:anywhere}
.band .contact-list a:hover{color:var(--amber)}

/* paginakop */
.pagehead{background:var(--paper);border-bottom:1px solid var(--line);padding:56px 0 48px}
.pagehead h1{font-size:clamp(2.3rem,4.6vw,3.6rem);margin:12px 0 14px}
.pagehead p{max-width:660px;font-size:1.15rem;color:var(--ink2);margin:0}
.pagehead .actions{margin-top:24px}
.crumbs{font-size:.9rem;color:var(--muted);margin-bottom:6px}
.crumbs a{text-decoration:none;color:var(--accent)}

/* trajectkaarten */
.tgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.tcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:28px;display:grid;grid-template-rows:auto auto 1fr auto;gap:10px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}
.tgrid .tcard:last-child:nth-child(odd){grid-column:1/-1}
.tcard:hover{border-color:var(--gold);box-shadow:0 14px 36px -24px rgba(60,44,12,.5)}
.tcard .for{align-self:start;background:var(--paper);color:var(--brand-d);font-weight:700;font-size:.8rem;padding:4px 12px;border-radius:99px;justify-self:start}
.tcard h3{font-size:1.5rem}
.tcard p{margin:0;color:var(--muted);font-size:.96rem}
.tcard .foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--line);margin-top:6px}
.tcard .price{font-family:var(--head);font-weight:550;font-size:2.3rem;line-height:1;letter-spacing:-.02em;color:var(--brand-d)}
.tcard .was{display:block;font-family:var(--body);font-weight:500;font-size:.85rem;color:var(--muted);letter-spacing:0;text-decoration:line-through;margin-bottom:4px}
.tcard .meta{font-size:.85rem;font-weight:600;color:var(--ink2);text-align:right}
.badge{display:inline-block;background:var(--amber-t);color:#5d4516;font-weight:700;font-size:.78rem;padding:3px 10px;border-radius:99px}

.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.tbl{width:100%;border-collapse:collapse;font-size:.96rem;min-width:620px}
.tbl th,.tbl td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl th{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--bg)}
.tbl .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.tbl .sv{color:var(--ok);font-weight:700}
.tbl .tp{font-family:var(--head);font-weight:600;font-size:1.25rem;color:var(--brand-d)}
.tbl a{text-decoration:none;font-weight:700;color:var(--brand-d)}
.tbl small{display:block;color:var(--muted);font-weight:400}

.example{background:#25231b;color:#efe9dc;border-radius:var(--r);padding:34px 36px;margin-top:28px}
.example .eyebrow{color:var(--amber)}
.example h3{color:#fff;font-size:1.6rem;margin:6px 0 20px}
.sum{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.sum .big{font-family:var(--head);font-weight:500;font-size:3rem;line-height:1;letter-spacing:-.02em;color:#fff}
.sum .big.hl{color:var(--amber)}
.sum p{margin:8px 0 0;color:#d9d2c1;font-size:.95rem}
.sum .total{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.2);padding-top:16px;color:#efe9dc}

.traject{padding:60px 0;border-top:1px solid var(--line)}
.traject-grid{display:grid;grid-template-columns:1fr 380px;gap:56px;align-items:start}
.traject h2{font-size:clamp(1.9rem,3vw,2.5rem);margin:10px 0 8px}
.traject .for{color:var(--muted);margin-bottom:16px}
.sessions{list-style:none;margin:20px 0 14px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sessions li{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-weight:600;font-size:.95rem}
.sessions b{flex:none;width:28px;height:28px;border-radius:50%;background:var(--amber-t);color:#5d4516;font:600 .9rem/28px var(--head);text-align:center}
.priceblock{position:sticky;top:104px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:26px}
.priceblock dl{margin:0 0 16px}
.priceblock dl div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.95rem}
.priceblock dt{color:var(--muted)}
.priceblock dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
.priceblock .save dd{color:var(--ok)}
.priceblock .tot{border-bottom:0;padding-top:14px;align-items:baseline}
.priceblock .tot dt{color:var(--ink);font-weight:700}
.priceblock .tot dd{font-family:var(--head);font-weight:550;font-size:2.5rem;line-height:1;letter-spacing:-.02em;color:var(--brand-d)}
.priceblock .small{font-size:.84rem;color:var(--muted);margin:0 0 16px}

/* over mij */
.story{max-width:760px}
.story .lead2{font-family:var(--head);font-weight:450;font-size:clamp(1.65rem,2.6vw,2.15rem);line-height:1.3;letter-spacing:-.01em;color:var(--ink)}
.story h2{font-size:clamp(1.8rem,2.8vw,2.3rem);margin:44px 0 14px}
.story p{color:var(--ink2);line-height:1.8}
.story .closing{font-family:var(--head);font-weight:450;font-style:italic;font-size:1.75rem;line-height:1.3;color:var(--accent);margin:32px 0 6px;padding-top:26px;border-top:2px solid var(--gold)}
.aboutgrid{display:grid;grid-template-columns:1fr 340px;gap:72px;align-items:start}
.aboutside{position:sticky;top:104px;display:grid;gap:16px}
.cred-list{margin:0;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.cred-list div{padding:14px 18px;border-bottom:1px solid var(--line)}
.cred-list div:last-child{border-bottom:0}
.cred-list dt{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cred-list dd{margin:2px 0 0;font-weight:600;font-size:.95rem}

/* contact */
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
.quick{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:26px}
.quick a{display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;text-decoration:none;transition:border-color .15s}
.quick a:hover{border-color:var(--gold)}
.quick .eyebrow{color:var(--muted);font-size:.72rem}
.quick strong{display:block;font-family:var(--head);font-weight:550;font-size:1.45rem;letter-spacing:-.01em;color:var(--brand-d);margin-top:4px;overflow-wrap:anywhere}
.form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:30px}
.form h2{font-size:1.7rem;margin-bottom:6px}
.field{display:grid;gap:6px;margin:16px 0}
.field label{font-weight:700;font-size:.95rem}
.field label small{font-weight:400;color:var(--muted)}
.field input,.field textarea{width:100%;font:400 1rem var(--body);color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:10px;padding:13px 14px;min-height:50px}
.field textarea{min-height:130px;resize:vertical}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 4px var(--amber-t)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form .fine{font-size:.86rem;color:var(--muted);margin:14px 0 0}
.sent{display:none;background:var(--amber-t);border-radius:10px;padding:14px 18px;margin-bottom:16px;font-weight:600;color:var(--brand-d)}
.sent.show{display:block}
address{font-style:normal}
.mapcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:26px}
.mapcard address{font-family:var(--head);font-weight:500;font-size:1.7rem;line-height:1.2;letter-spacing:-.01em;margin:8px 0 12px}


.doc{padding:60px 0 90px}
.doc .wrap{max-width:760px}
.doc h1{font-size:clamp(2.2rem,5vw,3.2rem);margin-bottom:20px}
.doc h2{font-size:1.5rem;margin:34px 0 8px}
.doc p{color:var(--ink2)}
.doc a{color:var(--accent);font-weight:600}

.quoteband{padding:64px 0;background:var(--paper);text-align:center}
.quoteband blockquote{margin:0 auto;max-width:860px;font-family:var(--head);font-style:italic;font-weight:450;font-size:clamp(1.8rem,3.4vw,2.8rem);line-height:1.22;color:var(--brand-d)}
.quoteband cite{display:block;margin-top:16px;font-style:normal;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.vormen{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.vorm{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:var(--r);padding:26px 26px 24px}
.vorm h3{margin-bottom:6px}
.vorm .price{font-family:var(--head);font-weight:500;font-size:2.8rem;line-height:1;letter-spacing:-.02em;color:var(--brand-d);margin:10px 0}
.vorm .price small{font-family:var(--body);font-size:.95rem;font-weight:500;color:var(--muted);letter-spacing:0}
.vorm p{margin:0;color:var(--muted);font-size:.95rem}
.also{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;background:var(--paper);border-radius:var(--r);padding:30px 34px}
.also h3{font-size:1.7rem;margin:0 0 6px}
.also p{margin:0;color:var(--ink2);max-width:640px}
.dock{display:none}

footer{background:#1c1b15;color:#bdb6a4;padding:60px 0 26px;font-size:.95rem;line-height:1.7}
footer a{text-decoration:none;color:#d6cfbc}
footer a:hover{color:#fff;text-decoration:underline}
footer .fgrid{display:grid;grid-template-columns:1.5fr 1fr 1.1fr 1.1fr;gap:44px;padding-bottom:42px}
footer .fname{display:block;font-family:var(--head);font-size:1.9rem;font-weight:500;color:#fff;line-height:1.1;margin-bottom:12px}
footer .fname em{color:var(--amber);font-style:italic}
footer .fbrand p{margin:0 0 22px;max-width:320px;color:#a9a290}
footer .fcol{display:flex;flex-direction:column;gap:7px;align-items:flex-start}
footer .fcol h2{font:700 .78rem var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin:0 0 8px}
footer address{font-style:normal;margin-top:4px}
footer .fbottom{border-top:1px solid #34312a;padding-top:20px;display:flex;justify-content:space-between;gap:12px 28px;flex-wrap:wrap;font-size:.84rem;color:#8f887a}
footer .fbottom p{margin:0}
@media(max-width:1060px){
  .links .tel{display:none}
  .traject-grid{grid-template-columns:1fr 330px;gap:36px}
  .practical{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr);row-gap:34px}
  .steps li:after{display:none}
}
@media(max-width:860px){
  footer .fgrid{grid-template-columns:1fr 1fr;gap:34px 24px}
  footer .fbrand{grid-column:1/-1}
  footer{padding:46px 0 96px}
  .toggle{display:block}
  .links{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);padding:14px 20px 22px;flex-direction:column;align-items:stretch;gap:2px;box-shadow:0 20px 30px -24px rgba(0,0,0,.35)}
  .links.open{display:flex}
  .links a:not(.btn){font-size:1.1rem;min-height:52px;padding:0 10px;border-bottom:1px solid var(--line);border-radius:0}
  .links .tel{display:flex}
  .links .btn{margin:14px 0 0;min-height:54px}
  .hero-grid,.meet,.band-grid,.contact-grid,.aboutgrid,.traject-grid{grid-template-columns:1fr;gap:34px}
  .priceblock,.aboutside{position:static}
  .meet .person{max-width:360px}
  .band .contact-list{border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.2);padding-top:26px}
}
@media(max-width:720px){
  body{font-size:16.5px;padding-bottom:76px}
  .wrap{width:calc(100% - 36px)}
  section{padding:58px 0}
  .hero{padding:34px 0 52px}
  .hero-grid{gap:30px}
  .person{padding:10px 10px 8px;border-radius:18px;max-width:380px;margin-inline:auto}
  .person img{aspect-ratio:4/4.4;border-radius:10px}
  .facts{grid-template-columns:1fr}
  .three,.rates,.tgrid,.themes,.panel,.sum,.sessions,.quick,.practical,.vormen{grid-template-columns:1fr}
  .also{padding:24px 22px}
  .steps{grid-template-columns:1fr}
  .themes{gap:0}
  .panel{padding:22px 20px 26px;gap:22px}
  .tabs{padding:16px 14px 0;gap:16px}
  .tab{min-height:48px}
  .example{padding:26px 22px}
  .band{padding:56px 0}
  .pagehead{padding:36px 0 34px}
  .pagehead .actions .btn,.actions .btn{flex:1 1 100%}
  .traject{padding:44px 0}
  .logo img{height:50px;width:auto}
  .nav{gap:12px}
  .toggle{padding:0 14px}
  .dock{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line)}
  .dock .btn{flex:1;min-height:52px;padding:0 10px}
}
@media(max-width:1200px){
  .toggle{display:block}
  .links{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);padding:14px 20px 22px;flex-direction:column;align-items:stretch;gap:2px;box-shadow:0 20px 30px -24px rgba(0,0,0,.35)}
  .links.open{display:flex}
  .links a:not(.btn){font-size:1.1rem;min-height:52px;padding:0 10px;border-bottom:1px solid var(--line);border-radius:0}
  .links .tel{display:flex}
  .links .btn{margin:14px 0 0;min-height:54px}
  .nav{gap:12px}
}
@media(max-width:480px){footer .fgrid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{header,.dock{display:none}}
.fit .alt-row{margin-top:18px;padding-top:16px;border-top:1px solid #dccfb3}
.fit .alt-row .mid{font-family:var(--head);font-weight:550;font-size:1.9rem;line-height:1.1;color:var(--brand-d);margin-top:2px}
.fit .alt-row p{margin-top:6px}

.smallprint{font-size:.85rem;line-height:1.6;color:var(--muted);margin:0}
.smallprint strong{color:var(--ink2)}

.tcard .more{display:inline-block;margin-top:14px;font-weight:700;font-size:.92rem;color:var(--accent)}
.tcard:hover .more{text-decoration:underline}

.hero .micro{margin:16px 0 0;font-size:.95rem;color:var(--muted)}
.hero .micro a{font-weight:700;color:var(--accent);text-decoration:none;white-space:nowrap}
.hv{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 48px;border-top:1px solid var(--line)}
.hv li{padding:16px 0 16px 26px;border-bottom:1px solid var(--line);font-family:var(--head);font-weight:500;font-size:1.3rem;line-height:1.3;color:var(--brand-d);position:relative}
.hv li:before{content:"";position:absolute;left:2px;top:1.35em;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.steps.s3{grid-template-columns:repeat(3,1fr);gap:34px}
.flow{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:14px}
.flow li{display:flex;gap:14px;align-items:flex-start;color:var(--ink2);font-size:.98rem}
.flow b{flex:none;width:32px;height:32px;border-radius:50%;background:var(--brand);color:#fff;font:600 1rem/32px var(--head);text-align:center}
.flow strong{color:var(--brand-d)}
.sent.err{background:#f9e9e4;border-color:#e0b4a8;color:#6b2a1a}
.p-contact .dock{display:none}
@media(max-width:860px){.steps.s3{grid-template-columns:1fr;gap:26px}.steps.s3 li:after{display:none}}
@media(max-width:720px){.hv{grid-template-columns:1fr}.hv li{font-size:1.2rem;padding:13px 0 13px 24px}}

.meet.meet1{grid-template-columns:1fr;max-width:820px}
@media(max-width:860px){
  .hero-grid .person{order:-1;max-width:320px;margin-inline:auto;padding:8px 8px 6px}
  .hero-grid .person img{aspect-ratio:4/3.1;object-position:center 22%}
  .hero-grid .person figcaption{padding:10px 8px 6px}
  .hero{padding-top:22px}
}

.dock .dock-tel{flex:0 0 60px;padding:0}.dock .dock-tel svg{width:24px;height:24px;margin:0}

.prose{max-width:780px}
.prose h2{font-size:clamp(1.7rem,3vw,2.2rem);margin-bottom:14px}
.prose p{color:var(--ink2);font-size:1.05rem;line-height:1.75}
.checks{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:12px}
.checks li{position:relative;padding:14px 18px 14px 44px;background:var(--surface);border:1px solid var(--line);border-radius:14px;color:var(--ink2);font-size:1.02rem}
.checks li:before{content:"";position:absolute;left:18px;top:1.35em;width:10px;height:10px;border-radius:50%;background:var(--gold)}
.trajline{margin:0;padding:20px 24px;background:var(--paper);border-radius:var(--r);color:var(--ink2)}
.rels{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rel{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;text-decoration:none;transition:border-color .15s}
.rel:hover{border-color:var(--gold)}
.rel strong{display:block;font-family:var(--head);font-weight:550;font-size:1.3rem;color:var(--brand-d);margin-top:4px}
.themes .textlink{margin-top:8px;display:inline-block;font-size:.95rem}
@media(max-width:860px){.rels{grid-template-columns:1fr}.prose p{font-size:1.02rem}.checks li{padding:13px 16px 13px 40px}.checks li:before{left:16px}}

/* Prijstabel op smalle schermen: elke rij wordt een blokje */
@media (max-width:640px){
  .tbl{min-width:0;display:block}
  .tbl thead{position:absolute;left:-9999px}
  .tbl tbody,.tbl tr,.tbl td{display:block}
  .tbl tr{padding:14px 16px;border-bottom:1px solid var(--line)}
  .tbl tr:last-child{border-bottom:0}
  .tbl td{border:0;padding:2px 0;text-align:left}
  .tbl td.num{display:flex;justify-content:space-between;align-items:baseline;gap:12px;text-align:right}
  .tbl td:nth-child(2)::before{content:"Duur";color:var(--muted);font-size:.85rem}
  .tbl td:nth-child(3)::before{content:"Los geboekt";color:var(--muted);font-size:.85rem}
  .tbl td:nth-child(4)::before{content:"Trajectprijs";color:var(--muted);font-size:.85rem}
  .tbl td:first-child{margin-bottom:6px;font-size:1.02rem}
}
.tbl td.tp::before{font-family:"Figtree",system-ui,sans-serif;font-weight:400}
.backlink{margin:14px 0 0;font-size:.92rem;text-align:center}

/* Premium laag: warm papier, diepere tonen, goud als fijne lijn */
:root{--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .20 0 0 0 0 .15 0 0 0 0 .07 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--hair:linear-gradient(90deg,transparent,rgba(176,136,64,.55),transparent)}
.hero{background:var(--grain),radial-gradient(820px 520px at 88% 18%,#ead7aa 0,rgba(234,215,170,0) 70%),radial-gradient(700px 420px at 0% 100%,#f0e4c9 0,rgba(240,228,201,0) 70%),var(--bg);position:relative}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--hair)}
section.tint,.tint{background:var(--grain),linear-gradient(180deg,#f2e9d6 0,#e9dec6 100%)}
section.white,.white,#aanbod{background:var(--grain),#fffdf8}
.white,#aanbod,.tint{position:relative}
.white:before,#aanbod:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--hair)}
.band{position:relative;overflow:hidden;background:radial-gradient(700px 420px at 90% 0%,rgba(176,136,64,.28) 0,rgba(176,136,64,0) 70%),radial-gradient(600px 400px at 0% 100%,rgba(176,136,64,.12) 0,rgba(176,136,64,0) 70%),#1e1c15;border-top:1px solid rgba(176,136,64,.55)}
.band:after{content:"MB";position:absolute;right:-1.5rem;bottom:-7rem;font-family:var(--head);font-style:italic;font-weight:400;font-size:26rem;line-height:1;letter-spacing:-.04em;color:rgba(217,189,133,.06);pointer-events:none;user-select:none}
.band .wrap{position:relative;z-index:1}
footer{border-top:1px solid rgba(176,136,64,.55);background:radial-gradient(800px 300px at 50% 0%,rgba(176,136,64,.10) 0,rgba(176,136,64,0) 70%),#181711}
.pagehead{background:var(--grain),radial-gradient(760px 340px at 88% 0%,#ead7aa 0,rgba(234,215,170,0) 70%),var(--bg)}
@media (max-width:720px){.band:after{font-size:14rem;right:-1rem;bottom:-3.5rem}}
