/* Gedeelde stijlen. Eenmaal geladen, daarna gecached. */
  /* ===================== GEDEELDE CHROME (uit de header/footer van het Fable-systeem) ===================== */
  *{margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{background:#FAFAF8;}
  .cv-skip{position:absolute;left:-999px;top:0;background:#1A2E4D;color:#fff;padding:10px 16px;border-radius:0 0 8px 0;z-index:100;font-family:"Atkinson Hyperlegible",system-ui,sans-serif;font-weight:600;}
  .cv-skip:focus{left:0;}
  #rcchrome *,#rcchrome *::before,#rcchrome *::after{box-sizing:border-box;}
  #rcchrome a:focus-visible,#rcchrome button:focus-visible{outline:2px solid var(--copper); outline-offset:2px;}
  /* ---------- HEADER ---------- */
  #rcchrome .hd-top{background:var(--teal-dark); color:#fff; font-size:13px; letter-spacing:.06em; font-weight:500; padding:9px 0;}
  #rcchrome .hd-top .in{max-width:1220px; margin:0 auto; padding:0 32px;}
  #rcchrome .hd-main{background:var(--bg); border-bottom:1px solid var(--line);}
  #rcchrome .hd-inner{max-width:1220px; margin:0 auto; padding:20px 32px; display:flex; align-items:center; justify-content:space-between; gap:24px;}
  #rcchrome .hd-brand{display:flex; align-items:center; gap:11px; font-family:var(--serif); font-size:28px; color:var(--ink); letter-spacing:-.01em; line-height:1; text-decoration:none;}
  #rcchrome .hd-right{display:flex; align-items:center; gap:30px;}
  #rcchrome .hd-menu{display:flex; align-items:center; gap:30px; font-size:16px;}
  #rcchrome .hd-menu a{color:var(--ink-soft); text-decoration:none; display:inline-flex; align-items:center; gap:6px; padding:6px 0; position:relative;}
  #rcchrome .hd-menu a::after{content:""; position:absolute; left:0; right:100%; bottom:-2px; height:2px; background:var(--teal); transition:right .22s ease;}
  #rcchrome .hd-menu a:hover{color:var(--teal);}
  #rcchrome .hd-menu a:hover::after{right:0;}
  #rcchrome .hd-menu a[aria-current="page"]{color:var(--teal);}
  #rcchrome .hd-menu a[aria-current="page"]::after{right:0;}
  #rcchrome .hd-menu .caret{font-size:10px; opacity:.55;}
  #rcchrome .hd-actions{display:flex; align-items:center; gap:12px;}
  #rcchrome .hd-search{width:42px; height:42px; border-radius:var(--radius); background:var(--teal); display:flex; align-items:center; justify-content:center; cursor:pointer; border:none;}
  #rcchrome .hd-search .mg{width:15px; height:15px; border:2px solid #fff; border-radius:50%; position:relative;}
  #rcchrome .hd-search .mg::after{content:""; position:absolute; width:7px; height:2px; background:#fff; right:-5px; bottom:0; transform:rotate(45deg);}
  #rcchrome .hd-cta{background:transparent; color:var(--teal-dark); font-weight:700; font-size:16px; text-decoration:none; padding:10px 4px; border-bottom:2px solid var(--copper);}
  #rcchrome .hd-cta:hover{color:var(--teal);}
  #rcchrome .hd-nav-item{position:relative;}
  #rcchrome .mega{position:absolute; top:calc(100% + 16px); left:50%; transform:translateX(-50%) translateY(6px); background:#fff; border:1px solid var(--line); border-radius:var(--radius); box-shadow:0 18px 50px rgba(26,26,46,.14); padding:16px; width:440px; display:grid; grid-template-columns:1fr 1fr; gap:6px; opacity:0; visibility:hidden; transition:opacity .18s ease, transform .18s ease; z-index:20;}
  #rcchrome .hd-nav-item:hover .mega,#rcchrome .hd-nav-item:focus-within .mega{opacity:1; visibility:visible; transform:translateX(-50%) translateY(0);}
  #rcchrome .mega a.mi{display:block; padding:12px 14px; border-radius:var(--radius); text-decoration:none;}
  #rcchrome .mega a.mi::after{display:none;}
  #rcchrome .mega a.mi:hover{background:var(--teal-light);}
  #rcchrome .mega .mi-t{font-weight:600; font-size:14.5px; color:var(--ink);}
  #rcchrome .mega .mi-d{font-size:12.5px; color:var(--muted); margin-top:2px;}
  /* ---------- FOOTER (antraciet) ---------- */
  #rcchrome .ft{background:var(--foot-bg); color:#fff;}
  #rcchrome .ft-inner{max-width:1220px; margin:0 auto; padding:56px 32px 26px; display:grid; grid-template-columns:1.6fr 1fr 1fr 1.4fr; gap:44px;}
  #rcchrome .ft-brand .fb-name{font-family:var(--serif); font-size:30px; margin-bottom:16px; color:#fff;}
  #rcchrome .ft-brand p{font-size:14.5px; line-height:1.65; color:var(--foot-txt); margin:0 0 14px; max-width:34ch;}
  #rcchrome .ft-brand .tagit{font-style:italic; color:var(--teal-soft); font-size:14.5px;}
  #rcchrome .ft-col h4,#rcchrome .ft-news h4{font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.5); margin:6px 0 18px; font-weight:700;}
  #rcchrome .ft-col a{display:block; color:rgba(255,255,255,.9); text-decoration:none; font-size:15px; margin-bottom:13px;}
  #rcchrome .ft-col a:hover{color:var(--teal-soft);}
  #rcchrome .ft-col a.more{color:var(--teal-soft); font-weight:600; margin-top:4px;}
  #rcchrome .ft-news p{font-size:14.5px; line-height:1.55; color:var(--foot-txt); margin:0 0 14px;}
  #rcchrome .ft-news .nl-form{display:flex; flex-direction:column; gap:10px;}
  #rcchrome .ft-news input{width:100%; padding:13px 16px; border-radius:var(--radius); border:1px solid var(--foot-line); background:rgba(255,255,255,.05); color:#fff; font-family:var(--sans); font-size:14px;}
  #rcchrome .ft-news input::placeholder{color:rgba(255,255,255,.45);}
  #rcchrome .ft-news input:focus{outline:none; border-color:var(--teal-soft);}
  #rcchrome .ft-news button{background:var(--teal); color:#fff; border:none; border-radius:var(--radius); padding:13px; font-family:var(--sans); font-size:15px; font-weight:700; cursor:pointer;}
  #rcchrome .ft-news button:hover{background:var(--teal-dark);}
  #rcchrome .ft-news .nl-fine{font-size:12px; color:rgba(255,255,255,.45); margin-top:4px;}
  #rcchrome .ft-disc{max-width:1220px; margin:0 auto; padding:26px 32px 0; text-align:center; font-size:13px; line-height:1.6; color:rgba(255,255,255,.5);}
  #rcchrome .ft-bar{border-top:1px solid var(--foot-line); background:var(--foot-bg2);}
  #rcchrome .ft-bar .in{max-width:1220px; margin:0 auto; padding:18px 32px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:12.5px; color:var(--foot-txt);}
  #rcchrome .ft-bar a{color:var(--foot-txt); text-decoration:none;}
  #rcchrome .ft-bar a:hover{color:#fff;}
  #rcchrome .ft-bar .legal{display:flex; gap:22px; flex-wrap:wrap;}
  @media (max-width:900px){
    #rcchrome .hd-menu{gap:18px; font-size:15px;}
    #rcchrome .ft-inner{grid-template-columns:1fr 1fr; gap:34px;}
    #rcchrome .ft-news{grid-column:1 / -1;}
  }
  @media (max-width:560px){#rcchrome .ft-inner{grid-template-columns:1fr;}}

  /* ==========================================================================
     MOBIEL MENU EN ZOEKEN — toegevoegd 2026-09-15 (blokkers B1 en B2)
     Vóór deze wijziging zette dit bestand op ≤560 px `.hd-menu{display:none}`
     en `.mega{display:none}`, zonder dat er ergens een knop bestond om het
     menu terug te halen: er stond geen regel JavaScript in dit theme. Het
     hoofdmenu was daarmee op elke pagina onbereikbaar voor een mobiele
     bezoeker. De harde display:none is hier vervangen door een toestand die
     de hamburgerknop omschakelt (data-open op .hd-navwrap).
     Boven 560 px verandert er niets: .hd-navwrap staat op display:contents,
     dus .hd-menu blijft een direct flex-kind van .hd-right, en de
     hamburgerknop en het mobiele zoekveld staan op display:none.
     ========================================================================== */

  /* Alleen voor schermlezers. */
  #rcchrome .cv-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;}

  /* De wrapper is op desktop layout-neutraal. */
  #rcchrome .hd-navwrap{display:contents;}
  #rcchrome .hd-burger{display:none;}
  #rcchrome .hd-msearch{display:none;}

  /* ---------- Zoekformulier in de header (B2) ---------- */
  /* .hd-search zelf houdt zijn bestaande vorm; het formulier eromheen voegt
     geen breedte toe en het veld schuift absoluut uit, zodat de knop en
     "Start hier" op geen enkel moment verspringen. */
  #rcchrome .hd-searchform{position:relative; display:flex; align-items:center;}
  #rcchrome .hd-sinput{width:180px; padding:9px 12px; margin-right:8px; border:1px solid var(--line); border-radius:var(--radius);
    background:#fff; color:var(--ink); font-family:var(--sans); font-size:15px;}
  #rcchrome .hd-sinput:focus{outline:none; border-color:var(--teal);}
  /* Met JavaScript: ingeklapt tot de knop hem uitschuift. Zonder JavaScript
     blijft het veld gewoon staan — een zichtbaar veld dat werkt is beter dan
     een knop die niets doet, en dat was precies de meting van 15-09. */
  #rcchrome .hd-searchform.has-js .hd-sinput{position:absolute; right:50px; top:50%; transform:translateY(-50%);
    width:0; padding:9px 0; margin:0; border-width:0; opacity:0; pointer-events:none;
    transition:width .18s ease, opacity .18s ease, padding .18s ease;}
  /* Het uitgeschoven veld zweeft over het menu heen; de schaduw maakt zichtbaar
     dat het een laag erboven is en niet een half afgekapt menu-item. */
  #rcchrome .hd-searchform.has-js[data-open="true"] .hd-sinput{width:260px; padding:9px 12px; border-width:1px; opacity:1; pointer-events:auto;
    box-shadow:0 10px 30px rgba(26,26,46,.18);}

  /* ---------- Onder 800 px (28-09-2026: was 560 px; tot 800 px brak het menu over twee regels; tussen 561 en 699 px liep de volledige menubalk 691 px breed en ontstond horizontaal scrollen) ---------- */
  @media (max-width:800px){
    #rcchrome .hd-inner{padding:16px; gap:12px;}
    #rcchrome .hd-brand{font-size:23px;}
    #rcchrome .hd-brand svg{width:28px; height:28px;}
    #rcchrome .hd-right{gap:10px;}
    #rcchrome .hd-actions{gap:10px;}
    #rcchrome .hd-cta{font-size:15px; padding:8px 2px;}
    #rcchrome .hd-main{position:relative;}

    /* Het bureaubladzoekveld verdwijnt; zoeken zit in het uitgeklapte menu. */
    #rcchrome .hd-searchform{display:none;}

    /* Hamburger. */
    #rcchrome .hd-burger{display:flex; flex-direction:column; justify-content:center; gap:4px;
      width:42px; height:42px; padding:0 10px; border:1px solid var(--line); border-radius:var(--radius);
      background:#fff; cursor:pointer;}
    #rcchrome .hd-burger .bl{display:block; height:2px; width:100%; background:var(--teal-dark); border-radius:2px;}
    #rcchrome .hd-burger[aria-expanded="true"]{background:var(--teal); border-color:var(--teal);}
    #rcchrome .hd-burger[aria-expanded="true"] .bl{background:#fff;}

    /* Het paneel is de wrapper zélf: absoluut gepositioneerd onder de
     * headerbalk, zodat hij geen breedte inneemt in .hd-right. Stond het
     * zoekveld eerst nog in de flow, dan duwde het de hamburger en "Start
     * hier" van het scherm af — gemeten op 400 px: scrollWidth 570. */
    #rcchrome .hd-navwrap{display:none; position:absolute; left:0; right:0; top:100%; z-index:30;
      background:var(--bg); border-bottom:1px solid var(--line);
      box-shadow:0 18px 40px rgba(26,26,46,.14); padding:6px 16px 14px;
      max-height:calc(100vh - 64px); overflow-y:auto; overscroll-behavior:contain;}
    #rcchrome .hd-navwrap[data-open="true"]{display:block;}
    #rcchrome .hd-menu{display:flex; flex-direction:column; align-items:stretch; gap:0; font-size:16px;}
    #rcchrome .hd-menu > a,#rcchrome .hd-nav-item > a{padding:13px 0; border-bottom:1px solid var(--line);}
    #rcchrome .hd-menu a::after{display:none;}
    #rcchrome .hd-nav-item{position:static;}

    /* Mega-inhoud wordt een ingesprongen platte lijst; geen uitklapniveau.
     * De selector draagt bewust [data-open] erbij: zonder dat extra stukje
     * weegt hij lichter dan `#rcchrome .hd-nav-item:focus-within .mega`, en
     * die zet transform:translateX(-50%) terug zodra het eerste menu-item
     * focus krijgt — precies wat er bij het openen gebeurt. Gemeten op
     * 400 px: het paneel stond dan op x = -154. */
    #rcchrome .hd-navwrap[data-open="true"] .mega{position:static; display:block; opacity:1; visibility:visible;
      transform:none; left:auto; right:auto; width:auto; padding:2px 0 8px 14px; margin:0; border:0; border-radius:0;
      background:transparent; box-shadow:none;}
    #rcchrome .mega a.mi{padding:10px 0;}
    #rcchrome .mega .mi-d{display:none;}

    /* Zoeken in het paneel. */
    #rcchrome .hd-msearch{display:flex; gap:8px; margin-top:14px;}
    #rcchrome .hd-msearch input{flex:1 1 auto; min-width:0; padding:11px 12px; border:1px solid var(--line);
      border-radius:var(--radius); background:#fff; color:var(--ink); font-family:var(--sans); font-size:16px;}
    #rcchrome .hd-msearch input:focus{outline:none; border-color:var(--teal);}
    #rcchrome .hd-msearch button{flex:0 0 auto; padding:11px 16px; border:none; border-radius:var(--radius);
      background:var(--teal); color:#fff; font-family:var(--sans); font-size:15px; font-weight:700; cursor:pointer;}
  }

  /* ==========================================================================
     NIEUWSBRIEF- EN WACHTLIJSTBLOK — toegevoegd 2026-09-15 (blokker B3)
     De bestaande opmaak van .nl-form (footer) en .nlform (homepage) blijft
     staan; hieronder alleen de wikkel, de melding en de kleine letter.
     ========================================================================== */
  .nl-blok{display:flex; flex-direction:column; gap:10px;}
  .cv-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;}
  .nl-melding{margin:0; padding:12px 14px; border-radius:var(--radius); font-size:14.5px; line-height:1.5;}
  .nl-melding--ok{background:var(--teal-light); color:var(--teal-dark); border:1px solid var(--teal);}
  .nl-melding--fout{background:#FDF1EA; color:#8A4A18; border:1px solid var(--copper);}
  /* 27-09-2026: paginastijlen (bijv. #rchome2 .nlband--deep p, #rcchrome .ft-news p) kleurden de melding onzichtbaar. */
  .nl-blok .nl-melding{margin:0 !important; padding:14px 16px !important; border-radius:var(--radius); font-size:15px !important; line-height:1.55 !important; font-weight:500 !important;}
  .nl-blok .nl-melding--ok{background:#fff !important; color:var(--teal-dark) !important; border:1px solid var(--teal) !important;}
  .nl-blok .nl-melding--fout{background:#FDF1EA !important; color:#8A4A18 !important; border:1px solid var(--copper) !important;}
  .nl-fine{font-size:12.5px; line-height:1.55; color:var(--muted);}
  .nl-fine a{color:inherit; text-decoration:underline;}
  #rcchrome .ft-news .nl-fine a{color:rgba(255,255,255,.7);}
  .band--deep .nl-fine,.nlband--deep .nl-fine{color:var(--teal-light);}
  .nl-form--inline{display:flex; flex-wrap:wrap; gap:10px;}
  .nl-form--inline input[type="email"]{flex:1 1 220px; min-width:0; padding:13px 15px; border:1px solid var(--line); border-radius:var(--radius);
    font-family:var(--sans); font-size:15.5px; color:var(--ink); background:#fff;}
  .nl-form--inline input[type="email"]:focus{outline:none; border-color:var(--teal);}
  .nl-form--inline button{flex:0 0 auto; padding:13px 20px; border:none; border-radius:var(--radius); background:var(--teal); color:#fff;
    font-family:var(--sans); font-size:15.5px; font-weight:700; cursor:pointer;}
  .nl-form--inline button:hover{background:var(--teal-dark);}
  .nl-blok button[disabled]{opacity:.5; cursor:not-allowed;}

  /* Wachtlijstpagina /nl/cursussen/ (blokker B4). */
  .cv-wachtlijst{max-width:760px;}
  .cv-wachtlijst .cvw-intro{font-size:18px; line-height:1.6; color:var(--ink-soft);}
  .cv-wachtlijst .nl-blok{margin:24px 0 40px; padding:22px; border:1px solid var(--line); border-radius:var(--radius); background:var(--bg-alt);}
  .cv-wachtlijst .cvw-pijler{padding:18px 0; border-top:1px solid var(--line);}
  .cv-wachtlijst .cvw-pijler h3{font-size:19px; margin:0 0 6px;}
  .cv-wachtlijst .cvw-pijler p{margin:0 0 10px; color:var(--ink-soft);}
  .cv-wachtlijst .cvw-pijler ul{margin:0; padding-left:20px;}
  .cv-wachtlijst .cvw-pijler li{margin:6px 0;}
  .cv-wachtlijst .cvw-disc{margin-top:32px; font-size:13px; line-height:1.6; color:var(--muted);}

  /* Zoekbalk op de zoekresultatenpagina (search.php). */
  .rcarc-zoek{display:flex; gap:10px; margin:0 0 28px; max-width:520px;}
  .rcarc-zoek input{flex:1 1 auto; min-width:0; padding:13px 15px; border:1px solid var(--line); border-radius:var(--radius);
    background:#fff; color:var(--ink); font-family:var(--sans); font-size:15.5px;}
  .rcarc-zoek input:focus{outline:none; border-color:var(--teal);}
  .rcarc-zoek button{flex:0 0 auto; padding:13px 20px; border:none; border-radius:var(--radius); background:var(--teal); color:#fff;
    font-family:var(--sans); font-size:15.5px; font-weight:700; cursor:pointer;}
  .rcarc-zoek button:hover{background:var(--teal-dark);}

  /* Geen animatie voor wie daarom vraagt. Het paneel schakelt dan hard om. */
  @media (prefers-reduced-motion:reduce){
    #rcchrome .hd-searchform.has-js .hd-sinput{transition:none;}
    html{scroll-behavior:auto;}
  }

  /* Hersteld 2026-08-31. Deze declaraties stonden zonder selector binnen een
     @media-blok dat nooit werd gesloten. Declaraties direct in een conditional
     group rule zijn ongeldig en worden door elke browser weggegooid — dit blok
     heeft dus nooit gewerkt. --teal en de rest stonden ook in fable-tokens.css en
     bleven daardoor onopgemerkt; --ev-high/mid/low/empty stonden ALLEEN hier en
     hebben dus nooit een waarde gehad. Bewijskleuren staan nu in fable-tokens.css. */
  #rcchrome{
    font-family:var(--sans); color:var(--ink);
    -webkit-font-smoothing:antialiased; box-sizing:border-box;
    background:var(--bg);
  }
/* ==========================================================================
   RECALORA v2 (29-09-2026): eigen identiteit op de opbouw van het Fable-systeem.
   Rx-regel in zand, logo als inline SVG, ronde knoppen, voet in diepblauw, één kopletter (Source Serif 4, 600).
   ========================================================================== */
#rcchrome{background:var(--bg);}
#rcchrome h1,#rcchrome h2,#rcchrome h3{font-family:var(--serif); font-weight:600; color:var(--teal); letter-spacing:-.005em;}
#rcchrome a:focus-visible,#rcchrome button:focus-visible,#rcchrome input:focus-visible{outline:2px solid var(--copper); outline-offset:2px;}
/* Rx-regel: compliance, rustig */
#rcchrome .hd-rx{background:var(--sand); border-bottom:1px solid #E2D8C4; color:#3A3F48; font-size:13.5px; line-height:1.45;}
#rcchrome .hd-rx .in{max-width:1220px; margin:0 auto; padding:8px 32px;}
#rcchrome .hd-rx a{color:var(--teal); font-weight:700; text-decoration:underline; text-decoration-color:var(--copper); text-underline-offset:3px; margin-left:6px; white-space:nowrap;}
#rcchrome .hd-rx .rx-kort{display:none;}
/* Merk */
#rcchrome .hd-inner{padding:16px 32px;}
#rcchrome .hd-brand{color:var(--teal); gap:0;}
#rcchrome .hd-brand .rc-logo{height:38px; width:auto; display:block;}
/* Menu: vet, diepblauw, koperen streep bij hover */
#rcchrome .hd-menu{gap:28px;}
#rcchrome .hd-menu a{color:var(--teal); font-weight:700; font-size:16px;}
#rcchrome .hd-menu a::after{background:var(--copper);}
#rcchrome .hd-menu a:hover,#rcchrome .hd-menu a[aria-current="page"]{color:var(--teal-dark);}
#rcchrome .hd-menu .caret{font-size:10px; color:var(--copper-txt); opacity:1;}
#rcchrome .mega{border-radius:var(--radius); box-shadow:0 18px 40px rgba(20,24,33,.12); width:500px; grid-template-columns:1fr; padding:10px;}
#rcchrome .mega a.mi{border-radius:4px; display:flex; gap:12px; align-items:flex-start;}
#rcchrome .mega a.mi:hover{background:var(--sand);}
#rcchrome .mega .mi-t{font-weight:700; font-size:15px; color:var(--teal);}
#rcchrome .mega .mi-d{font-size:13.5px; color:var(--muted);}
#rcchrome .mega .mi-ic{flex:none; width:22px; height:22px; margin-top:1px; color:var(--copper);}
#rcchrome .mega .mi-ic svg{width:22px; height:22px; display:block;}
/* Zoeken: rond, omlijnd */
#rcchrome .hd-search{background:#fff; border:1px solid var(--line); border-radius:999px;}
#rcchrome .hd-search .mg{border-color:var(--teal);}
#rcchrome .hd-search .mg::after{background:var(--teal);}
#rcchrome .hd-search:hover{border-color:var(--teal);}
#rcchrome .hd-sinput{border-radius:999px;}
/* Primaire knop */
#rcchrome .hd-cta{background:var(--teal); color:#F8F6F1; border:none; border-radius:999px; padding:11px 20px; font-size:15.5px; white-space:nowrap;}
#rcchrome .hd-cta:hover{background:var(--teal-dark); color:#fff;}
#rcchrome .hd-mcta{display:none;}
#rcchrome .hd-navwrap .hd-mcta{margin:14px 0 4px; text-align:center; background:var(--teal); color:#F8F6F1; font-weight:700; text-decoration:none; padding:12px 18px; border-radius:999px;}
/* Voet */
#rcchrome .ft-inner{grid-template-columns:1.5fr 1fr 1fr 1.2fr;}
#rcchrome .ft-brand .fb-name{margin:0 0 16px; color:#F8F6F1;}
#rcchrome .ft-brand .fb-name .rc-logo{height:34px; width:auto; display:block;}
#rcchrome .ft-brand .fb-name .rc-logo__punt{fill:var(--teal-soft);}
#rcchrome .ft-uitgever{font-size:13.5px; color:rgba(248,246,241,.6) !important;}
#rcchrome .ft-kop{font-family:var(--sans) !important; font-size:12px !important; letter-spacing:.1em; text-transform:uppercase; color:rgba(248,246,241,.55) !important; margin:6px 0 18px; font-weight:700;}
#rcchrome .ft-col a:hover{color:var(--teal-soft);}
#rcchrome .ft-knop{display:inline-block; margin-top:4px; background:var(--copper); color:#fff; font-weight:700; text-decoration:none; padding:11px 18px; border-radius:999px; font-size:15px;}
#rcchrome .ft-knop:hover{background:#9E6128;}
#rcchrome .ft-bar .legal a{margin-left:18px;}
/* Mobiel */
@media (max-width:800px){
  #rcchrome .hd-rx .in{padding:7px 16px; font-size:12.5px;}
  #rcchrome .hd-rx .rx-lang{display:none;}
  #rcchrome .hd-rx .rx-kort{display:inline;}
  #rcchrome .hd-inner{padding:12px 16px;}
  #rcchrome .hd-brand .rc-logo{height:30px;}
  #rcchrome .hd-cta{display:none;}
  #rcchrome .hd-burger{border-radius:999px; order:3;}
  #rcchrome .hd-burger .bl{background:var(--teal);}
  #rcchrome .hd-burger[aria-expanded="true"]{background:var(--teal); border-color:var(--teal);}
  #rcchrome .hd-navwrap[data-open="true"] .hd-mcta{display:block;}
  #rcchrome .hd-msearch input,#rcchrome .hd-msearch button{border-radius:999px;}
  #rcchrome .hd-msearch button{background:var(--teal);}
  #rcchrome .mega .mi-ic{display:none;}
  #rcchrome .ft-inner{grid-template-columns:1fr 1fr;}
}
@media (max-width:560px){#rcchrome .ft-inner{grid-template-columns:1fr;}}

/* ==========================================================================
   RECALORA v2: gedeelde pagina-opmaak (.rc-pagina) voor methodologie, over, tekstpagina's, alle artikelen,
   tools, zoeken en 404. Eén typeschaal voor alle sjablonen (tokens in fable-tokens.css).
   ========================================================================== */
.rc-pagina{color:var(--ink-soft); font-size:var(--body); line-height:1.7;}
.rc-pagina *,.rc-pagina *::before,.rc-pagina *::after{box-sizing:border-box;}
.rc-pagina .wrap{max-width:780px; margin:0 auto; padding:0 32px 72px;}
.rc-pagina .wrap--breed{max-width:1120px;}
.rc-pagina .crumb{font-size:13px; color:var(--muted); padding:26px 0 20px;}
.rc-pagina .crumb a{color:var(--muted); text-decoration:none;}
.rc-pagina .crumb a:hover{color:var(--teal);}
.rc-pagina .eyebrow{display:flex; align-items:center; gap:10px; font-size:12.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--copper-txt); margin:0 0 14px;}
.rc-pagina .eyebrow::before{content:""; width:22px; height:2px; background:var(--copper);}
.rc-pagina h1{font-family:var(--serif); font-weight:600; font-size:var(--h1); line-height:1.15; letter-spacing:-.01em; color:var(--teal); margin:0 0 18px;}
.rc-pagina h2{font-family:var(--serif); font-weight:600; font-size:var(--h2); line-height:1.2; color:var(--teal); margin:48px 0 14px;}
.rc-pagina h3{font-family:var(--serif); font-weight:600; font-size:var(--h3); line-height:1.3; color:var(--teal); margin:28px 0 8px;}
.rc-pagina p{margin:0 0 18px;}
.rc-pagina .lede{font-size:20px; line-height:1.6; color:var(--ink); margin:0 0 20px;}
.rc-pagina .meta{font-size:14px; color:var(--muted); padding:0 0 26px; border-bottom:1px solid var(--line); margin-bottom:8px;}
.rc-pagina ul,.rc-pagina ol{margin:0 0 20px; padding-left:24px;}
.rc-pagina li{margin:0 0 8px;}
.rc-pagina li::marker{color:var(--copper);}
.rc-pagina a{color:var(--teal); text-decoration:underline; text-decoration-color:var(--copper); text-underline-offset:3px;}
.rc-pagina a:hover{color:var(--teal-dark);}
.rc-pagina strong,.rc-pagina b{color:var(--ink);}
.rc-pagina .kader{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:20px 24px; margin:22px 0;}
.rc-pagina .kader--zand{background:var(--sand); border:0;}
.rc-pagina .kader > :last-child{margin-bottom:0;}
.rc-pagina .genummerd{list-style:none; padding:0; counter-reset:rcn; border-top:1px solid var(--line);}
.rc-pagina .genummerd > li{counter-increment:rcn; position:relative; padding:18px 0 18px 58px; border-bottom:1px solid var(--line); margin:0;}
.rc-pagina .genummerd > li::before{content:counter(rcn); position:absolute; left:0; top:16px; width:38px; height:38px; border-radius:50%; background:var(--teal); color:#F8F6F1; font-family:var(--serif); font-weight:600; font-size:18px; display:flex; align-items:center; justify-content:center;}
.rc-pagina .genummerd > li > b:first-child{display:block; color:var(--teal); font-size:18px; margin-bottom:2px;}
.rc-pagina .treden{list-style:none; padding:0; border-top:1px solid var(--line);}
.rc-pagina .treden li{display:grid; grid-template-columns:130px 1fr; gap:18px; padding:16px 0; border-bottom:1px solid var(--line); margin:0;}
.rc-pagina .t{display:inline-block; justify-self:start; align-self:start; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; padding:3px 10px 2px; border-radius:999px; line-height:1.5;}
.rc-pagina .t--sterk{background:rgba(92,107,71,.14); color:var(--t-sterk-txt);}
.rc-pagina .t--redelijk{background:rgba(26,46,77,.10); color:var(--t-redelijk-txt);}
.rc-pagina .t--wisselend{background:rgba(184,115,51,.14); color:var(--t-wisselend-txt);}
.rc-pagina .t--beperkt{background:rgba(140,143,149,.18); color:var(--t-beperkt-txt);}
.rc-pagina .t--vlag{background:transparent; border:1px solid var(--line-strong); color:var(--ink-soft);}
.rc-pagina .twee-kol{display:grid; grid-template-columns:1fr 1fr; gap:22px;}
.rc-pagina .twee-kol .kader{margin:0;}
.rc-pagina .twee-kol h3{margin-top:0;}
.rc-pagina table{width:100%; border-collapse:collapse; font-size:15.5px; margin:10px 0 24px;}
.rc-pagina th,.rc-pagina td{text-align:left; padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:top;}
.rc-pagina th{background:var(--sand); font-size:12.5px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink);}
.rc-pagina .ondertekening{margin-top:44px; padding-top:18px; border-top:1px solid var(--line); font-size:14px; color:var(--muted);}
.rc-pagina .zoekvorm{display:flex; gap:10px; margin:6px 0 28px; max-width:560px;}
.rc-pagina .zoekvorm input{flex:1 1 auto; min-width:0; padding:13px 18px; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--ink); font-family:var(--sans); font-size:16px;}
.rc-pagina .zoekvorm input:focus{outline:none; border-color:var(--teal);}
.rc-pagina .zoekvorm button{flex:0 0 auto; padding:13px 22px; border:none; border-radius:999px; background:var(--teal); color:#F8F6F1; font-family:var(--sans); font-size:16px; font-weight:700; cursor:pointer;}
/* Artikellijsten (alle artikelen, zoeken, archief) */
.rc-pagina .lijst{list-style:none; padding:0; margin:0 0 30px; border-top:1px solid var(--line);}
.rc-pagina .lijst li{margin:0; border-bottom:1px solid var(--line);}
.rc-pagina .lijst a{display:block; padding:16px 0; text-decoration:none; color:inherit;}
.rc-pagina .lijst a b{display:block; font-family:var(--serif); font-weight:600; font-size:20px; line-height:1.3; color:var(--teal); margin-bottom:4px;}
.rc-pagina .lijst a span{display:block; font-size:15.5px; line-height:1.55; color:var(--muted);}
.rc-pagina .lijst a:hover b{text-decoration:underline; text-decoration-color:var(--copper); text-underline-offset:4px;}
.rc-pagina .toolgrid{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:10px 0 30px;}
.rc-pagina .toolgrid a{display:flex; flex-direction:column; gap:6px; padding:20px; border:1px solid var(--line); border-radius:var(--radius); background:#fff; text-decoration:none; color:inherit;}
.rc-pagina .toolgrid a b{color:var(--teal); font-size:17px;}
.rc-pagina .toolgrid a span{font-size:15px; line-height:1.5; color:var(--muted);}
.rc-pagina .toolgrid a:hover{border-color:var(--teal);}
.rc-pagina .toolgrid a.hoofd{grid-column:1 / -1; background:var(--sand); border:0;}
@media (max-width:800px){
  .rc-pagina .wrap{padding:0 16px 56px;}
  .rc-pagina .lede{font-size:18px;}
  .rc-pagina .twee-kol,.rc-pagina .toolgrid{grid-template-columns:1fr;}
  .rc-pagina .treden li{grid-template-columns:1fr; gap:6px;}
  .rc-pagina table{font-size:14.5px;}
}
.rc-pagina .rc-404{padding-top:56px;}

/* Reviewronde 1 (30-09-2026): kaarttitels altijd in de kopletter, klikbare kaarten tonen dat, fasebalk, zoeksoort,
   paginering. */
.rc-pagina .toolgrid a b,.rc-pagina .genummerd > li > b:first-child,.rc-pagina .kader h3{font-family:var(--serif); font-weight:600; font-size:19px; color:var(--teal);}
.rc-pagina .toolgrid a.eerste{background:var(--sand); border-color:var(--sand);}
.rc-pagina .toolgrid .open{margin-top:auto; padding-top:8px; font-style:normal; font-weight:700; font-size:14.5px; color:var(--copper-txt);}
.rc-pagina .toolgrid .open::after{content:"\00A0\2192";}
.rc-pagina .toolgrid a:hover .open{text-decoration:underline;}
.rc-pagina .fasebalk{display:flex; flex-wrap:wrap; gap:8px; margin:6px 0 10px;}
.rc-pagina .fasebalk a{padding:7px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; text-decoration:none; font-weight:700; font-size:14.5px; color:var(--teal);}
.rc-pagina .fasebalk a:hover{border-color:var(--teal);}
.rc-pagina .lijst .soort{display:inline-block; font-style:normal; font-size:11.5px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--copper-txt); margin-bottom:4px;}
.rc-pagina .nav-links{display:flex; gap:8px; flex-wrap:wrap; margin:6px 0 20px;}
.rc-pagina .page-numbers{display:inline-block; min-width:40px; text-align:center; padding:8px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; text-decoration:none; font-weight:700; color:var(--teal);}
.rc-pagina .page-numbers.current{background:var(--teal); color:#F8F6F1; border-color:var(--teal);}
.rc-pagina .screen-reader-text{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0);}
