/* Contact EN/NL. Page-level presentation; canonical contact behavior stays shared. */
body.ffc-direction{
 --home-paper:#fff;--home-ink:#0b0b0b;--home-muted:#606060;--home-line:#e2e4e7;--home-soft:#f7f8f9;
 --home-red:#e8201a;--home-red-dark:#c91b16;--home-sans:Inter,"Helvetica Neue","Segoe UI",Arial,sans-serif;
 --home-max:1240px;--home-gutter:clamp(22px,5.2vw,88px);--nav-h:88px;
 --sans:var(--home-sans);--ink:var(--home-ink);--muted:var(--home-muted);--line:var(--home-line);--red:var(--home-red);--soft:var(--home-soft);
 margin:0;background:#fff;color:var(--home-ink);font:400 16px/1.6 var(--home-sans);-webkit-font-smoothing:antialiased;
}
.ffc-direction *,.ffc-direction *::before,.ffc-direction *::after{box-sizing:border-box}
.ffc-direction :is(h1,h2,h3,h4,p,figure,blockquote,ul,ol){margin:0}
.ffc-direction a{color:inherit;text-decoration:none;touch-action:manipulation}
.ffc-direction button,.ffc-direction summary{touch-action:manipulation}
.ffc-direction img,.ffc-direction svg{display:block;max-width:100%}
.ffc-direction [hidden]{display:none!important}
.ffc-direction ::selection{background:var(--home-red);color:#fff}
.ffc-direction :where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:2px solid var(--home-red-dark);outline-offset:4px;box-shadow:none}
.ffc-direction .ff-skip-link{position:fixed;top:-120px;left:16px;z-index:1100;padding:12px 20px;background:#0b0b0b;color:#fff;font-size:14px}
.ffc-direction .ff-skip-link:focus{top:12px}
.ffc-direction .ffc-page{display:block;width:100%;max-width:none;margin:0;padding:0;background:#fff}
.ffc-direction .ffc-page [id]{scroll-margin-top:calc(var(--nav-h) + 24px)}
.ffc-direction .ffc-shell{width:min(var(--home-max),calc(100% - 2 * var(--home-gutter)));margin-inline:auto;min-width:0}
.ffc-direction .ffc-eyebrow{display:flex;align-items:center;gap:12px;font:600 11px/1.65 var(--home-sans);letter-spacing:.1em;text-transform:uppercase}
.ffc-direction .ffc-eyebrow::before{content:"";display:block;width:22px;height:2px;flex:0 0 22px;background:var(--home-red)}
.ffc-direction .ffc-arrow{display:inline-block;position:relative;width:11px;height:11px;flex:0 0 11px;border-top:1.2px solid currentColor;border-right:1.2px solid currentColor}
.ffc-direction .ffc-arrow::after{content:"";position:absolute;width:14px;height:1.2px;right:-.4px;top:-.4px;background:currentColor;transform-origin:100% 50%;transform:rotate(-45deg)}
.ffc-direction .ffc-button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:48px;max-width:100%;padding:13px 19px;border:1px solid #c9cdd2;border-radius:10px;background:#fff;color:var(--home-ink);font:550 13px/1.5 var(--home-sans);transition:background-color .16s,border-color .16s}
.ffc-direction .ffc-button-red{color:#fff;background:var(--home-red);border-color:var(--home-red)}
.ffc-direction .ffc-button-red:hover{background:var(--home-red-dark);border-color:var(--home-red-dark)}
.ffc-direction .ffc-text-link{display:inline-flex;align-items:center;gap:22px;min-height:44px;font-size:13px;font-weight:550;text-decoration:underline;text-underline-offset:5px}
.ffc-direction .ffc-text-link:hover{color:var(--home-red-dark)}
/* The same chrome geometry and neutral surfaces as the five released pairs. */
.ffc-direction .site-header{background:#fff!important;border-bottom-color:var(--home-line)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.ffc-direction .site-header .nav-wrap{width:min(var(--home-max),calc(100% - 2 * var(--home-gutter)))!important;max-width:none!important;padding:0!important;gap:26px!important}
.ffc-direction .site-header .brand{width:196px!important;max-width:196px!important;flex-basis:196px!important}
.ffc-direction .site-header .brand img{max-width:196px!important}
.ffc-direction .site-header .nav-links{gap:10px!important}
.ffc-direction .site-header .nav-links>a,.ffc-direction .site-header .nav-links>.nav-dropdown>button{min-height:44px!important;padding:0 8px!important;font-size:12px!important;font-weight:500!important;border-radius:4px!important}
.ffc-direction .site-header .nav-links>a.active{border-color:transparent!important;background:transparent!important}
.ffc-direction .site-header .nav-search-icon{width:40px!important;min-width:40px!important;flex-basis:40px!important;padding:0!important}
.ffc-direction .site-header .lang-toggle{border:0!important;background:transparent!important;padding-inline:3px!important}
.ffc-direction .site-header .lang-toggle-link{min-height:40px!important}
.ffc-direction .site-header .nav-dropdown-menu{border-radius:12px!important;padding:10px!important;box-shadow:0 16px 40px #0b0b0b12!important}
.ffc-direction .site-header .nav-dropdown-menu a{min-height:44px!important;font-size:12px!important}
.ffc-direction .site-header .hamburger{width:44px;height:44px;justify-content:center;align-items:center}
.ffc-direction footer.site-footer{width:min(var(--home-max),calc(100% - 2 * var(--home-gutter)))!important;max-width:none!important;padding:42px 0 54px!important;border-top:1px solid var(--home-line);gap:40px!important}
.ffc-direction .site-footer .footer-col a{padding-block:3px;font-size:12px!important}
.ffc-direction .site-footer .footer-legal{opacity:1!important;font-size:10.5px!important}
.ffc-direction .site-footer .footer-quiet-link{opacity:1!important}
/* Introduction and form are one composition. On small screens the form comes
   immediately after the introduction, before secondary support/scan choices. */
.ffc-direction .ffc-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"intro form" "alternatives form";grid-template-rows:auto 1fr;align-items:start;gap:38px clamp(48px,6.5vw,96px);padding-block:72px 84px}
.ffc-direction .ffc-introduction{grid-area:intro;min-width:0;padding-top:5px}
.ffc-direction .ffc-introduction h1{font-size:clamp(48px,5.2vw,72px);line-height:1.055;letter-spacing:-.055em;font-weight:600;margin-top:25px;text-wrap:balance}
.ffc-direction .ffc-lead{max-width:455px;font-size:17px;line-height:1.8;color:var(--home-muted);margin-top:25px}
.ffc-direction .ffc-jump-links{display:flex;flex-wrap:wrap;gap:4px 26px;margin-top:18px}
.ffc-direction .ffc-jump-links a{display:inline-flex;align-items:center;gap:13px;min-height:44px;font-size:12px;font-weight:550}
.ffc-direction .ffc-jump-links a:hover{color:var(--home-red-dark)}
.ffc-direction .ffc-jump-links .ffc-arrow{width:8px;height:8px;flex-basis:8px;color:var(--home-red-dark)}
.ffc-direction .ffc-jump-links .ffc-arrow::after{width:10px}
.ffc-direction .ffc-alternatives{grid-area:alternatives;min-width:0;max-width:485px}
.ffc-direction .ffc-resource-list{margin-top:0;border-top:1px solid var(--home-line)}
.ffc-direction .ffc-resource{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--home-line)}
.ffc-direction .ffc-resource strong{display:block;font-size:14px;line-height:1.5;font-weight:550}
.ffc-direction .ffc-resource small{display:block;margin-top:6px;font-size:12px;line-height:1.6;color:var(--home-muted)}
.ffc-direction .ffc-resource>.ffc-arrow{color:var(--home-red-dark)}
.ffc-direction .ffc-resource:hover strong{text-decoration:underline;text-underline-offset:4px}
/* Canonical Message Ben mounts here, with no duplicate inputs or post handler. */
.ffc-direction .ffc-message{grid-area:form;min-width:0;padding:30px 32px 32px;border:1px solid var(--home-line);border-radius:12px;background:#fff;box-shadow:none}
.ffc-direction .ffc-message>.ffc-eyebrow{font-size:10px}
.ffc-direction .contact-form-title{margin-top:19px;font:600 clamp(25px,2.3vw,31px)/1.2 var(--home-sans);letter-spacing:-.035em}
.ffc-direction .contact-form-intro{font-size:13px;line-height:1.75;color:var(--home-muted);margin-top:12px}
.ffc-direction .contact-form-sig{font-size:11px;line-height:1.65;color:var(--home-muted);margin-top:6px;margin-bottom:25px}
.ffc-direction .ffmb-form{max-width:none;gap:19px}
.ffc-direction .ffmb-field{gap:8px;min-width:0}
.ffc-direction .ffmb-field label{font:550 12px/1.5 var(--home-sans);color:var(--home-ink)}
.ffc-direction .ffmb-field :is(input[type=email],input[type=text],select,textarea){width:100%;min-width:0;border:1px solid #c9cdd2;border-radius:8px;background:#fff;color:var(--home-ink);font:400 16px/1.5 var(--home-sans);padding:12px 13px;box-shadow:none}
.ffc-direction .ffmb-field :is(input[type=email],input[type=text],select){min-height:48px}
.ffc-direction .ffmb-field textarea{min-height:148px;resize:vertical;line-height:1.6}
.ffc-direction .ffmb-field textarea::placeholder{color:#787b7e;opacity:1}
.ffc-direction .ffmb-field :is(input,select,textarea):focus-visible{outline:1px solid var(--home-red-dark);outline-offset:0;border-color:var(--home-red-dark);box-shadow:none}
.ffc-direction .ffmb-org{border:1px solid var(--home-line);border-radius:8px;background:#fff}
.ffc-direction .ffmb-org>summary{display:flex;align-items:center;min-height:46px;padding:12px 13px;gap:11px;font:550 12px/1.55 var(--home-sans);color:var(--home-ink)}
.ffc-direction .ffmb-org>summary::before{font-size:16px;line-height:1;width:12px;flex:0 0 12px;font-weight:400;color:var(--home-red-dark)}
.ffc-direction .ffmb-org>summary:focus-visible{outline:2px solid var(--home-red-dark);outline-offset:2px}
.ffc-direction .ffmb-org[open]>summary{border-bottom:1px solid var(--home-line);margin-bottom:15px}
.ffc-direction .ffmb-org[open]>.ffmb-org-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:0 13px 16px}
.ffc-direction .ffmb-org-body>.ffmb-org-hint,.ffc-direction .ffmb-org-body>.ffmb-field:last-child{grid-column:1/-1}
.ffc-direction .ffmb-org-hint{font-size:12px;line-height:1.65;color:var(--home-muted)}
.ffc-direction .ffmb-consent{align-items:flex-start;min-height:44px;border-top:0;padding-top:0;gap:10px;color:var(--home-muted);font:400 12px/1.7 var(--home-sans)}
.ffc-direction .ffmb-consent input{width:17px;height:17px;flex:0 0 17px;accent-color:var(--home-red-dark);margin:2px 0 0}
.ffc-direction .ffmb-submit{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:48px;padding:13px 20px;border:1px solid var(--home-red);border-radius:10px;background:var(--home-red);color:#fff;font:550 13px/1.5 var(--home-sans);box-shadow:none;transition:background-color .16s}
.ffc-direction .ffmb-submit::after{content:"";width:11px;height:11px;flex:0 0 11px;border-top:1.3px solid currentColor;border-right:1.3px solid currentColor;background:linear-gradient(135deg,transparent 46%,currentColor 47%,currentColor 53%,transparent 54%) center/100% 100% no-repeat}
.ffc-direction .ffmb-submit:hover{background:var(--home-red-dark);border-color:var(--home-red-dark)}
.ffc-direction .ffmb-submit:disabled{opacity:.6;cursor:wait}
.ffc-direction .ffmb-status:empty{display:none}
.ffc-direction .ffmb-status{font:500 13px/1.65 var(--home-sans);overflow-wrap:anywhere;padding-left:12px;border-left:2px solid currentColor}
.ffc-direction .ffmb-privacy,.ffc-direction .ffc-fallback{color:var(--home-muted);font:400 11.5px/1.8 var(--home-sans)}
.ffc-direction .ffmb-privacy a,.ffc-direction .ffc-fallback a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.ffc-direction .ffc-message [data-ff-turnstile-widget]{max-width:100%;min-width:0;align-self:flex-start}
/* One calm dark section gives the organisation route appropriate weight. */
.ffc-direction .ffc-organisations{background:#0b0b0b;color:#fff;padding-block:68px 70px}
.ffc-direction .ffc-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6.5vw,94px);align-items:end}
.ffc-direction .ffc-section-head h2,.ffc-direction .ffc-practical h2{font:550 clamp(34px,3.5vw,48px)/1.13 var(--home-sans);letter-spacing:-.045em;margin-top:20px;text-wrap:balance}
.ffc-direction .ffc-section-head>p{font-size:14px;line-height:1.85;color:#c6c9cd}
.ffc-direction .ffc-offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:52px;margin-top:38px}
.ffc-direction .ffc-offer{display:grid;grid-template-columns:28px minmax(0,1fr);gap:18px;min-width:0;padding:25px 0 0;border-top:1px solid #ffffff38}
.ffc-direction .ffc-number{font:500 11px/1.7 var(--home-sans);color:#aeb3b8;letter-spacing:.05em;padding-top:4px}
.ffc-direction .ffc-offer h3{font:500 24px/1.25 var(--home-sans);letter-spacing:-.027em}
.ffc-direction .ffc-offer p{font-size:13px;line-height:1.85;color:#c6c9cd;margin-top:14px}
.ffc-direction .ffc-organisations .ffc-button{margin-top:31px}
.ffc-direction .ffc-organisations :where(a,button,summary):focus-visible{outline-color:#fff}
/* Small, semantic disclosures keep essential context available without a wall of text. */
.ffc-direction .ffc-practical{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(40px,7vw,100px);padding-block:64px 68px;border-bottom:1px solid var(--home-line)}
.ffc-direction .ffc-practical h2{max-width:430px;font-size:clamp(32px,3vw,42px)}
.ffc-direction .ffc-faqs{border-top:1px solid var(--home-line)}
.ffc-direction .ffc-faq{border-bottom:1px solid var(--home-line)}
.ffc-direction .ffc-faq>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:62px;padding:18px 0;font-size:14px;font-weight:550;cursor:pointer}
.ffc-direction .ffc-faq>summary::-webkit-details-marker{display:none}
.ffc-direction .ffc-faq>summary>span{position:relative;width:12px;height:12px;flex:0 0 12px;color:var(--home-red-dark)}
.ffc-direction .ffc-faq>summary>span::before,.ffc-direction .ffc-faq>summary>span::after{content:"";position:absolute;background:currentColor}
.ffc-direction .ffc-faq>summary>span::before{width:12px;height:1px;left:0;top:5.5px}
.ffc-direction .ffc-faq>summary>span::after{width:1px;height:12px;left:5.5px;top:0}
.ffc-direction .ffc-faq[open]>summary>span::after{display:none}
.ffc-direction .ffc-faq>div{padding:0 28px 21px 0}
.ffc-direction .ffc-faq p{font-size:13px;line-height:1.85;color:var(--home-muted)}
.ffc-direction .ffc-faq a{text-decoration:underline;text-underline-offset:3px;color:var(--home-red-dark)}
.ffc-direction .ffc-collaboration{padding-block:68px 78px}
.ffc-direction .ffc-collaboration .ffc-section-head{grid-template-columns:minmax(0,1fr) auto}
.ffc-direction .ffc-collaboration h2{max-width:700px}
.ffc-direction .ffc-collaborators{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:36px}
.ffc-direction .ffc-collaborators .ffc-offer{display:block;border-top-color:var(--home-line);padding-top:20px}
.ffc-direction .ffc-collaborators .ffc-number{display:block;color:var(--home-red-dark);margin-bottom:15px}
.ffc-direction .ffc-collaborators h3{font-size:22px;max-width:310px;font-weight:550}
.ffc-direction .ffc-collaborators p{color:var(--home-muted)}
/* Existing modal on footer links uses the same field vocabulary as inline Contact. */
.ffc-direction .ffmb-dialog{border:1px solid var(--home-line);border-radius:12px;background:#fff;box-shadow:0 16px 48px #0b0b0b24;max-height:calc(100dvh - 32px)}
.ffc-direction .ffmb-title{padding-right:35px;font-weight:600;letter-spacing:-.035em}
.ffc-direction .ffmb-intro,.ffc-direction .ffmb-sig{color:var(--home-muted)}
.ffc-direction .ffmb-close{width:44px;height:44px;top:10px;right:10px;border:0;border-radius:6px;background:#fff;color:var(--home-ink)}
.ffc-direction .ffmb-close:hover{background:var(--home-soft)}
.ffc-direction.ffmb-locked .ffni,.ffc-direction.ffmb-locked .ff-fluxi-launcher{visibility:hidden}
@media(max-width:1100px){
 .ffc-direction .ffc-hero{gap:32px 46px}
 .ffc-direction .ffc-message{padding:28px 25px}
 .ffc-direction .ffc-introduction h1{font-size:clamp(46px,5.4vw,65px)}
 .ffc-direction .ffc-collaborators{gap:25px}
}
@media(max-width:900px){
 body.ffc-direction{--home-gutter:28px;--nav-h:76px}
 .ffc-direction .site-header .nav-wrap{gap:16px!important}
 .ffc-direction .site-header .nav-links{padding:14px 0 18px!important;gap:8px!important}
 .ffc-direction .site-header .nav-dropdown-menu{width:100%!important}
 .ffc-direction .ffc-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "form" "alternatives";grid-template-rows:auto;gap:32px;padding-block:52px 55px}
 .ffc-direction .ffc-introduction{max-width:700px}
 .ffc-direction .ffc-introduction h1{font-size:clamp(46px,7.1vw,66px);max-width:670px}
 .ffc-direction .ffc-lead{max-width:600px}
 .ffc-direction .ffc-message{padding:30px 32px}
 .ffc-direction .ffc-alternatives{max-width:none}
 .ffc-direction .ffc-resource-list{margin-top:0}
 .ffc-direction .ffc-section-head{grid-template-columns:minmax(0,1fr);gap:22px}
 .ffc-direction .ffc-section-head>p{max-width:630px}
 .ffc-direction .ffc-organisations{padding-block:53px 58px}
 .ffc-direction .ffc-offers{gap:28px;margin-top:30px}
 .ffc-direction .ffc-practical{grid-template-columns:minmax(0,1fr);gap:28px;padding-block:50px}
 .ffc-direction .ffc-collaboration{padding-block:54px 62px}
 .ffc-direction .ffc-collaboration .ffc-section-head{grid-template-columns:minmax(0,1fr);gap:13px}
 .ffc-direction .ffc-collaborators{grid-template-columns:minmax(0,1fr);gap:25px;margin-top:25px}
 .ffc-direction .ffc-collaborators .ffc-offer{display:grid;grid-template-columns:30px minmax(0,1fr);gap:15px}
 .ffc-direction .ffc-collaborators h3{max-width:none}
}
@media(max-width:639px){
 body.ffc-direction{--home-gutter:22px}
 .ffc-direction .site-header .brand{width:156px!important;max-width:156px!important;flex-basis:156px!important}
 .ffc-direction .site-header .brand img{max-width:156px!important}
 .ffc-direction .ffc-hero{padding-block:38px 42px;gap:27px}
 .ffc-direction .ffc-introduction{padding-top:0}
 .ffc-direction .ffc-introduction h1{font-size:clamp(39px,10.1vw,57px);margin-top:20px;letter-spacing:-.05em}
 .ffc-direction .ffc-lead{font-size:15px;line-height:1.8;margin-top:19px}
 .ffc-direction .ffc-jump-links{margin-top:12px;gap:3px 20px}
 .ffc-direction .ffc-message{padding:23px 19px 24px;border-radius:10px}
 .ffc-direction .contact-form-title{font-size:26px;margin-top:17px}
 .ffc-direction .contact-form-intro{font-size:13px;line-height:1.75}
 .ffc-direction .contact-form-sig{font-size:11px;margin-bottom:23px}
 .ffc-direction .ffmb-field textarea{min-height:142px}
 .ffc-direction .ffmb-org[open]>.ffmb-org-body{grid-template-columns:minmax(0,1fr)}
 .ffc-direction .ffmb-submit{width:100%}
 .ffc-direction .ffmb-consent{font-size:11.5px}
 .ffc-direction .ffc-alternatives{display:block;padding-top:3px}

 .ffc-direction .ffc-organisations{padding-block:43px 48px}
 .ffc-direction .ffc-section-head h2{font-size:35px;margin-top:18px}
 .ffc-direction .ffc-section-head>p{font-size:14px;line-height:1.8}
 .ffc-direction .ffc-offers{grid-template-columns:minmax(0,1fr);gap:26px;margin-top:29px}
 .ffc-direction .ffc-offer{padding-top:21px;gap:14px;grid-template-columns:23px minmax(0,1fr)}
 .ffc-direction .ffc-offer h3{font-size:24px}
 .ffc-direction .ffc-offer p{font-size:13px;margin-top:11px}
 .ffc-direction .ffc-practical{padding-block:43px 45px;gap:25px}
 .ffc-direction .ffc-practical h2{font-size:34px;margin-top:17px}
 .ffc-direction .ffc-faq>summary{font-size:13px;min-height:59px}
 .ffc-direction .ffc-collaboration{padding-block:43px 52px}
 .ffc-direction .ffc-collaborators h3{font-size:23px}
 .ffc-direction footer.site-footer{padding:34px 0 44px!important;gap:30px!important}
 .ffc-direction .ffmb-overlay{padding:12px}
 .ffc-direction .ffmb-dialog{padding:24px 18px;max-height:calc(100dvh - 24px)}
}

/* Reuse the approved homepage widget treatment; no shared runtime is changed. */
.ffc-direction .ffni { left: auto; right: 24px; bottom: 24px; width: 376px; max-width: calc(100vw - 48px); max-height: calc(100vh - 110px); max-height: calc(100dvh - 110px); padding: 24px; border: 1px solid var(--home-line); border-radius: 12px; background: #fff; color: var(--home-ink); font-family: var(--home-sans); box-shadow: 0 10px 32px #0B0B0B12; animation-name: none; }
.ffc-direction .ffni.ffni-lifted { bottom: calc(82px + env(safe-area-inset-bottom,0px)); }
.ffc-direction .ffni-close { top: 10px; right: 10px; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 6px; background: transparent; color: var(--home-muted); font: 400 23px/1 var(--home-sans); }
.ffc-direction .ffni-close:hover { background: var(--home-soft); color: var(--home-ink); }
.ffc-direction .ffni-kicker { margin: 0 36px 12px 0; color: var(--home-red-dark); font: 600 10px/1.5 var(--home-sans); letter-spacing: .09em; }
.ffc-direction .ffni-title { margin: 0 22px 10px 0; color: var(--home-ink); font: 600 20px/1.25 var(--home-sans); letter-spacing: -.035em; }
.ffc-direction .ffni-body { margin: 0 0 20px; color: var(--home-muted); font: 400 13px/1.65 var(--home-sans); }
.ffc-direction .ffni-label { margin: 0 0 7px; color: var(--home-ink); font: 500 12px/1.5 var(--home-sans); }
.ffc-direction .ffni-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.ffc-direction .ffni-input { width: 100%; min-width: 0; min-height: 46px; padding: 10px 12px; border: 1px solid #C9CDD2; border-radius: 8px; background: #fff; color: var(--home-ink); font: 400 16px/1.4 var(--home-sans); box-shadow: none; }
.ffc-direction .ffni-submit { min-height: 46px; padding: 10px 16px; border: 1px solid var(--home-red-dark); border-radius: 8px; background: var(--home-red-dark); color: #fff; font: 600 13px/1.4 var(--home-sans); box-shadow: none; }
.ffc-direction .ffni-submit:hover { background: #AB1713; border-color: #AB1713; }
.ffc-direction .ffni-submit:disabled { opacity: .65; cursor: wait; }
.ffc-direction .ffni-helper,
.ffc-direction .ffni-links { margin: 12px 0 0; color: var(--home-muted); font: 400 11.5px/1.6 var(--home-sans); }
.ffc-direction .ffni-links a { color: var(--home-muted); text-decoration: underline; text-underline-offset: 3px; }
.ffc-direction .ffni-error { margin: 10px 0 0; color: var(--home-red-dark); font: 500 12px/1.6 var(--home-sans); }
.ffc-direction .ffni-error:empty { display: none; }
.ffc-direction .ffni-input:focus-visible { border-color: var(--home-red-dark); outline: 1px solid var(--home-red-dark); outline-offset: 0; box-shadow: none; }
.ffc-direction .ffni :where(button,a,.ffni-done):focus-visible { outline: 2px solid var(--home-red-dark); outline-offset: 3px; }
.ffc-direction .ffni-input[aria-invalid="true"] { border-color: var(--home-red-dark); }
/* Opening Fluxy never discards an in-progress newsletter address. Suspend its
   presentation while the real panel is open; the existing card resumes on close. */
.ffc-direction:has(.ff-fluxi-panel.is-open) .ffni { display: none !important; }

.ffc-direction .ff-fluxi-launcher { right: 24px; bottom: calc(24px + env(safe-area-inset-bottom,0px)); min-height: 44px; padding: 0 14px 0 9px; border: 1px solid var(--home-line); border-radius: 10px; background: #fff; color: var(--home-ink); font: 550 13px/1.4 var(--home-sans); box-shadow: 0 4px 16px #0B0B0B0D; backdrop-filter: none; gap: 9px; }
.ffc-direction .ff-fluxi-launcher:hover { background: var(--home-soft); color: var(--home-ink); transform: none; box-shadow: 0 4px 16px #0B0B0B0D; }
.ffc-direction .ff-fluxi-launcher-mark { width: 24px; height: 24px; border-radius: 5px; background: var(--home-red-dark); color: #fff; font: 650 12px/1 var(--home-sans); }
.ffc-direction .ff-fluxi-panel { right: 24px; bottom: calc(82px + env(safe-area-inset-bottom,0px)); width: min(420px,calc(100vw - 48px)); max-height: min(640px,calc(100vh - 110px)); max-height: min(640px,calc(100dvh - 110px)); border: 1px solid var(--home-line); border-radius: 12px; background: #fff; color: var(--home-ink); font-family: var(--home-sans); box-shadow: 0 12px 36px #0B0B0B14; }
.ffc-direction .ff-fluxi-panel.is-open { grid-template-rows: auto minmax(0,1fr) auto; }
.ffc-direction .ff-fluxi-head { padding: 20px; align-items: flex-start; gap: 12px; background: #fff; color: var(--home-ink); border-bottom: 1px solid var(--home-line); }
.ffc-direction .ff-fluxi-head strong { font: 600 16px/1.4 var(--home-sans); letter-spacing: -.025em; }
.ffc-direction .ff-fluxi-head strong::before { content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 8px; margin-bottom: 2px; border-radius: 1px; background: var(--home-red); }
.ffc-direction .ff-fluxi-head span { margin-top: 7px; color: var(--home-muted); font: 400 12px/1.6 var(--home-sans); }
.ffc-direction .ff-fluxi-close { width: 40px; height: 40px; padding: 0; border: 0; border-radius: 6px; background: transparent; color: var(--home-muted); }
.ffc-direction .ff-fluxi-close:hover { background: var(--home-soft); color: var(--home-ink); }
.ffc-direction .ff-fluxi-messages { min-height: 0; max-height: 360px; padding: 20px; gap: 18px; background: #fff; overflow-y: auto; overscroll-behavior: contain; }
.ffc-direction .ff-fluxi-msg { font: 400 14px/1.65 var(--home-sans); border-radius: 8px; overflow-wrap: anywhere; }
.ffc-direction .ff-fluxi-msg.bot { padding: 0; border: 0; background: #fff; color: var(--home-ink); box-shadow: none; }
.ffc-direction .ff-fluxi-msg.user { margin-left: 28px; padding: 12px 14px; border: 1px solid var(--home-line); background: var(--home-soft); color: var(--home-ink); }
.ffc-direction .ff-fluxi-cta,
.ffc-direction .ff-fluxi-account-gate { padding: 14px; border: 1px solid var(--home-line); border-radius: 8px; background: #fff; box-shadow: none; }
.ffc-direction .ff-fluxi-cta strong,
.ffc-direction .ff-fluxi-account-gate strong { font-weight: 600; }
.ffc-direction .ff-fluxi-form { grid-template-columns: minmax(0,1fr) 46px; gap: 10px; padding: 16px; border-top: 1px solid var(--home-line); background: #fff; }
.ffc-direction .ff-fluxi-form textarea { width: 100%; min-width: 0; min-height: 48px; max-height: 112px; padding: 12px; border: 1px solid #C9CDD2; border-radius: 8px; background: #fff; color: var(--home-ink); font: 400 16px/1.45 var(--home-sans); box-shadow: none; }
.ffc-direction .ff-fluxi-form textarea:focus,
.ffc-direction .ff-fluxi-signin-form input:focus { border-color: var(--home-red-dark); outline: 1px solid var(--home-red-dark); outline-offset: 0; box-shadow: none; }
.ffc-direction .ff-fluxi-send { width: 46px; height: 48px; align-self: end; border: 0; border-radius: 8px; background: var(--home-red-dark); color: #fff; box-shadow: none; }
.ffc-direction .ff-fluxi-send:hover { background: #AB1713; transform: none; }
.ffc-direction .ff-fluxi-send:disabled { opacity: .6; cursor: wait; }
.ffc-direction .ff-fluxi-panel :where(button,a):focus-visible,
.ffc-direction .ff-fluxi-launcher:focus-visible { outline: 2px solid var(--home-red-dark); outline-offset: 3px; }
.ffc-direction .ff-fluxi-head .ff-fluxi-identity { color: var(--home-muted); }
.ffc-direction .ff-fluxi-identity button { min-height: 32px; border: 1px solid #C9CDD2; border-radius: 6px; background: #fff; color: var(--home-ink); font: 500 11px/1.5 var(--home-sans); }
.ffc-direction .ff-fluxi-signin-google,
.ffc-direction .ff-fluxi-signin-form button[type="submit"],
.ffc-direction .ff-fluxi-account-actions a { min-height: 44px; border-radius: 8px; background: var(--home-red-dark); border-color: var(--home-red-dark); color: #fff; font-weight: 600 !important; }
.ffc-direction .ff-fluxi-account-actions a + a,
.ffc-direction .ff-fluxi-account-actions.is-secondary a { background: #fff; color: var(--home-ink); border-color: #C9CDD2; }
.ffc-direction .ff-fluxi-signin-modes button { border-radius: 6px; font-weight: 500 !important; }
.ffc-direction .ff-fluxi-signin-form input { min-height: 44px; border-radius: 8px; font-size: 16px; }
.ffc-direction .ff-fluxi-signin-link { color: var(--home-red-dark); }

@media (max-width: 639px) {
  .ffc-direction .ffni,
  .ffc-direction .ffni.ffni-lifted { left: 12px; right: 12px; width: auto; max-width: none; bottom: calc(72px + env(safe-area-inset-bottom,0px)); max-height: calc(100vh - 96px); max-height: calc(100dvh - 96px); padding: 22px 20px; }
  .ffc-direction .ff-fluxi-launcher { right: 12px; bottom: calc(14px + env(safe-area-inset-bottom,0px)); width: 44px; padding: 0; justify-content: center; }
  .ffc-direction .ff-fluxi-panel { right: 12px; bottom: calc(72px + env(safe-area-inset-bottom,0px)); width: calc(100vw - 24px); max-height: calc(100vh - 96px); max-height: calc(100dvh - 96px); }
  .ffc-direction .ff-fluxi-head { padding: 16px; }
  .ffc-direction .ff-fluxi-messages { padding: 16px; }
  .ffc-direction .ff-fluxi-form { padding: 12px; }
}
@media (max-width: 360px) {
  .ffc-direction .ffni-row { grid-template-columns: minmax(0,1fr); }
  .ffc-direction .ffni-submit { width: 100%; }
}


/* The shared anti-bot binding mounts inside the real newsletter form row. */
.ffc-direction .ffni-input { grid-column: 1; grid-row: 1; }
.ffc-direction .ffni-submit { grid-column: 2; grid-row: 1; }
.ffc-direction .ffni-row > [data-ff-turnstile-widget] { grid-column: 1 / -1; grid-row: 2; justify-self: center; min-width: 0; }
@media (max-width: 360px) {
  .ffc-direction .ffni-submit { grid-column: 1; grid-row: 2; }
  .ffc-direction .ffni-row > [data-ff-turnstile-widget] { grid-row: 3; }
}




@media(prefers-reduced-motion:reduce){.ffc-direction *,.ffc-direction *::before,.ffc-direction *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print {
 .ffc-direction .site-header{position:static!important}
 .ffc-direction .ff-skip-link,.ffc-direction .ff-fluxi-launcher,.ffc-direction .ff-fluxi-panel,.ffc-direction .ffni,.ffc-direction .ff-consent-banner,.ffc-direction .ff-consent-panel,.ffc-direction .ffmb-overlay,.ffc-direction .ffc-message,.ffc-direction .ffc-jump-links,.ffc-direction .ffc-button{display:none!important}
 .ffc-direction .ffc-hero{display:block;padding-block:30px}
 .ffc-direction .ffc-alternatives{margin-top:25px;max-width:none}
 .ffc-direction .ffc-organisations{print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .ffc-direction .ffc-faq::details-content{content-visibility:visible!important;display:block!important}
 .ffc-direction .ffc-faq>div{display:block!important}
 .ffc-direction .ffc-collaborators .ffc-offer{break-inside:avoid}
}


/* 2026-10-15 employer-first Contact: the approved light-grey FORM FRAME only. */
.ffc-direction .ffc-hero{grid-template-areas:"intro form";grid-template-rows:auto}
.ffc-direction .ffc-introduction h1{max-width:620px}
.ffc-direction .ffc-audience{max-width:455px;margin-top:21px;color:var(--home-muted);font:400 14px/1.8 var(--home-sans)}
.ffc-direction .ffc-introduction>.ffc-button{margin-top:30px}
.ffc-direction .ffc-general{margin-top:22px}
.ffc-direction .ffc-general>a{font-size:13px;font-weight:550;text-decoration:underline;text-underline-offset:4px}
.ffc-direction .ffc-general p{margin-top:7px;font-size:13px;line-height:1.7;color:var(--home-muted)}
.ffc-direction .ffc-direct{margin-top:32px;padding-top:20px;max-width:455px;border-top:1px solid var(--home-line);font:400 13px/1.7 var(--home-sans);color:var(--home-muted)}
.ffc-direction .ffc-direct a{margin-left:6px;color:var(--home-ink);text-decoration:underline;text-underline-offset:4px}
.ffc-direction .ffc-message{background:#f7f8f9;border-color:#dfe3e7}
.ffc-direction .ffc-message .ffmb-org{background:#fff}
.ffc-direction .ffc-message .contact-form-intro{margin-bottom:25px}
.ffc-direction .ffc-data-note{font:400 11.5px/1.65 var(--home-sans);color:var(--home-muted);margin-top:-12px!important}
.ffc-direction .ffc-organisations .ffc-offers{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.ffc-direction .ffc-organisations .ffc-offer h3{font-size:21px}
.ffc-direction .ffc-organisations .ffc-offer p{margin-top:12px}
.ffc-direction .ffc-other-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,7vw,96px);align-items:start}
.ffc-direction .ffc-other-grid h2{font:550 clamp(32px,3.5vw,48px)/1.13 var(--home-sans);letter-spacing:-.045em;margin-top:20px;max-width:440px}
.ffc-direction .ffc-other-grid .ffc-resource-list{margin-top:0}
.ffc-direction .ffc-other-grid .ffc-resource{padding:18px 0;min-height:87px}
@media(max-width:900px){
 .ffc-direction .ffc-hero{grid-template-areas:"intro" "form"}
 .ffc-direction .ffc-organisations .ffc-offers{grid-template-columns:minmax(0,1fr);gap:24px}
 .ffc-direction .ffc-other-grid{grid-template-columns:minmax(0,1fr);gap:25px}
}
@media(max-width:639px){
 .ffc-direction .ffc-audience{font-size:13px}
 .ffc-direction .ffc-introduction>.ffc-button{margin-top:24px}
 .ffc-direction .ffc-message .contact-form-intro{margin-bottom:23px}
 .ffc-direction .ffc-direct{margin-top:25px;padding-top:18px}
 .ffc-direction .ffc-data-note{font-size:11px}
}
