/* Clickdreams thema – stijlset "web-stad" (design website-laten-maken-apeldoorn). Gegenereerd uit de designs; niet handmatig bewerken maar via tools/buildcss.py. */
.fa{fill:currentColor}
.tile{width:52px;height:52px;border-radius:12px;display:grid;place-items:center;background:var(--c);color:#fff;flex:none}
.tile .fa{width:22px;height:22px}
.tile.sm{width:44px;height:44px;border-radius:10px}
.tile.sm .fa{width:19px;height:19px}
.hw{background:#000;color:#fff;position:relative}
.hw-top{position:relative}
.hw-top::before,.hw-top::after{content:"";position:absolute;left:0;right:0;top:0;bottom:44px}
.hw-top::before{background:radial-gradient(55% 75% at 100% 0%,#d4edf9 0%,rgba(212,237,249,0) 70%),radial-gradient(40% 65% at 0% 100%,#c4e5f4 0%,rgba(196,229,244,0) 72%),#f0f9ff;clip-path:polygon(0 0,100% 0,100% 88%,0 100%)}
.hw-top::after{display:none}
.hw-top .container{position:relative;z-index:1;display:grid;grid-template-columns:1.32fr 1fr;gap:48px;align-items:start;padding-top:88px}
.hw-text{padding-top:28px;color:#1d1d1f}
.hw-h1{font-size:clamp(38px,4.2vw,60px);white-space:nowrap;font-weight:800;line-height:1.1;color:#111216;margin:0 0 40px;letter-spacing:-.01em}
.hw-text p{font-size:17px;line-height:1.85;margin:0 0 18px;max-width:58ch}
.hw-text b{font-weight:700;color:#111216}
.hw-card{background:#fff;color:#1d1d1f;border-radius:26px;padding:40px 44px 42px;box-shadow:0 30px 60px -30px rgba(15,23,42,.45)}
.hw-card h2{font-size:30px;font-weight:700;color:#111216;line-height:1.2}
.hw-card .sub{display:block;font-size:22px;line-height:1.3;margin-top:4px;color:#1d1d1f}
.hw-card ul{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:14px;font-size:17.5px}
.hw-card li{display:flex;gap:18px;align-items:center}
.hw-card li .fa{width:18px;height:18px;flex:none;color:#111216}
.hw-card .hbtn{margin:30px auto 0;display:flex;width:max-content;height:56px;font-size:19px;padding:0 26px}
.hw-crumbs{display:flex;justify-content:flex-end;gap:10px;font-size:15px;padding-top:14px;flex-wrap:wrap}
.hw-crumbs span{opacity:.9}
.hw-usps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;text-align:center;padding-block:40px 80px}
.hw-usps .tile{width:60px;height:60px;border-radius:12px;margin:0 auto 20px}
.hw-usps .tile .fa{width:28px;height:28px}
.hw-usps h3{color:#fff;font-size:19px;font-weight:700;line-height:1.35;margin:0 0 12px}
.hw-usps p{margin:0;font-size:16.5px;line-height:1.85;color:#fff}
.kosten .container{display:grid;grid-template-columns:1fr 1.05fr;gap:72px;align-items:center}
.kosten .container{align-items:stretch}
.k-media{min-width:0}
.k-media .bento{min-height:560px}
.k-text p{margin:0 0 16px;font-size:16px;line-height:1.85;color:#1e2326}
.k-text .h2{margin:4px 0 24px}
.k-text b{color:var(--ink)}
.factors{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 24px}
.factor{background:#f8fafc;border:1px solid #f1f5f9;border-radius:14px;padding:16px 18px;display:flex;gap:14px;align-items:center;transition:transform .2s,box-shadow .2s,background .2s}
.factor:hover{transform:translateY(-3px);background:#fff;box-shadow:0 20px 40px -26px rgba(15,23,42,.4)}
.factor b{display:block;font-weight:600;font-size:15.5px;line-height:1.35}
.factor small{display:block;font-size:13.5px;color:#4a5060;line-height:1.45;margin-top:2px}
.k-note{display:flex;gap:12px;align-items:flex-start;background:var(--sky);border-radius:12px;padding:14px 16px;margin:0!important}
.k-note .fa{width:18px;height:18px;color:#009ee0;flex:none;margin-top:5px}
.steps-sec{background:#f0f9ff}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;position:relative;counter-reset:st}
.steps::before{content:"";position:absolute;left:12%;right:12%;top:26px;height:3px;border-radius:3px;background:var(--grad);opacity:.35}
.step{position:relative;display:flex;flex-direction:column}
.step .tile{margin:0 auto;position:relative;z-index:1;box-shadow:0 0 0 8px #f0f9ff}
.step-card{flex:1;margin-top:22px;background:#fff;border-radius:var(--radius);padding:26px 24px 28px;box-shadow:0 18px 40px -30px rgba(15,23,42,.35);transition:transform .2s,box-shadow .2s}
.step-card:hover{transform:translateY(-3px);box-shadow:0 26px 50px -28px rgba(15,23,42,.4)}
.step-n{display:block;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--c);margin-bottom:6px}
.step h3{font-size:19px;font-weight:700;margin:0 0 10px}
.step p{margin:0;font-size:15px;line-height:1.75;color:#3f4452}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.duo-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:22px;padding:clamp(28px,3.4vw,44px);display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s,background .2s}
.duo-card:hover{background:#fff;border-color:#e6e9f0;box-shadow:0 26px 50px -28px rgba(15,17,36,.35);transform:translateY(-3px)}
.duo-card .eyebrow{margin-top:22px}
.duo-card h2{font-size:clamp(24px,2.4vw,30px);font-weight:800;line-height:1.2;margin:4px 0 20px}
.duo-card p{margin:0 0 14px;font-size:15.5px;line-height:1.8;color:#30343f}
.duo-card a.inl{color:var(--btn);font-weight:600}
.perk{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px dashed #e8b6e3;border-radius:12px;padding:14px 16px;margin:4px 0 18px}
.perk .fa{width:18px;height:18px;color:var(--magenta);flex:none;margin-top:4px}
.perk p{margin:0;font-size:15px}
.duo-card h4{font-size:16px;font-weight:600;margin:6px 0 12px}
.checks{list-style:none;padding:0;margin:0 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;font-size:15px;color:var(--ink)}
.checks li{display:flex;gap:10px;align-items:center}
.checks .ck{width:24px;height:24px;border-radius:50%;background:var(--t-green);color:var(--t-green-i);display:grid;place-items:center;flex:none}
.checks .ck .ic{width:13px;height:13px;stroke-width:3}
.duo-card .btn{margin-top:auto;align-self:flex-start}
.duo-card .spacer{flex:1}
.who{background:#000;color:#fff;position:relative;padding-block:clamp(88px,9vw,120px)}
.who .curve{position:absolute;left:0;width:100%;height:clamp(14px,2.2vw,34px);display:block;fill:#fff}
.who .curve.t{top:-1px}
.who .curve.b{bottom:-1px;transform:scaleY(-1)}
.who .container{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center}
.who .h2{color:#fff;margin:4px 0 24px}
.who p{margin:0;color:#d5d6de;font-size:16px;line-height:1.85}
.groups{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 24px}
.group{display:flex;gap:14px;align-items:center;background:#111116;border:1px solid #23232b;border-radius:14px;padding:14px 16px;transition:border-color .2s,transform .2s}
.group:hover{border-color:#3a3a46;transform:translateY(-2px)}
.group b{font-weight:600;font-size:15.5px;line-height:1.35;color:#fff}
.group small{display:block;font-weight:400;font-size:13px;color:#a9a9b2}
.shop-card{background:#fff;border:0;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);border-radius:22px;overflow:hidden}
.shop-card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.shop-card .b{padding:28px 30px 32px}
.shop-card h3{color:var(--ink);font-size:22px;font-weight:700;margin:0 0 10px;display:flex;gap:12px;align-items:center}
.shop-card a.inl{color:var(--btn);font-weight:600}
.who .shop-card p{color:#30343f}
.shop-card .btn{margin-top:24px}
@media (max-width:1080px){
  .hw-top .container{grid-template-columns:1fr 1fr;gap:36px}
}
@media (max-width:960px){
  .hw-top::before{clip-path:polygon(0 0,100% 0,100% 96%,0 100%)}
  .hw-top .container{grid-template-columns:1fr;padding-top:48px;gap:28px}
  .hw-text{padding-top:0}
  .hw-h1{margin-bottom:28px;white-space:normal}
  .hw-usps{grid-template-columns:1fr 1fr;row-gap:44px}
  .kosten .container,.who .container{grid-template-columns:1fr;gap:48px}
  .steps{grid-template-columns:1fr 1fr}
  .steps::before{display:none}
  .duo{grid-template-columns:1fr}
}
@media (max-width:620px){
  .hw-card{padding:30px 24px 32px}
  .hw-card h2{font-size:26px}
  .hw-card .sub{font-size:19px}
  .hw-card li{font-size:16px;gap:14px}
  .hw-crumbs{justify-content:flex-start;font-size:14px}
  .hw-usps{grid-template-columns:1fr}
  .factors,.groups,.checks{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
}
.k-h3{font-size:17px;font-weight:600;color:var(--ink);margin:22px 0 14px}
.k-text a.inl{color:var(--btn);font-weight:600}
.zeker .container{grid-template-columns:1fr 1.05fr}
.zeker .who-text p b{color:#fff}
.zeker .btn{margin-top:30px}
.zk-list{list-style:none;margin:0;padding:8px 28px;background:#111116;border:1px solid #23232b;border-radius:22px}
.zk-list li{display:flex;gap:18px;align-items:flex-start;padding:22px 0;border-top:1px solid #23232b}
.zk-list li:first-child{border-top:0}
.zk-list .tile{width:48px;height:48px;border-radius:12px}
.zk-list .tile .fa{width:22px;height:22px}
.zk-list h3{margin:2px 0 4px;font-size:17px;font-weight:600;color:#fff}
.zeker .zk-list p{margin:0;font-size:15px;line-height:1.65;color:#b9bac4}
@media (max-width:991px){
  .zeker .container{grid-template-columns:1fr}
}
@media (max-width:560px){
  .zk-list{padding:4px 18px}
  .zk-list li{gap:14px;padding:18px 0}
}
.hw-h1 .h1-city{display:block}
.inl{color:var(--btn);font-weight:600}
.city .container{display:grid;grid-template-columns:1fr 1.08fr;gap:80px;align-items:center}
.city-text p{margin:0 0 16px;font-size:16px;line-height:1.85;color:#1e2326}
.city-text .h2{margin:4px 0 24px}
.city-text b{color:var(--ink)}
.city-media{position:relative;min-width:0}
.city-photo{position:relative;margin:0;border-radius:24px;overflow:hidden;aspect-ratio:5/4.4;box-shadow:0 30px 60px -34px rgba(15,23,42,.55)}
.city-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,.8,.2,1)}
.city-photo:hover img{transform:scale(1.025)}
.city-photo::after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(to top,rgba(0,0,0,.55),rgba(0,0,0,0));pointer-events:none}
.city-cap{position:absolute;z-index:1;left:22px;bottom:20px;color:#fff;font-size:14px;line-height:1.4}
.city-cap b{font-weight:600}
.city-tag{position:absolute;z-index:2;left:22px;top:22px;display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--ink);border-radius:999px;padding:8px 16px 8px 10px;font-size:14px;font-weight:600;box-shadow:0 10px 24px -14px rgba(15,23,42,.6)}
.city-tag i{width:26px;height:26px;border-radius:50%;background:var(--grad);display:grid;place-items:center;color:#fff}
.city-tag .fa{width:12px;height:12px;fill:currentColor}
.city-route{position:absolute;z-index:2;right:-28px;bottom:-30px;background:#fff;border-radius:18px;padding:18px 22px 18px 18px;display:flex;gap:14px;align-items:center;box-shadow:0 24px 48px -26px rgba(15,23,42,.55);border:1px solid #eef1f6}
.city-route div>b{display:block;color:var(--ink);font-size:16px;line-height:1.3}
.city-route div>span{display:block;font-size:13.5px;color:var(--muted);line-height:1.4}
.kernen{list-style:none;padding:0;margin:4px 0 26px;display:flex;flex-wrap:wrap;gap:8px}
.kernen li{display:inline-flex;align-items:center;gap:6px;background:#f8fafc;border:1px solid #eef1f6;border-radius:999px;padding:6px 14px 6px 10px;font-size:14px;font-weight:500;color:var(--ink);line-height:1.3}
.kernen .fa{width:11px;height:13px;fill:var(--btn)}
.city-text .btn{margin-top:8px}
.local{background:#f0f9ff}
.local .svc{background:#fff;border-color:#e6eef6}
.local .svc:hover{border-color:#d9dbe7}
.local .svc-ic .fa{width:24px;height:24px}
.local .svc-link{color:var(--btn)}
.steps-sec.wit{background:#fff}
.steps-sec.wit .step .tile{box-shadow:0 0 0 8px #fff}
.steps-sec.wit .step-card{background:#f8fafc;box-shadow:none;border:1px solid #f1f5f9}
.steps-sec.wit .step-card:hover{background:#fff;box-shadow:0 26px 50px -28px rgba(15,23,42,.4)}
.section.faq{background:var(--soft)}
.steden{padding-bottom:0}
.steden-intro{display:grid;grid-template-columns:1fr 1fr;gap:24px 64px;align-items:end;margin-bottom:36px}
.steden-intro .h2{margin:4px 0 0}
.steden p{margin:0 0 14px;font-size:16px;line-height:1.85;color:#30343f}
.steden-list{list-style:none;margin:0;padding:24px 32px;columns:3;column-gap:28px;background:#f8fafc;border:1px solid #f1f5f9;border-radius:22px}
.steden-list li{break-inside:avoid}
.steden-list a{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:15px;line-height:1.4;color:var(--ink);transition:color .2s}
.steden-list a .ic{width:15px;height:15px;color:var(--btn);stroke-width:2.6;transition:transform .2s}
.steden-list a:hover{color:var(--btn)}
.steden-list a:hover .ic{transform:translateX(3px)}
.steden-list a[aria-current]{font-weight:700;color:var(--btn)}
@media (max-width:960px){
  .city .container,.steden-intro{grid-template-columns:1fr;gap:56px}
  .steden-intro{gap:8px}
  .steden-list{columns:2}
  .city-media{order:-1}
  .city-route{right:16px}
}
@media (max-width:620px){
  .city-route{position:relative;right:auto;bottom:auto;margin:-36px 16px 0}
  .city-photo{aspect-ratio:4/3.6}
  .city-cap{bottom:48px}
  .steden-list{columns:1;padding:14px 20px}
}
.steps-sec{background:#f0f9ff}
.tl{list-style:none;margin:0 auto;padding:0;max-width:1080px;position:relative;display:grid;gap:36px;--pt:52px}
.tl-line{position:absolute;left:50%;top:0;bottom:0;width:3px;margin-left:-1.5px;border-radius:3px;background:#dfe3ef}
.tl-line i{position:absolute;left:0;top:0;width:100%;height:var(--p,0px);border-radius:3px;background:var(--btn);box-shadow:0 0 12px rgba(180,37,171,.35)}
.tl-item{display:grid;grid-template-columns:minmax(0,1fr) var(--pt) minmax(0,1fr);column-gap:36px;align-items:center;position:relative}
.tl-card{grid-column:1;grid-row:1;background:#fff;border-radius:var(--radius);padding:28px 30px 30px;box-shadow:0 18px 40px -30px rgba(15,23,42,.35);position:relative;transition:transform .2s,box-shadow .2s}
.tl-card:hover{transform:translateY(-3px);box-shadow:0 26px 50px -28px rgba(15,23,42,.4)}
.tl-card::after{content:"";position:absolute;top:50%;right:-8px;width:16px;height:16px;background:#fff;transform:translateY(-50%) rotate(45deg);border-radius:2px}
.tl-card h3{font-size:19px;font-weight:700;margin:0 0 10px}
.tl-card p{margin:0;font-size:15.5px;line-height:1.8;color:#3f4452}
.tl-card a.inl{color:var(--btn);font-weight:600}
.tl-point{grid-column:2;grid-row:1;width:var(--pt);height:var(--pt);border-radius:50%;display:grid;place-items:center;background:#ece9f8;color:#9c97c9;box-shadow:0 0 0 8px #f0f9ff;position:relative;z-index:1;transition:background .35s,color .35s,transform .35s}
.tl-point .fa{width:20px;height:20px}
.tl-item.on .tl-point{background:var(--btn);color:#fff;transform:scale(1.06)}
.tl-meta{grid-column:3;grid-row:1;font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8b90a3;transition:color .35s}
.tl-item.on .tl-meta{color:var(--btn)}
.tl-item.r .tl-card{grid-column:3}
.tl-item.r .tl-meta{grid-column:1;text-align:right}
.tl-item.r .tl-card::after{right:auto;left:-8px}
@media (max-width:760px){
  .tl{--pt:44px;gap:28px}
  .tl-line{left:22px}
  .tl-item,.tl-item.r{grid-template-columns:var(--pt) minmax(0,1fr);column-gap:18px;row-gap:10px;align-items:start}
  .tl-point,.tl-item.r .tl-point{grid-column:1;grid-row:1}
  .tl-meta,.tl-item.r .tl-meta{grid-column:2;grid-row:1;text-align:left;align-self:center}
  .tl-card,.tl-item.r .tl-card{grid-column:2;grid-row:2;padding:22px 22px 24px}
  .tl-card::after,.tl-item.r .tl-card::after{display:none}
}
.steps-sec.wit .tl-point{box-shadow:0 0 0 8px #fff}
.steps-sec.wit .tl-card{background:#f8fafc;box-shadow:none;border:1px solid #f1f5f9}
.steps-sec.wit .tl-card::after{background:#f8fafc;border:1px solid #f1f5f9;border-left:0;border-bottom:0}
.steps-sec.wit .tl-item.r .tl-card::after{border:1px solid #f1f5f9;border-right:0;border-top:0}
.steps-sec.wit .tl-card:hover{background:#fff;box-shadow:0 26px 50px -28px rgba(15,23,42,.4)}
.steps-sec.wit .tl-card:hover::after{background:#fff}
.who .shop-card p{margin:0}
