
/* ============================================================
   SHARED CHROME v1 — copied verbatim from regrep-shared-chrome-v1.html
   Do not restyle. Page-specific CSS begins below the shared block.
   ============================================================ */
:root{
  --bg:#FAF9F7;--surface:#FFFFFF;--ink:#1A1D21;--body-c:#4B5563;
  --blue:#2E6BE6;--blue-dark:#1D4FB8;--blue-light:#7AA4F0;
  --orange:#F97316;--orange-deep:#C2410C;
  --line:#E9E5DE;--line-strong:#8F8576;
  --valid:#12925F;--valid-deep:#0B6B45;--valid-b:#2FD08E;
  --head:'Poppins',sans-serif;--body-f:'Inter',sans-serif;--mono:'IBM Plex Mono',monospace;
  --wrap:1240px;
}
*{margin:0;padding:0;box-sizing:border-box}
[hidden]{display:none!important}
svg[aria-hidden][focusable="false"]{width:1.35em;height:1.35em;vertical-align:middle;flex:none}
html{scroll-behavior:smooth}
body{font-family:var(--body-f);color:var(--body-c);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.6}
h1,h2,h3,h4{font-family:var(--head);color:var(--ink);letter-spacing:-0.015em;line-height:1.15}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
.eyebrow{font-family:var(--head);font-weight:600;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:3px}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:200;border-radius:0 0 8px 0}
.skip:focus{left:0}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--head);font-weight:600;font-size:15px;padding:13px 26px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:transform .15s,background .15s,color .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#000}
.btn-dark .arrow{color:#F9A56A}
.btn-outline{border-color:var(--ink);color:var(--ink)}.btn-outline:hover{background:var(--ink);color:#fff}
.btn-sm{padding:9px 18px;font-size:14px}
.txtlink{display:inline-flex;align-items:center;gap:6px;font-family:var(--head);font-weight:600;font-size:14.5px;color:var(--ink)}
.txtlink .arrow{color:var(--orange-deep);transition:transform .15s}
.txtlink:hover .arrow{transform:translateX(3px)}
.hdr{position:sticky;top:0;z-index:100;background:rgba(250,249,247,.85);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:78px;max-width:1440px;margin:0 auto;padding:0 48px;gap:36px}@media(max-width:1180px){.hdr-in{padding:0 32px;gap:24px}.nav-links{gap:24px}.hdr-r{gap:16px}}
.brand{display:flex;align-items:center;gap:10px}
.brand-logo{height:30px;width:auto;display:block}
.nav-links{display:flex;gap:36px;align-items:center;font-size:14.5px;font-weight:450;white-space:nowrap}
.nav-links a:hover{color:var(--ink)}
.hdr-r{display:flex;gap:22px;align-items:center}
.hdr-r .login{font-size:14.5px;font-weight:450}
.hamb{display:none;background:none;border:1.5px solid var(--line-strong);border-radius:8px;width:42px;height:42px;cursor:pointer;align-items:center;justify-content:center}
.hamb span{display:block;width:18px;height:2px;background:var(--ink);position:relative}
.hamb span::before,.hamb span::after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--ink)}
.hamb span::before{top:-6px}.hamb span::after{top:6px}
@media(max-width:1024px){.nav-links,.hdr-r .btn,.hdr-r .login{display:none}.hamb{display:flex}}
.mobnav{position:fixed;inset:70px 0 auto 0;background:var(--surface);border-bottom:1px solid var(--line);padding:20px 28px;flex-direction:column;gap:16px;display:none;z-index:99}
.mobnav.open{display:flex}
.mobnav .nav-links{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.mobnav a{font-size:16px;padding:6px 0}
.mobnav .btn{width:100%;justify-content:center}

/* ===== FOOTER CSS ===== */
.ftr{background:#15181C;color:#9AA1AC;padding:56px 0 30px;margin-top:80px}
.ftr .authority{display:flex;flex-wrap:wrap;gap:10px 14px;justify-content:center;padding-bottom:30px;border-bottom:1px solid #262A30;margin-bottom:34px}
.ftr .authority span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:#9AA1AC;border:1px solid #2C3036;border-radius:6px;padding:5px 10px}
.ftr-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;margin-bottom:36px}
.ftr-brand .brand{margin-bottom:14px}
.brand-logo-ftr{height:30px;width:auto;display:block}
.ftr-brand p{font-size:13px;line-height:1.7;max-width:320px;margin-bottom:16px}
.ftr-brand .addr{font-size:12.5px;line-height:1.7;color:#9AA1AC}
.ftr h3,.ftr h4{font-family:var(--head);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin-bottom:14px}
.ftr ul{list-style:none}
.ftr li{margin-bottom:9px}
.ftr li a{font-size:13.5px;color:#9AA1AC}
.ftr li a:hover{color:#fff}
.ftr-discl{font-size:11.5px;line-height:1.7;color:#98A0AB;border-top:1px solid #262A30;padding-top:24px;margin-bottom:20px}
.ftr-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;border-top:1px solid #262A30;padding-top:22px}
.ftr-lang{display:flex;gap:8px}
.ftr-lang a,.ftr-lang span{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;border:1px solid #2C3036;border-radius:6px;padding:4px 10px}.ftr-lang a{color:#9AA1AC}.ftr-lang span{color:#fff;border-color:#3A4048;background:#22262C}
.ftr-lang a:hover{color:#fff}
.ftr-social{display:flex;gap:12px}
.ftr-social a{width:32px;height:32px;border:1px solid #2C3036;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#9AA1AC}
.ftr-social a:hover{color:#fff;border-color:#3A3F46}
.ftr-copy{font-size:12px;color:#98A0AB}
.ftr-access{font-size:11.5px;color:#98A0AB;margin-top:10px}
.ftr-access a{color:#9AA1AC;text-decoration:underline}
@media(max-width:900px){.ftr-grid{grid-template-columns:1fr 1fr}.ftr-brand{grid-column:1/-1}}
@media(max-width:520px){.ftr-grid{grid-template-columns:1fr}}
.cf-turnstile{margin:0 0 14px}
.form-error{background:#FEF2F2;border:1px solid #FCA5A5;border-left:3px solid #DC2626;border-radius:10px;padding:14px 16px;margin:0 0 18px;font-size:14px;line-height:1.6;color:#7F1D1D}.form-error:focus-visible{outline:2px solid #DC2626;outline-offset:2px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* breadcrumbs — canonical band (chrome v1.1; all non-home indexable pages) */
.crumbs{border-bottom:1px solid var(--line);background:var(--surface)}
.crumbs ol{list-style:none;margin:0 auto;max-width:var(--wrap);padding:12px 28px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;color:#656E7C}
.crumbs li{display:flex;align-items:center;gap:8px}
.crumbs li::after{content:"/";color:var(--line)}
.crumbs li:last-child::after{content:""}
.crumbs a{color:#656E7C}
.crumbs a:hover{color:var(--ink)}
.crumbs [aria-current]{color:var(--ink)}

/* ============================================================
   PAGE-SPECIFIC CSS — /contact/
   ============================================================ */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* breadcrumbs */

/* intro */
.ct-intro{padding:26px 0 8px;max-width:760px}
.ct-intro .eyebrow{display:block;margin-bottom:14px}
.ct-intro h1{font-size:clamp(32px,4.4vw,48px);font-weight:700;margin-bottom:16px}
.ct-intro .lead{font-size:17px;line-height:1.6;color:var(--body-c)}

/* layout */
.ct-band{padding:30px 0 20px}
.ct-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:34px;align-items:start}
@media(max-width:880px){.ct-grid{grid-template-columns:1fr;gap:26px}}

/* form card */
.form-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px 30px 32px;box-shadow:0 20px 50px rgba(26,29,33,.06)}
.form-card h2{font-size:20px;font-weight:600;margin-bottom:6px}
.form-card .reqnote{font-size:12.5px;color:#656E7C;margin-bottom:22px}
.form-card .reqnote .req{color:var(--orange-deep);font-weight:600}

/* enquiry context pill */
.ctx-pill{display:none;align-items:center;gap:12px;background:#FBFAF8;border:1px solid var(--line);border-radius:12px;padding:13px 16px;margin-bottom:22px}
.ctx-pill.show{display:flex}
.ctx-pill .lab{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#656E7C;flex:none}
.ctx-pill .val{font-family:var(--head);font-weight:600;font-size:14.5px;color:var(--ink)}

/* success panel (server reveals after a valid POST) */
.sent{display:flex;gap:13px;background:rgba(18,146,95,.07);border:1px solid rgba(11,107,69,.32);border-radius:14px;padding:18px 20px;margin-bottom:24px}
.sent .ic{width:28px;height:28px;border-radius:9px;background:rgba(18,146,95,.14);color:var(--valid-deep);display:flex;align-items:center;justify-content:center;flex:none;font-weight:700}
.sent h2{font-size:16px;margin-bottom:4px}
.sent p{font-size:13.5px;line-height:1.55;color:var(--ink)}

/* error summary */
.error-summary{display:none;border:1.5px solid var(--orange-deep);background:#FDF1EA;border-radius:12px;padding:16px 18px;margin-bottom:24px}
.error-summary.show{display:block}
.error-summary h2{font-size:15px;color:var(--orange-deep);margin-bottom:8px}
.error-summary ul{margin:0;padding-left:18px;font-size:13.5px;color:var(--ink)}
.error-summary li{margin-bottom:4px}
.error-summary a{color:var(--orange-deep);text-decoration:underline;font-weight:600}

/* fields */
.field{margin-bottom:20px}
.field label{display:block;font-family:var(--head);font-weight:600;font-size:13.5px;color:var(--ink);margin-bottom:7px}
.field label .req{color:var(--orange-deep)}
.field input,.field select,.field textarea{width:100%;font-family:var(--body-f);font-size:15px;color:var(--ink);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.field textarea{min-height:132px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(46,107,230,.12)}
.field [aria-invalid="true"]{border-color:var(--orange-deep)}
.field [aria-invalid="true"]:focus{box-shadow:0 0 0 3px rgba(194,65,12,.14)}
.field .hint{font-size:12.5px;color:#656E7C;margin-top:6px}
.err-msg{display:none;font-size:12.5px;color:var(--orange-deep);font-weight:600;margin-top:7px}
.err-msg.show{display:block}
.field-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:520px){.field-2{grid-template-columns:1fr}}

/* consent group */
.consent-group{border:0;padding:0;margin:6px 0 24px}
.consent{display:flex;gap:11px;align-items:flex-start;font-size:13.5px;line-height:1.55;color:var(--body-c);margin-bottom:14px}
.consent:last-child{margin-bottom:0}
.consent input{width:19px;height:19px;flex:none;margin-top:2px;accent-color:var(--blue)}
.consent a{color:var(--ink);text-decoration:underline}
.consent .req{color:var(--orange-deep);font-weight:600}

.form-card .submit-row{margin-top:6px}
.form-card .submit-row .btn{width:100%;justify-content:center}
.form-foot{font-size:12.5px;color:#656E7C;margin-top:16px;text-align:center}
.form-foot a{color:var(--ink);text-decoration:underline}

/* aside */
.aside-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px 26px;margin-bottom:20px}
.aside-card:last-child{margin-bottom:0}
.aside-card h2{font-size:16px;font-weight:600;margin-bottom:16px}
.reach{list-style:none;display:grid;gap:16px}
.reach li{display:flex;gap:13px;align-items:flex-start}
.reach .ic{width:34px;height:34px;border-radius:10px;background:rgba(46,107,230,.08);color:var(--blue);display:flex;align-items:center;justify-content:center;flex:none}
.reach .k{font-family:var(--head);font-weight:600;font-size:13px;color:var(--ink);display:block;margin-bottom:2px}
.reach .v{font-size:13.5px;color:var(--body-c);line-height:1.55}
.reach .v a{color:var(--ink);font-weight:600}
.next{list-style:none}
.next li{display:flex;gap:14px;margin-bottom:18px}
.next li:last-child{margin-bottom:0}
.next .n{width:30px;height:30px;border-radius:9px;background:rgba(46,107,230,.08);color:var(--blue);font-family:var(--mono);font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}
.next .t{font-family:var(--head);font-weight:600;font-size:14.5px;color:var(--ink);display:block;margin-bottom:3px}
.next .d{font-size:13.5px;color:var(--body-c);line-height:1.5}
.sl-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px 26px;margin-bottom:0}
.sl-card h2{font-size:16px;font-weight:600;margin-bottom:10px}
.sl-card p{font-size:13.5px;line-height:1.6;color:var(--body-c);margin-bottom:14px}
.sl-card .txtlink{font-size:13.5px}
.otherlinks{list-style:none;display:grid;gap:11px;margin-top:4px}
.otherlinks li a{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:var(--ink);font-weight:600}
.otherlinks li a .arrow{color:var(--orange-deep)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}/* R88a: translated nav labels are wider than the English ones and the row does not fit until roughly 1445px. Collapse to the burger earlier on localised pages rather than letting the header overflow the viewport. */@media(max-width:1200px){.nav-links,.hdr-r .btn,.hdr-r .login{display:none}.hamb{display:flex}}/* R90a: graduated header — shed the demo button, then login, before collapsing. */@media(max-width:1280px){.hdr-r .btn-outline{display:none}}@media(max-width:1140px){.hdr-r .login{display:none}}@media(max-width:1060px){.nav-links{gap:18px;font-size:14px}}/* R91a: contrast — citation labels, footer links, hub link, free-no cells. */.art{color:#5A6270}.tools-all,.rtools-free a,a.tools-all{color:#4A5260}.free-no{color:#6A5250}.ftr a,.ftr-links a,.ftr-col a{color:#B9C0CA}.lab{color:#D5DAE2}/* R93a: compound-noun overflow. Dutch and German headings routinely exceed the container at every width (e.g. 'cryptoactivadiensten'), so break long words generically rather than shortening headings page by page. */h1,h2,h3,.chero h1{overflow-wrap:break-word}h1:lang(de),h2:lang(de),h3:lang(de),h1:lang(nl),h2:lang(nl),h3:lang(nl){hyphens:auto}/* R89a: grid and flex children default to min-width:auto, so long unbroken strings force the track wider than the viewport. Longer German and Dutch labels expose it first. */.ctas>*,.fc-ctas>*,.finalcta-ctas>*,.rel>*,.modgrid>*,.ra-grid>*,.hero-in>*,.chero-in>*,.pillars>*,.cline>*,.tmpl-body>*{min-width:0}