:root {
    --ssf-orange:#EB5E1C;
    --ssf-navy:#181830;
    --ssf-green:#307520;
    --ssf-petrol:#1E5065;
    --ssf-sky:#3E9CC6;
    --ssf-yellow:#F2DB00;
    --ssf-ink:#1B1B1A;
    --ssf-white:#FFFFFF;
    --ssf-surface:#F5F7F9;
    --ssf-border:rgba(24,24,48,.12);
    --ssf-shadow:0 12px 34px rgba(24,24,48,.09);
    --ssf-radius:20px;
}

.ssf-experts-overzicht,
.ssf-experts-grid-overview,
.ssf-single-expert,
.ssf-experts-archive {
    color:var(--ssf-ink);
    font-size:16px;
    line-height:1.625;
}

.ssf-experts-overzicht,
.ssf-experts-grid-overview { margin:28px 0 44px; }

/* Filters */
.ssf-experts-filters {
    position:relative;
    margin:0 0 28px;
    padding:20px;
    background:var(--ssf-white);
    border:1px solid var(--ssf-border);
    border-top:5px solid var(--ssf-orange);
    border-radius:var(--ssf-radius);
    box-shadow:0 8px 24px rgba(24,24,48,.07);
}
.ssf-experts-filters::before {
    content:"Vind de juiste expertise";
    display:block;
    margin:0 0 14px;
    color:var(--ssf-navy);
    font-size:20px;
    font-weight:800;
    line-height:1.25;
}
.ssf-experts-filters-row { display:grid;grid-template-columns:1.35fr repeat(4,1fr) auto;gap:12px;align-items:end; }
.ssf-filter-item label { display:block;margin:0 0 6px 2px;color:var(--ssf-petrol);font-size:14px;font-weight:800;line-height:1.3; }
.ssf-filter-item input,
.ssf-filter-item select { width:100%;min-height:46px;padding:9px 12px;border:1px solid rgba(24,24,48,.18);border-radius:10px;background:#fff;color:var(--ssf-navy);font:inherit;font-size:15px;box-sizing:border-box; }
.ssf-filter-item input:hover,.ssf-filter-item select:hover { border-color:rgba(24,24,48,.42); }
.ssf-filter-item input:focus,.ssf-filter-item select:focus { border-color:var(--ssf-orange);outline:3px solid rgba(235,94,28,.18);outline-offset:1px; }
.ssf-filter-reset-wrap { display:flex;align-items:center;min-height:46px; }
.ssf-reset-text-link { display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 15px;border:1px solid var(--ssf-border);border-radius:10px;background:var(--ssf-surface);color:var(--ssf-navy)!important;text-decoration:none!important;font-size:14px;font-weight:800; }
.ssf-reset-text-link:hover { border-color:var(--ssf-orange);background:#fff;color:var(--ssf-orange)!important; }
.ssf-geen-resultaten { margin:20px 0;padding:20px 22px;border-left:6px solid var(--ssf-orange);border-radius:14px;background:#fff3ed;color:var(--ssf-navy);box-shadow:0 6px 20px rgba(24,24,48,.05); }

/* Gedeelde kaarten */
.ssf-expert-card,
.ssf-grid-card { position:relative;overflow:hidden;height:100%;background:#fff;border:1px solid var(--ssf-border);border-radius:var(--ssf-radius);box-shadow:var(--ssf-shadow); }
.ssf-expert-card-top,
.ssf-grid-card-top { border-color:rgba(235,94,28,.65);box-shadow:0 14px 38px rgba(235,94,28,.15); }
.ssf-expert-card-top::before,
.ssf-grid-card-top::before,
.ssf-single-top .ssf-single-header-block::before { content:"TOP EXPERT";position:absolute;z-index:6;top:14px;right:14px;padding:7px 11px;border-radius:999px;background:var(--ssf-orange);color:#fff;font-size:12px;font-weight:900;line-height:1;letter-spacing:.06em; }
.ssf-expert-title-bar { position:relative;padding:17px 22px;background:var(--ssf-navy); }
.ssf-expert-title-bar::after { content:"";position:absolute;left:22px;bottom:0;width:54px;height:4px;background:var(--ssf-orange); }
.ssf-experts-overzicht h2.ssf-expert-name,
.ssf-experts-grid-overview h2.ssf-grid-card-title,
.ssf-single-expert h1.ssf-single-title,
.ssf-single-expert h2.ssf-single-section-title { margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:#fff!important;font-family:inherit!important;font-weight:800!important;line-height:1.16!important;text-transform:none!important;letter-spacing:normal!important; }
.ssf-experts-overzicht h2.ssf-expert-name a,
.ssf-experts-grid-overview h2.ssf-grid-card-title a { color:#fff!important;text-decoration:none!important;font:inherit!important; }

/* Brede lijst */
.ssf-experts-section { margin-bottom:36px; }
.ssf-experts-grid { display:grid;grid-template-columns:1fr;gap:24px; }
.ssf-expert-card-inner { display:grid;grid-template-columns:minmax(250px,30%) minmax(0,1fr);min-height:310px;align-items:stretch; }
.ssf-expert-card-inner-top { grid-template-columns:minmax(0,1fr) minmax(280px,34%); }
.ssf-expert-image-wrap,.ssf-expert-image,.ssf-expert-image a { display:block;height:100%; }
.ssf-expert-image { background:var(--ssf-surface); }
.ssf-expert-image img { display:block;width:100%;height:100%;min-height:310px;object-fit:cover; }
.ssf-expert-content { display:flex;min-width:0;flex-direction:column; }
.ssf-experts-overzicht h2.ssf-expert-name { font-size:clamp(22px,2vw,30px)!important; }
.ssf-expert-subtitel,.ssf-expert-omschrijving,.ssf-expert-naw,.ssf-expert-button-wrap,.ssf-expert-info-bar { margin-left:22px;margin-right:22px; }
.ssf-expert-subtitel { margin-top:18px!important;margin-bottom:10px!important;color:var(--ssf-petrol)!important;font-size:17px!important;font-weight:800!important; }
.ssf-expert-omschrijving { margin-bottom:15px!important;color:#34404b!important;line-height:1.625!important; }
.ssf-expert-omschrijving p { margin:0 0 10px; }
.ssf-expert-naw { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin-bottom:16px;color:#34404b;font-size:15px; }
.ssf-expert-naw-line { word-break:break-word; }
.ssf-expert-naw-line a,.ssf-single-info-line a { color:var(--ssf-petrol)!important;text-decoration:underline;text-underline-offset:2px;font-weight:700;word-break:break-word; }
.ssf-expert-naw-line a:hover,.ssf-single-info-line a:hover { color:var(--ssf-orange)!important; }
.ssf-expert-button-wrap { margin-bottom:18px; }
.ssf-expert-info-bar { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin-top:auto;margin-bottom:22px;padding:15px 16px;background:rgba(30,80,101,.08);border:1px solid rgba(30,80,101,.15);border-left:5px solid var(--ssf-petrol);border-radius:14px; }
.ssf-expert-info-item { display:flex;min-width:0;flex-direction:column;gap:2px; }
.ssf-expert-info-label,.ssf-grid-card-meta-label { color:var(--ssf-petrol);font-size:12px;font-weight:900;line-height:1.3;text-transform:uppercase;letter-spacing:.04em; }
.ssf-expert-info-value,.ssf-grid-card-meta-value { color:var(--ssf-navy);font-size:14px;line-height:1.5; }

/* Grid */
.ssf-experts-grid-cards { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.ssf-grid-card { display:flex;flex-direction:column; }
.ssf-grid-card-image { overflow:hidden;background:var(--ssf-surface); }
.ssf-grid-card-image a { display:block; }
.ssf-grid-card-image img { display:block;width:100%;height:230px;object-fit:cover;transition:transform .3s ease; }
.ssf-grid-card:hover .ssf-grid-card-image img { transform:scale(1.025); }
.ssf-grid-card-content { display:flex;height:100%;flex-direction:column; }
.ssf-grid-card-title-bar { margin-bottom:16px; }
.ssf-experts-grid-overview h2.ssf-grid-card-title { font-size:22px!important; }
.ssf-grid-card-subtitle,.ssf-grid-card-text,.ssf-grid-card-meta,.ssf-grid-card-button-wrap { margin-left:20px;margin-right:20px; }
.ssf-grid-card-subtitle { margin-bottom:10px;color:var(--ssf-petrol);font-size:16px;font-weight:800; }
.ssf-grid-card-text { margin-bottom:15px;color:#34404b;line-height:1.625; }
.ssf-grid-card-text-inner { display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:6; }
.ssf-grid-card-text-inner p { margin:0 0 10px; }
.ssf-grid-read-more-link { display:inline-block;margin-top:5px;color:var(--ssf-petrol)!important;text-decoration:none!important;font-weight:800; }
.ssf-grid-read-more-link:hover { color:var(--ssf-orange)!important;text-decoration:underline!important; }
.ssf-grid-card-meta { margin-top:auto;margin-bottom:16px;padding:13px 14px;background:rgba(48,117,32,.08);border-left:4px solid var(--ssf-green);border-radius:12px; }
.ssf-grid-card-meta-label,.ssf-grid-card-meta-value { display:block; }
.ssf-grid-card-meta-label { margin-bottom:4px;color:var(--ssf-green); }
.ssf-grid-card-button-wrap { margin-bottom:20px; }

/* Knoppen */
.ssf-expert-button,.ssf-back-overview { display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 19px;border:2px solid var(--ssf-orange)!important;border-radius:9px;background:var(--ssf-orange)!important;color:#fff!important;text-decoration:none!important;font-size:15px;font-weight:800;line-height:1.2;box-shadow:none;transition:background .2s ease,border-color .2s ease,transform .2s ease; }
.ssf-expert-button::after { content:"›";font-size:20px;line-height:1; }
.ssf-back-overview { background:#fff!important;color:var(--ssf-orange)!important; }
.ssf-expert-button:hover,.ssf-back-overview:hover { border-color:var(--ssf-navy)!important;background:var(--ssf-navy)!important;color:#fff!important;transform:translateY(-1px); }
.ssf-expert-button:focus,.ssf-back-overview:focus,.ssf-grid-read-more-link:focus { outline:3px solid var(--ssf-yellow);outline-offset:3px; }

/* Detailpagina */
.ssf-single-expert { max-width:1180px;margin:38px auto 56px;padding:0 22px; }
.ssf-single-back-wrap { margin-bottom:18px; }
.ssf-single-header-block { position:relative;overflow:hidden;margin-bottom:26px;background:#fff;border:1px solid var(--ssf-border);border-radius:24px;box-shadow:var(--ssf-shadow); }
.ssf-single-top .ssf-single-header-block { border-color:rgba(235,94,28,.65); }
.ssf-single-header-body { display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);min-height:380px;align-items:stretch; }
.ssf-single-header-no-image { grid-template-columns:1fr;min-height:0; }
.ssf-single-header-content { display:flex;min-width:0;flex-direction:column;background:var(--ssf-navy); }
.ssf-single-title-bar { padding:28px 30px 22px; }
.ssf-single-title-bar::after { left:30px;width:70px; }
.ssf-single-expert h1.ssf-single-title { font-size:clamp(30px,4vw,48px)!important; }
.ssf-single-header-text { display:flex;flex:1;flex-direction:column;justify-content:center;padding:24px 30px 34px;color:#fff; }
.ssf-single-subtitel { margin-bottom:14px;color:#fff;font-size:22px;font-weight:800;line-height:1.3; }
.ssf-single-korte { color:rgba(255,255,255,.9);font-size:17px;line-height:1.7; }
.ssf-single-korte p { margin:0 0 12px; }
.ssf-single-image-box { display:flex;align-items:center;justify-content:center;min-width:0;min-height:380px;overflow:hidden;background:#fff; }
.ssf-single-image-box img { display:block;width:100%;height:100%;max-width:100%;object-fit:contain; }
.ssf-single-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:24px; }
.ssf-single-block { padding:27px 28px;background:#fff;border:1px solid var(--ssf-border);border-radius:20px;box-shadow:0 8px 24px rgba(24,24,48,.06); }
.ssf-single-block-full { grid-column:1 / -1; }
.ssf-single-block h2,.ssf-single-block h3 { margin-top:0;color:var(--ssf-navy);font-weight:800;line-height:1.25; }
.ssf-single-block h2 { position:relative;margin-bottom:20px;padding-bottom:12px;font-size:27px; }
.ssf-single-block h2::after { content:"";position:absolute;left:0;bottom:0;width:55px;height:4px;background:var(--ssf-orange); }
.ssf-single-block h3 { margin-bottom:15px;font-size:21px; }
.ssf-single-contact-card { background:rgba(30,80,101,.10);border-color:rgba(30,80,101,.18);border-top:5px solid var(--ssf-petrol); }
.ssf-single-info-line { margin-bottom:9px;color:#34404b; }
.ssf-single-long-text { color:#34404b;line-height:1.75; }
.ssf-single-long-text p { margin:0 0 14px; }
.ssf-single-info-bar { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:22px;padding:17px;background:var(--ssf-surface);border-radius:14px; }
.ssf-single-info-bar-item { display:flex;flex-direction:column;gap:4px; }
.ssf-single-info-label { color:var(--ssf-petrol);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.035em; }
.ssf-single-info-value { color:var(--ssf-navy);line-height:1.55; }
.ssf-single-aanbod { overflow:hidden;padding:0;background:#fff3ed;border-color:rgba(235,94,28,.3); }
.ssf-single-section-title-bar { padding:20px 28px;background:var(--ssf-orange); }
.ssf-single-section-title-bar::after { display:none; }
.ssf-single-expert h2.ssf-single-section-title { font-size:27px!important; }
.ssf-single-aanbod-content { padding:28px; }
.ssf-single-aanbod-content h3 { color:var(--ssf-navy); }
.ssf-single-aanbod-content strong { color:var(--ssf-petrol); }

/* Archive */
.ssf-experts-archive { max-width:1240px;margin:0 auto;padding:0 22px 56px; }
.ssf-experts-archive-hero { position:relative;overflow:hidden;margin:28px 0 28px;padding:44px 46px;background:var(--ssf-navy);border-radius:24px;color:#fff;box-shadow:var(--ssf-shadow); }
.ssf-experts-archive-hero::after { content:"";position:absolute;right:-90px;bottom:-120px;width:330px;height:330px;border:58px solid rgba(235,94,28,.9);border-radius:50%; }
.ssf-experts-archive-hero > * { position:relative;z-index:1;max-width:780px; }
.ssf-experts-archive-kicker { margin:0 0 8px;color:#fff;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.08em; }
.ssf-experts-archive-hero h1 { margin:0 0 12px;color:#fff;font-size:clamp(34px,5vw,58px);line-height:1.08; }
.ssf-experts-archive-hero p { margin:0;color:rgba(255,255,255,.88);font-size:18px;line-height:1.65; }

/* Boodschappen */
.ssf-message-grid-card,.ssf-message-wide-row { overflow:hidden;border:1px solid rgba(30,80,101,.18);border-radius:var(--ssf-radius);background:rgba(30,80,101,.10);box-shadow:var(--ssf-shadow); }
.ssf-message-grid-card { display:flex;height:100%;flex-direction:column; }
.ssf-message-grid-image { display:flex;height:230px;align-items:center;justify-content:center;padding:16px;background:rgba(255,255,255,.65);box-sizing:border-box; }
.ssf-message-grid-image img { display:block;width:100%;height:100%;object-fit:contain; }
.ssf-message-grid-content { display:flex;min-height:0;flex:1;flex-direction:column; }
.ssf-message-grid-title-bar { margin-bottom:16px; }
.ssf-experts-grid-overview h2.ssf-message-grid-title { margin:0!important;color:#fff!important;font-size:22px!important;line-height:1.2!important; }
.ssf-message-description { color:#34404b;line-height:1.625; }
.ssf-message-description p { margin:0 0 8px; }
.ssf-message-grid-description { display:-webkit-box;overflow:hidden;margin:0 20px 16px;-webkit-box-orient:vertical;-webkit-line-clamp:6; }
.ssf-message-grid-button-wrap { margin:0 20px 20px;margin-top:auto; }
.ssf-message-wide-row { display:grid;grid-column:1 / -1;grid-template-columns:minmax(220px,280px) minmax(0,1fr);min-height:230px;border-left:7px solid var(--ssf-orange); }
.ssf-message-wide-row-no-image { grid-template-columns:1fr; }
.ssf-message-wide-image { display:flex;min-height:230px;align-items:center;justify-content:center;padding:18px;background:rgba(255,255,255,.62); }
.ssf-message-wide-image img { display:block;width:100%;height:100%;max-height:200px;object-fit:contain; }
.ssf-message-wide-content { display:flex;min-width:0;flex-direction:column;justify-content:center;padding:24px 30px; }
.ssf-message-wide-title { margin:0 0 8px!important;color:var(--ssf-navy)!important;font-size:clamp(24px,3vw,34px)!important;font-weight:850!important;line-height:1.18!important; }
.ssf-message-wide-content .ssf-message-description { display:-webkit-box;max-width:820px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4; }
.ssf-message-button-wrap { margin-top:12px; }

@media(max-width:1100px){
    .ssf-experts-filters-row{grid-template-columns:repeat(3,minmax(0,1fr))}.ssf-filter-search{grid-column:span 2}.ssf-experts-grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ssf-single-info-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
    .ssf-experts-filters-row,.ssf-expert-info-bar,.ssf-expert-naw,.ssf-experts-grid-cards,.ssf-single-header-body,.ssf-single-grid,.ssf-single-info-bar{grid-template-columns:1fr}.ssf-filter-search{grid-column:auto}.ssf-filter-reset-wrap,.ssf-reset-text-link{width:100%}.ssf-expert-card-inner,.ssf-expert-card-inner-top{display:flex;flex-direction:column}.ssf-expert-image-wrap{order:-1;width:100%}.ssf-expert-content{order:2}.ssf-expert-image img,.ssf-grid-card-image img{height:240px;min-height:240px}.ssf-single-expert{padding:0 16px}.ssf-single-header-body{min-height:0}.ssf-single-header-content{order:2}.ssf-single-image-box{order:1;min-height:260px;height:260px}.ssf-single-title-bar{padding:22px 20px 18px}.ssf-single-title-bar::after{left:20px}.ssf-single-header-text{padding:20px}.ssf-single-block,.ssf-single-aanbod-content{padding:22px 20px}.ssf-single-aanbod{padding:0}.ssf-single-section-title-bar{padding:18px 20px}.ssf-message-wide-row{grid-template-columns:1fr}.ssf-message-wide-image{min-height:220px}.ssf-message-wide-content{padding:22px 20px}.ssf-experts-archive-hero{padding:34px 26px}.ssf-experts-archive-hero::after{opacity:.45}
}
@media(max-width:480px){
    .ssf-experts-filters{padding:16px}.ssf-expert-title-bar{padding:15px 17px}.ssf-expert-title-bar::after{left:17px}.ssf-expert-subtitel,.ssf-expert-omschrijving,.ssf-expert-naw,.ssf-expert-button-wrap,.ssf-expert-info-bar,.ssf-grid-card-subtitle,.ssf-grid-card-text,.ssf-grid-card-meta,.ssf-grid-card-button-wrap{margin-left:17px;margin-right:17px}.ssf-expert-button,.ssf-back-overview{width:100%;box-sizing:border-box}.ssf-expert-card-top::before,.ssf-grid-card-top::before,.ssf-single-top .ssf-single-header-block::before{top:10px;right:10px;font-size:10px}.ssf-experts-archive{padding:0 14px 40px}.ssf-experts-archive-hero{padding:28px 20px}
}
