/*
Theme Name: ASM Groei
Description: Volledig instelbaar thema voor de ASM Groeiberekening: kleuren, lettertypes, opmaak, widgets en WP Bakery-elementen. Werkt samen met de plugin ASM Groeiberekening.
Version: 2.3.0
Requires at least: 6.2
Requires PHP: 7.4
Author: INCITE
Text Domain: asm-groei
*/
:root{--t-ink:#0b3a73;--t-accent:#e07a2e;--t-text:#0b3a73;--t-muted:#4e5d78;--t-surface:#fff;--t-line:#dde4ee;--t-header-bg:#fff;--t-header-text:#4e5d78;--t-footer-bg:#fff;--t-footer-text:#4e5d78;--t-hero-bg:#0b3a73;--t-hero-text:#fff;--t-p1:#2f9e7a;--t-p2:#e07a2e;--t-p3:#3d6fd1;--t-font:"Archivo",system-ui,sans-serif;--t-font-head:"Archivo",system-ui,sans-serif;--t-size:16px;--t-head-weight:700;--t-head-stretch:85%;--t-radius:12px;--t-max:1200px;--t-logo-h:40px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;color:var(--t-text);font-family:var(--t-font);font-size:var(--t-size);line-height:1.55;-webkit-font-smoothing:antialiased}
body:not(.custom-background){background:#f3f6fa}
h1,h2,h3,h4,.page-title,.gb-h1{font-family:var(--t-font-head);font-weight:var(--t-head-weight);font-stretch:var(--t-head-stretch);color:var(--t-ink)}
a{color:var(--t-ink)}a:hover{color:var(--t-accent)}
img{max-width:100%;height:auto}
.screen-reader-text{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;z-index:100;background:#fff;padding:8px 12px}
.wrap{max-width:var(--t-max);margin:0 auto;padding:0 24px}
.wrap--builder{padding:0}
/* header */
.site-header{background:var(--t-header-bg);border-bottom:1px solid var(--t-line);z-index:20;position:relative}
.has-sticky-header .site-header{position:sticky;top:0}
.admin-bar.has-sticky-header .site-header{top:32px}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;font-size:17px;color:var(--t-ink)}
.brand img{max-height:var(--t-logo-h);width:auto}
.nav{display:flex;align-items:center;gap:28px}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:24px}
.nav li{position:relative}
.nav a{text-decoration:none;font-weight:500;color:var(--t-header-text)}
.nav .current-menu-item>a,.nav a:hover{color:var(--t-ink)}
.nav .sub-menu{display:none;position:absolute;top:100%;left:-12px;background:var(--t-surface);border:1px solid var(--t-line);border-radius:10px;padding:8px 12px;flex-direction:column;gap:4px;min-width:200px;box-shadow:0 8px 24px rgba(11,28,51,.1)}
.nav li:hover>.sub-menu,.nav li:focus-within>.sub-menu{display:flex}
.header-widgets{display:flex;gap:12px;align-items:center;font-size:14px}.header-widgets .widget{margin:0}
.account{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--t-header-text)}
.account a{color:var(--t-header-text)}
.avatar-i{width:32px;height:32px;border-radius:50%;background:var(--t-line);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--t-ink)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:calc(var(--t-radius) - 4px);font-weight:600;font-size:15px;text-decoration:none;border:1px solid transparent}
.btn--primary{background:var(--t-ink);color:#fff!important}.btn--primary:hover{filter:brightness(.9)}
.btn--ghost{background:var(--t-surface);border-color:var(--t-line);color:var(--t-ink)!important}
.btn--light{background:#fff;color:var(--t-ink)!important}
.btn--outline{background:transparent;border-color:currentColor;color:var(--t-hero-text)!important}
.menu-toggle{display:none;background:none;border:1px solid var(--t-line);border-radius:8px;min-height:44px;min-width:44px;font:inherit;color:var(--t-ink)}
/* content */
.site-main{padding:32px 0 64px}
.site-main--front,.site-main--builder{padding:0}
.page-title{font-size:36px;line-height:1.1;margin:0 0 24px}
.entry{background:var(--t-surface);border:1px solid var(--t-line);border-radius:var(--t-radius);padding:32px;max-width:820px}
.entry--app{background:none;border:0;padding:0;max-width:none}
.entry--card{margin-bottom:16px}
.layout-sidebar{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start}
.layout-sidebar .entry{max-width:none}
.sidebar{display:flex;flex-direction:column;gap:16px}
.widget{background:var(--t-surface);border:1px solid var(--t-line);border-radius:var(--t-radius);padding:20px}
.widget-title{font-size:16px;margin:0 0 10px}
.widget ul{margin:0;padding-left:18px}
/* secties */
.hero{background:var(--t-hero-bg);color:var(--t-hero-text);padding:64px 0}
.hero .wrap{display:block}
.hero .hero--split{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:center}
.hero h1{font-size:52px;line-height:1.05;margin:0 0 16px;text-wrap:balance;color:var(--t-hero-text)}
.hero p{font-size:18px;opacity:.85;margin:0 0 28px;max-width:560px}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap}
.hero__panel{background:#fff;color:var(--t-text);border-radius:14px;padding:24px}
.hero__panel .gb-auth{margin:0;border:0;padding:0;max-width:none}
.hero__panel h1,.hero__panel .gb-h1{color:var(--t-ink);font-size:26px;margin:0}
.hero__panel p{font-size:14px;opacity:1;margin:0;max-width:none;color:var(--t-muted)}
.hero__panel a{color:var(--t-ink)}
.phase-bar{display:flex;height:14px;border-radius:7px;overflow:hidden;margin:8px 0 18px}
.phase-bar span:nth-child(1){flex:4;background:var(--t-p1)}.phase-bar span:nth-child(2){flex:3;background:var(--t-p2)}.phase-bar span:nth-child(3){flex:4;background:var(--t-p3)}
.section{padding:56px 0}
.section h2{font-size:30px;margin:0 0 24px}
.section__intro{margin:-12px 0 24px;color:var(--t-muted);max-width:720px}
.cta-band .section__intro{margin:6px 0 0}
.phases{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.phase{background:var(--t-surface);border:1px solid var(--t-line);border-radius:var(--t-radius);padding:24px;border-top:4px solid}
.phase--p1{border-top-color:var(--t-p1)}.phase--p2{border-top-color:var(--t-p2)}.phase--p3{border-top-color:var(--t-p3)}
.phase h3{margin:0 0 8px;font-size:18px}.phase p{margin:0;color:var(--t-muted);font-size:15px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:s;list-style:none;margin:0;padding:0}
.steps li{counter-increment:s;background:var(--t-surface);border:1px solid var(--t-line);border-radius:var(--t-radius);padding:20px}
.steps li:before{content:counter(s);display:block;font-size:28px;font-weight:700;font-stretch:80%;color:var(--t-accent);margin-bottom:6px}
.steps h3{margin:0 0 6px;font-size:16px}.steps p{margin:0;font-size:14px;color:var(--t-muted)}
.audience{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.audience div{background:var(--t-surface);border:1px solid var(--t-line);border-radius:var(--t-radius);padding:20px}
.audience h3{margin:0 0 6px;font-size:16px}.audience p{margin:0;font-size:14px;color:var(--t-muted)}
.cta-band{background:var(--t-surface);border-top:1px solid var(--t-line);border-bottom:1px solid var(--t-line)}
.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding-top:40px;padding-bottom:40px}
.cta-band h2{margin:0}
/* nieuws */
.section__head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.section__head h2{margin:0}.section__head .section__intro{margin:6px 0 0}
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.news-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.news-card{background:var(--t-surface);border:1px solid var(--t-line);border-radius:var(--t-radius);overflow:hidden;transition:box-shadow .15s,transform .15s}
.news-card:hover{box-shadow:0 8px 24px rgba(11,28,51,.1);transform:translateY(-2px)}
.news-card__link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}
.news-card__img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:var(--t-line)}
.news-card__img--leeg{background:linear-gradient(90deg,var(--t-p1) 0 36%,var(--t-p2) 36% 63%,var(--t-p3) 63%);height:6px;aspect-ratio:auto}
.news-card__body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.news-card__meta{font-size:13px;color:var(--t-muted)}.news-card__meta a{color:var(--t-muted)}
.news-card h3{margin:0;font-size:19px;line-height:1.25}
.news-card p{margin:0;font-size:15px;color:var(--t-muted)}
.news-card__more{margin-top:auto;padding-top:6px;font-weight:600;font-size:14px;color:var(--t-ink)}
.archive-head{margin-bottom:24px}.archive-head .page-title{margin-bottom:14px}
.cat-filter{display:flex;gap:8px;flex-wrap:wrap}
.cat-filter a{padding:7px 14px;border-radius:999px;border:1px solid var(--t-line);background:var(--t-surface);font-size:14px;font-weight:500;text-decoration:none}
.cat-filter a.is-active{background:var(--t-ink);border-color:var(--t-ink);color:#fff}
.nav-links{display:flex;gap:8px;margin-top:28px;flex-wrap:wrap}
.nav-links .page-numbers{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--t-line);border-radius:8px;background:var(--t-surface);text-decoration:none}
.nav-links .current{background:var(--t-ink);color:#fff;border-color:var(--t-ink)}
.article{max-width:820px}
.article__head{margin-bottom:20px}.article__head .page-title{margin:6px 0 0}
.article__img{margin:0 0 20px}.article__img img{width:100%;border-radius:var(--t-radius);display:block}
.article__body{font-size:17px;line-height:1.7}
.article__nav{display:flex;justify-content:space-between;gap:16px;margin:24px 0;font-size:14px}
.related{margin-top:40px}.related h2{font-size:24px;margin:0 0 16px}
/* berichttemplates */
.post-hero{position:relative;min-height:440px;display:flex;align-items:flex-end;background:var(--t-hero-bg) center/cover no-repeat;color:#fff}
.post-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 30%,rgba(0,0,0,.65))}
.post-hero--leeg:before{background:linear-gradient(90deg,var(--t-p1) 0 36%,var(--t-p2) 36% 63%,var(--t-p3) 63%) bottom/100% 8px no-repeat}
.post-hero__inner{position:relative;padding-top:64px;padding-bottom:48px;width:100%}
.post-hero h1{color:#fff;font-size:48px;line-height:1.08;margin:6px 0 10px;max-width:880px;text-wrap:balance}
.post-hero__meta,.post-hero__meta a{color:rgba(255,255,255,.85);font-size:14px}
.post-hero__lead{font-size:19px;max-width:720px;margin:0;color:rgba(255,255,255,.9)}
.article--center{margin:0 auto}
.post-split{background:var(--t-surface);border-bottom:1px solid var(--t-line)}
.post-split__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;padding-top:48px;padding-bottom:48px}
.post-split .page-title{font-size:42px;margin:8px 0 12px}
.post-split__lead{font-size:18px;color:var(--t-muted);margin:0}
.post-split__img{margin:0}.post-split__img img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--t-radius);display:block}
.post-split__leeg{display:flex;aspect-ratio:4/3;border-radius:var(--t-radius);overflow:hidden}.post-split__leeg span{flex:1}.post-split__leeg span:nth-child(1){background:var(--t-p1)}.post-split__leeg span:nth-child(2){background:var(--t-p2)}.post-split__leeg span:nth-child(3){background:var(--t-p3)}
.article__head--wide{max-width:900px}
.article__img--wide img{aspect-ratio:21/9;object-fit:cover}
.post-toc-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start}
.post-toc{position:sticky;top:96px;font-size:14px;border-left:2px solid var(--t-line);padding-left:16px}
.post-toc[hidden]{display:block;visibility:hidden}
.post-toc__title{font-weight:700;margin-bottom:8px;color:var(--t-ink)}
.post-toc ol{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}
.post-toc a{text-decoration:none;color:var(--t-muted)}.post-toc a.is-active,.post-toc a:hover{color:var(--t-ink);font-weight:600}
.article__body h2{scroll-margin-top:96px}
/* blokpatronen */
.article__body .is-style-lead{font-size:20px;line-height:1.55;color:var(--t-ink)}
.article__body .wp-block-image img{border-radius:calc(var(--t-radius) - 2px)}
.article__body figcaption{font-size:13px;color:var(--t-muted)}
.asm-fases-blok .asm-fase{border:1px solid var(--t-line);border-top:4px solid;border-radius:var(--t-radius);padding:16px 18px;background:var(--t-surface)}
.asm-fase--p1{border-top-color:var(--t-p1)!important}.asm-fase--p2{border-top-color:var(--t-p2)!important}.asm-fase--p3{border-top-color:var(--t-p3)!important}
.asm-fase h3{margin-top:0;font-size:17px}.asm-fase p{margin-bottom:0;font-size:15px}
.asm-tip{background:#fff8f1;border:1px solid #f5d9c0;border-radius:var(--t-radius);padding:18px 22px;margin:24px 0}.asm-tip h3{margin-top:0;font-size:17px}.asm-tip p:last-child{margin-bottom:0}
.asm-citaat blockquote{border-left:4px solid var(--t-accent);margin:0;padding-left:20px;font-size:20px;color:var(--t-ink)}.asm-citaat cite{display:block;margin-top:8px;font-size:14px;font-style:normal;color:var(--t-muted)}
/* WP Bakery */
.wrap--builder .vc_row{margin-left:0;margin-right:0}
.wrap--builder .vc_column_container>.vc_column-inner{padding-left:0;padding-right:0}
.wrap--builder .wpb_content_element{margin-bottom:0}
/* footer */
.above-footer{padding:40px 0}
.above-footer .widget{background:none;border:0;padding:0}
.site-footer{background:var(--t-footer-bg);border-top:1px solid var(--t-line);padding:32px 0;font-size:14px;color:var(--t-footer-text)}
.site-footer a{color:var(--t-footer-text)}
.footer-widgets{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:32px;padding-bottom:28px;margin-bottom:24px;border-bottom:1px solid var(--t-line)}
.footer-widgets .widget{background:none;border:0;padding:0}
.footer-widgets .widget-title{color:var(--t-ink)}
.footer-bottom{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
.site-footer ul{list-style:none;margin:0;padding:0;display:flex;gap:20px;flex-wrap:wrap}
.footer-widgets ul{display:block}.footer-widgets li{margin:0 0 6px}
.error-404{text-align:center;padding:80px 0}
@media (max-width:900px){
.hero .hero--split,.phases,.audience,.layout-sidebar,.post-split__inner,.post-toc-layout{grid-template-columns:1fr}.post-toc{position:static}.post-hero h1{font-size:34px}.post-split .page-title{font-size:32px}.news-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}
.footer-widgets{grid-template-columns:1fr 1fr}
.hero h1{font-size:38px}
.menu-toggle{display:inline-flex;align-items:center;justify-content:center}
.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--t-header-bg);border-bottom:1px solid var(--t-line);flex-direction:column;align-items:stretch;padding:16px 24px;gap:16px}
.nav.is-open{display:flex}.nav ul{flex-direction:column;gap:4px}.nav ul a{display:block;padding:10px 0}
.nav .sub-menu{display:flex;position:static;border:0;box-shadow:none;padding:0 0 0 14px;background:none}
}
@media (max-width:560px){.steps,.footer-widgets,.news-grid,.news-grid--2{grid-template-columns:1fr}.wrap{padding:0 16px}.wrap--builder{padding:0}.entry{padding:20px}.page-title{font-size:28px}.site-main{padding:20px 0 48px}.admin-bar.has-sticky-header .site-header{top:0}}
