/* ═══════════════════════════════════════════════════════════════════════════
   APEXclusive homepage — samengevoegde stijllagen (2026-08-31).
   Vervangt 6 losse bestanden om het aantal HTTP-verzoeken op de homepage te
   verkleinen. Volgorde = oorspronkelijke cascade:
   brand → ai → quality → scale → finish → overview.
   De losse bronbestanden blijven in de repo staan (mogelijk gedeeld met
   tool-subdomeinen), maar worden niet meer door deze site geladen.
   ═══════════════════════════════════════════════════════════════════════════ */
/* APEXclusive-specific brand layer: not a generic agency theme. */
:root{--apx-green:#009246;--apx-red:#ce2b37}
.wordmark:before{display:none}.wordmark{gap:.18em!important;letter-spacing:.14em!important}.wordmark i,.wordmark span:after{display:none}.wordmark b{font-size:.86em}
.hero:after{display:none!important}
.tool-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem 1rem}.tool-group-label{margin-bottom:.8rem;color:#98603a;font:600 .58rem/1 var(--display);letter-spacing:.18em;text-transform:uppercase}.tool-links{grid-template-columns:1fr!important;background:none!important;gap:.55rem!important}.tool-links a{min-height:120px;padding:1.15rem 1.2rem!important;background:var(--paper)!important;border:1px solid transparent!important;transition:background .22s,border-color .22s,transform .22s!important}.tool-links a:hover{background:#e5ddd2!important;border-color:#b77748!important;transform:translateY(-2px)}.tool-links strong{font-size:.9rem!important}.tool-links span{font-size:.52rem!important;color:#98603a!important}.tool-links p{font-size:.78rem!important}.tool-links a:hover .tool-ico{background:#b77748!important;border-color:#b77748!important}.tools-more{margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(10,13,14,.18)}
@media(max-width:860px){.tool-groups{grid-template-columns:1fr 1fr;gap:2rem 1rem}.tool-group:last-child{grid-column:1/-1}.hero:after{left:var(--pad);right:var(--pad)}}
@media(max-width:560px){.wordmark:before{width:1.1rem;height:1.25rem}.wordmark{font-size:.78rem!important}.tool-groups{grid-template-columns:1fr}.tool-group:last-child{grid-column:auto}.hero:after{bottom:6rem}}
.ai-launcher{position:fixed;right:var(--pad);bottom:max(1.25rem,env(safe-area-inset-bottom));z-index:60;width:48px;height:48px;padding:0;border:1px solid rgba(226,178,142,.55);border-radius:50%;display:grid;place-items:center;background:rgba(11,14,14,.92);color:var(--paper);box-shadow:0 12px 36px rgba(0,0,0,.3);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .25s,transform .25s}.ai-launcher:hover{background:var(--copper);border-color:var(--copper);color:#fff;transform:translateY(-2px)}.ai-launcher svg{display:block;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ai-panel{position:fixed;right:var(--pad);bottom:5.5rem;z-index:61;width:min(390px,calc(100vw - 2 * var(--pad)));background:#111717;color:var(--text);border:1px solid rgba(226,178,142,.38);box-shadow:0 25px 80px rgba(0,0,0,.5);padding:1.25rem}.whatsapp-launcher{position:fixed;left:var(--pad);bottom:max(1.25rem,env(safe-area-inset-bottom));z-index:58;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 12px 36px rgba(0,0,0,.35);transition:background .25s,transform .25s}.whatsapp-launcher:hover{background:#1eb958;transform:translateY(-2px)}.whatsapp-launcher:focus-visible{outline:2px solid var(--paper);outline-offset:3px}.whatsapp-launcher svg{width:26px;height:26px;fill:currentColor}.ai-head{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:1rem}.ai-label{color:var(--copper-light);font:500 .52rem/1 var(--display);letter-spacing:.18em;text-transform:uppercase}.ai-head h2{font-size:1.55rem;letter-spacing:-.02em;margin-top:.55rem}.ai-close{border:0;background:none;color:var(--muted);font-size:1.5rem;line-height:1;height:30px;width:30px}.ai-messages{height:220px;overflow:auto;padding:1rem 0}.ai-message{max-width:90%;padding:.75rem .8rem;font-size:.85rem;line-height:1.65}.ai-bot{background:rgba(244,241,235,.07);color:#deddd7}.ai-user{margin:0 0 0 auto;background:var(--copper);color:#fff}.ai-quick{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.8rem}.ai-quick button{background:transparent;border:1px solid rgba(244,241,235,.2);color:#c8cac3;padding:.45rem .55rem;font:500 .55rem/1 var(--display);letter-spacing:.04em}.ai-quick button:hover{border-color:var(--copper-light);color:var(--copper-light)}.ai-form{display:flex;border:1px solid rgba(244,241,235,.22)}.ai-form input{min-width:0;flex:1;border:0;background:transparent;color:#fff;padding:.7rem .75rem;outline:0;font-size:16px}.ai-form button{width:44px;border:0;background:var(--paper);color:var(--ink);font-size:1.1rem}.ai-form button:hover{background:var(--copper);color:#fff}@media(max-width:560px){.ai-launcher{right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));width:44px;height:44px}.ai-launcher svg{width:22px;height:22px}.ai-panel{right:1rem;bottom:4.7rem;width:calc(100vw - 2rem)}.whatsapp-launcher{left:1rem;bottom:max(1rem,env(safe-area-inset-bottom));width:44px;height:44px}.whatsapp-launcher svg{width:24px;height:24px}}

/* Chat-verfijningen: typing indicator, contactrij, opmaak */
.ai-message{white-space:pre-wrap;overflow-wrap:break-word}
.ai-typing{color:var(--muted);letter-spacing:.25em;animation:aiPulse 1.1s ease-in-out infinite}
@keyframes aiPulse{50%{opacity:.35}}
.ai-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:.8rem;padding-top:.75rem;border-top:1px solid var(--line)}
.ai-foot span{color:var(--muted);font:500 .55rem/1 var(--display);letter-spacing:.14em;text-transform:uppercase}
.ai-foot a{color:var(--copper-light);font:500 .68rem/1 var(--display);letter-spacing:.06em;border-bottom:1px solid rgba(226,178,142,.4);padding-bottom:.15rem;transition:border-color .25s,color .25s}
.ai-foot a:hover{color:var(--paper);border-color:var(--paper)}
/* Final quality pass: accessibility, fallback behavior and editorial finish. */
:focus-visible{outline:2px solid var(--copper-light);outline-offset:4px}::selection{background:var(--copper);color:#fff}html{scrollbar-color:var(--copper) var(--ink)}body{min-width:320px}button,a,input,textarea{touch-action:manipulation}.site-header:focus-within{transform:none!important}.mobile-menu[hidden],.ai-panel[hidden]{display:none!important}.hero-media img{font-size:.8rem;color:var(--muted)}.section-light .eyebrow{font-weight:600}.featured-description,.contact-lead{max-width:52ch}.lead-form button:disabled{opacity:.6;cursor:wait}.tool-links a:focus-visible,.service-card:focus-visible,.case-card:focus-visible{outline-color:#98603a;outline-offset:-4px}.ai-launcher:focus-visible,.whatsapp-launcher:focus-visible{outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}}@media print{.site-header,.site-progress,.ai-launcher,.whatsapp-launcher,.mobile-menu,.ai-panel{display:none!important}.hero{min-height:auto;color:#000;background:#fff!important}.hero-media,.hero-overlay,.hero-scroll,.hero-bottom .hero-scroll{display:none!important}.hero-content{padding-block:2rem}.hero h1,.hero h1 em{color:#000}.hero-text{color:#333}.button{display:none!important}.lead-form,.form-status{display:none!important}.section-dark,.section-light{background:#fff!important;color:#000!important}.section-dark p,.section-dark h1,.section-dark h2,.section-dark h3,.section-dark li{color:#000!important}.tool-links a,.service-card,.case-card{border:1px solid #ccc!important;break-inside:avoid}.case-card img,.about-image img{display:none}.site-footer{background:#fff!important;color:#000!important}.site-footer a,.footer-bottom{color:#333!important}.contact-direct a{border-bottom-color:#333}}
/* Calm scale: premium means readable, not oversized. */
.hero-content{padding-block:5rem 6rem}.hero h1{font-size:clamp(3rem,7vw,6.8rem)!important;max-width:10ch!important}.featured-copy{container-type:inline-size}.featured-copy h2{font-size:min(clamp(3.2rem,6.5vw,6.2rem),16cqi)!important}.intro h2,.section-heading h2,.about h2,.faq h2,.process h2,.cases-heading h2,.contact h2{font-size:clamp(2.8rem,5vw,5.2rem)!important}.service-card h3{font-size:clamp(1.7rem,2.7vw,2.7rem)!important}.case-card,.case-large{min-height:420px!important}.case-large{min-height:520px!important}
@media(max-width:560px){.hero-content{padding-block:4rem 5rem}.hero h1{font-size:clamp(2.8rem,13vw,4.5rem)!important}.featured-copy h2{font-size:min(clamp(3rem,14vw,4.8rem),16cqi)!important}.intro h2,.section-heading h2,.about h2,.faq h2,.process h2,.cases-heading h2,.contact h2{font-size:clamp(2.7rem,12vw,4.3rem)!important}.case-card,.case-large{min-height:340px!important}}
/* Final layout pass: intentional space, not accidental gaps. */
section{scroll-margin-top:84px}.intro,.featured,.services,.process,.tools,.cases,.about,.contact,.faq{padding-block:clamp(5rem,8vw,8rem)!important}.featured{padding-top:clamp(4.5rem,7vw,7rem)!important}.section-heading{margin-bottom:clamp(2.5rem,5vw,4rem)!important}.process-grid,.featured-grid,.intro-grid,.about-grid,.contact-grid,.faq-grid{gap:clamp(2.5rem,6vw,6rem)!important}.service-card{min-height:300px!important}.case-card,.case-large{min-height:390px!important}.case-large{min-height:500px!important}.ai-launcher svg{visibility:visible!important;opacity:1!important;display:block!important;width:22px!important;height:22px!important}.ai-launcher:before{content:'✦';display:none}.ai-launcher{background:#151e1d!important;border-color:rgba(226,178,142,.7)!important;color:#f4f1eb!important}.ai-launcher:hover{background:var(--copper)!important}@media(max-width:700px){section{padding-block:clamp(4rem,12vw,6rem)!important}.featured{padding-top:4rem!important}.process-grid,.featured-grid,.intro-grid,.about-grid,.contact-grid,.faq-grid{gap:2.5rem!important}.service-card{min-height:250px!important}.case-card,.case-large{min-height:330px!important}}
/* Overview polish: grid children must shrink instead of clipping copy on narrow widths. */
.intro-grid>*,.section-heading>*,.featured-grid>*,.process-grid>*,.about-grid>*,.contact-grid>*,.faq-grid>*,.investment-grid>*,.proof-grid article{min-width:0}.intro h1,.section-heading h2,.featured-copy h2,.process h2,.cases-heading h2,.about h2,.contact h2,.faq h2,.investment h2{overflow:visible!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}.investment-grid>div:last-child{min-width:0}.investment-grid>div:last-child p{max-width:52ch!important;overflow-wrap:break-word!important;white-space:normal!important}.proof-grid article p{max-width:42ch!important;overflow-wrap:break-word!important;white-space:normal!important}.section-heading>p{max-width:42ch!important;overflow-wrap:break-word!important}.cases-heading>div{min-width:0}.cases-heading>div p{overflow-wrap:break-word!important}@media(max-width:860px){.section-heading,.cases-heading{align-items:start!important}.investment-grid>div:last-child{width:100%}.investment-grid>div:last-child p{max-width:60ch!important}}

/* ── Kennisbank-sectie (homepage) ──────────────────────────────────────── */
.insights{padding-block:clamp(4.5rem,8vw,7rem)!important}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}
.insight-card{display:flex;flex-direction:column;gap:.55rem;padding:clamp(1.4rem,3vw,2rem);background:#fff;border:1px solid rgba(10,13,14,.14);transition:border-color .3s,transform .3s}
.insight-card:hover{border-color:#b77748;transform:translateY(-4px)}
.insight-card span{color:#98603a;font:600 .56rem/1 var(--display);letter-spacing:.16em;text-transform:uppercase}
.insight-card h3{font-size:clamp(1.4rem,2.4vw,1.9rem);margin-top:.3rem;letter-spacing:-.01em}
.insight-card p{color:#5a605d;font-size:.9rem;line-height:1.75}
.insight-card b{margin-top:auto;color:#98603a;font-weight:600;font-size:.85rem}
.insight-card b span{letter-spacing:0;text-transform:none;font-size:1rem}
@media(max-width:700px){.insight-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.insight-card{transition:none}}

/* ── Render-prestatie: onderliggende secties pas opbouwen bij scroll ──── */
.services,.process,.tools,.cases,.proof,.about,.investment,.insights,.faq,.contact,.site-footer{content-visibility:auto;contain-intrinsic-size:auto 700px}

/* ── Scrollspy: actieve navigatie-link ────────────────────────────────── */
.desktop-nav a.active{color:var(--copper-light)}
.desktop-nav a.active:after{width:100%}
/* ── Sectie-ritme: subtiele tinten zodat aangrenzende secties herkenbaar blijven ── */
.cases.section-dark{background:#0e1314}
.about.section-light{background:#eae5dc}
.insights.section-light{background:#e8e3d9}

/* ════ Tools: 4e groep volle breedte ════ */
.tool-group:last-child{grid-column:1/-1}
.tool-group:last-child .tool-links{grid-template-columns:repeat(2,1fr)!important}
@media(max-width:560px){.tool-group:last-child .tool-links{grid-template-columns:1fr!important}}

/* ════ Delen — word-of-mouth ════ */
.share{background:#101516}
.share .page-width{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.share h2{font-size:clamp(2.6rem,4.8vw,4.6rem)}
.share .share-copy{max-width:46ch;color:var(--muted);font-size:clamp(1rem,1.4vw,1.08rem);line-height:1.9;margin-top:1.5rem}
.share-card{background:rgba(18,24,24,.8);border:1px solid rgba(244,241,235,.14);padding:clamp(1.5rem,3vw,2.2rem)}
.share-card>span{font:600 .58rem/1 var(--display);letter-spacing:.2em;text-transform:uppercase;color:var(--copper-light)}
.share-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.4rem}
.share .button.is-shared{background:var(--copper);border-color:var(--copper);color:#fff}
.share-card .fine-print{margin-top:1.2rem}
@media(max-width:820px){.share .page-width{grid-template-columns:1fr}}

/* ════ Kennisbank: 9 artikelen in 2-kolomsraster (laatste kaart vol breed) ════ */
.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.insight-card{min-height:230px}
.insight-grid > :last-child:nth-child(odd){grid-column:1/-1;min-height:0}
@media(max-width:700px){.insight-grid{grid-template-columns:1fr}.insight-card{min-height:0}.insight-grid > :last-child:nth-child(odd){grid-column:auto}}

/* ════ Sticky CTA-balk (verschijnt na scroll voorbij de hero) ════ */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:59;transform:translateY(110%);transition:transform .35s ease;background:rgba(9,11,12,.96);border-top:1px solid rgba(198,203,209,.16);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 -12px 34px rgba(0,0,0,.35)}
.sticky-cta.is-visible{transform:none}
.mobile-menu:not([hidden])~.sticky-cta{transform:translateY(110%)}
.sticky-cta-inner{max-width:1240px;margin:0 auto;padding:.8rem var(--pad);display:flex;align-items:center;justify-content:space-between;gap:1.2rem}
.sticky-cta-info{min-width:0}
.sticky-cta-info strong{display:block;font:500 1rem/1.3 var(--display);letter-spacing:.01em;color:var(--paper);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky-cta-info span{display:block;font:500 .52rem/1 var(--display);letter-spacing:.14em;text-transform:uppercase;color:rgba(198,203,209,.6);margin-top:.3rem}
.sticky-cta-actions{display:flex;gap:.5rem;flex:0 0 auto}
.sticky-cta-actions .button{min-height:42px;padding:.6rem 1.05rem}
.sticky-cta-actions .button-ghost{background:transparent;color:var(--paper);border-color:rgba(244,241,235,.3)}
.sticky-cta-actions .button-ghost:hover{background:var(--paper);color:var(--ink)}
body.sticky-cta-open .whatsapp-launcher,body.sticky-cta-open .ai-launcher{bottom:calc(4.5rem + env(safe-area-inset-bottom))}
@media(max-width:560px){
  .sticky-cta-inner{padding:.6rem 1rem;gap:.6rem}
  .sticky-cta-info{display:none}
  .sticky-cta-actions{width:100%}
  .sticky-cta-actions .button{flex:1;justify-content:center;padding:.6rem .4rem;font-size:.56rem}
  .sticky-cta-actions .button span{display:none}
}
@media print{.sticky-cta{display:none!important}}

/* ════ Cijfers-band (data & vertrouwen) ════ */
.stats-band{background:linear-gradient(150deg,#0b0e0e,#111817 60%,#0b0e0e);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:clamp(2.75rem,6vw,4.5rem)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.5rem,4vw,3rem)}
.stat-item{display:flex;flex-direction:column;gap:.6rem;text-decoration:none}
.stat-num{font-family:var(--serif);font-size:clamp(2.3rem,5vw,3.9rem);line-height:.95;letter-spacing:-.03em;color:var(--copper-light);transition:color .25s}
.stat-item:hover .stat-num{color:var(--paper)}
.stat-label{font:500 .56rem/1.55 var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);max-width:24ch;transition:color .25s}
.stat-item:hover .stat-label{color:var(--copper-light)}
.stats-source{max-width:72ch;margin-top:2.2rem;color:#7e8780;font-size:.72rem;line-height:1.7}
@media(max-width:720px){.stats-grid{grid-template-columns:1fr 1fr;gap:1.8rem 1.2rem}.stat-label{max-width:none}}
@media(prefers-reduced-motion:reduce){.stat-num,.stat-label{transition:none}}

.investment-diy{margin-top:1.6rem;padding-top:1.2rem;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem;line-height:1.6}.investment-diy a{color:var(--copper-light);border-bottom:1px solid rgba(226,178,142,.45);transition:color .25s,border-color .25s}.investment-diy a:hover{color:var(--paper);border-color:var(--paper)}
