/* designated-2026 · vacature. Overgenomen uit concepten/2026-10-08-vacature-online-marketing-consultant.html; base.css staat er niet in. */
#sp-hero { position: relative; overflow: hidden; background: var(--navy); color: var(--ink); padding: calc(150 * var(--u)) var(--rand) calc(90 * var(--u)); display: grid; grid-template-columns: 1.08fr .92fr; gap: calc(var(--pad) * 1.6); align-items: center; min-height: min(100svh, calc(980 * var(--u))); }
#sp-hero > * { position: relative; z-index: 1; }
#sp-hero .mark { position: absolute; z-index: 0; width: 70vw; max-width: calc(1100 * var(--u)); left: -24vw; bottom: -42%; color: rgba(255,255,255,.035); transform: rotate(var(--rot, 0deg)); pointer-events: none; }
#sp-hero .crumb { font-family: "Fragment Mono", monospace; font-size: calc(11 * var(--u)); letter-spacing: .08em; text-transform: uppercase; color: var(--soft); display: flex; gap: calc(10 * var(--u)); align-items: center; flex-wrap: wrap; }
#sp-hero .crumb a:hover { color: var(--ink); }
#sp-hero .crumb span { opacity: .5; }
#sp-hero h1 { font-size: clamp(calc(48 * var(--u)), min(5.9vw, calc(84.96 * var(--u))), calc(108 * var(--u))); margin-top: calc(26 * var(--u)); }
#sp-hero h1 em { color: var(--lime); }
#sp-hero .lead { margin-top: calc(30 * var(--u)); font-size: clamp(calc(17 * var(--u)), min(1.3vw, calc(18.72 * var(--u))), calc(20 * var(--u))); line-height: 1.5; color: var(--soft); max-width: 44ch; }
#sp-hero .lead b { color: var(--ink); font-weight: 600; }
#sp-hero .acts { margin-top: calc(34 * var(--u)); display: flex; gap: calc(22 * var(--u)); align-items: center; flex-wrap: wrap; }
#sp-hero .acts .ghost { font-size: calc(15 * var(--u)); font-weight: 500; border-bottom: 1px solid var(--line); padding-bottom: calc(3 * var(--u)); transition: border-color .3s; }
#sp-hero .acts .ghost:hover { border-color: var(--ink); }
#sp-hero .trust { margin-top: calc(44 * var(--u)); display: flex; gap: calc(10 * var(--u)); flex-wrap: wrap; align-items: center; }
#sp-hero .trust > span { display: inline-flex; gap: calc(9 * var(--u)); align-items: center; font-size: calc(13 * var(--u)); color: var(--soft); padding: calc(9 * var(--u)) calc(14 * var(--u)) calc(9 * var(--u)) calc(10 * var(--u)); border-radius: calc(999 * var(--u)); }
#sp-hero .trust b { color: var(--ink); font-weight: 600; }
#sp-hero .vis { position: relative; aspect-ratio: 1 / 1.08; }
#sp-hero .frame { position: absolute; inset: 0 0 0 8%; border-radius: calc(var(--r) * 1.3); overflow: hidden; background: #0d2230; box-shadow: 0 calc(40 * var(--u)) calc(120 * var(--u)) rgba(0,0,0,.4); clip-path: inset(12% 0 0 0 round calc(var(--r) * 1.3)); transition: clip-path 1.4s var(--ease); }
#sp-hero.in .frame { clip-path: inset(0 0 0 0 round calc(var(--r) * 1.3)); }
#sp-hero .frame img { position: absolute; left: 0; top: -8%; width: 100%; height: 116%; object-fit: cover; object-position: 46% 50%; transform: translateY(var(--py, 0px)) scale(1.06); }
#sp-hero .frame::after { content: ""; position: absolute; inset: 0; background: linear-gradient(200deg, rgba(10,29,41,0) 40%, rgba(10,29,41,.55)); }
#sp-hero .fc { position: absolute; z-index: 2; border-radius: calc(16 * var(--u)); padding: calc(14 * var(--u)) calc(16 * var(--u)); font-size: calc(13 * var(--u)); color: var(--ink); box-shadow: 0 calc(20 * var(--u)) calc(50 * var(--u)) rgba(0,0,0,.25); opacity: 0; transform: translateY(calc(18 * var(--u))); transition: opacity .8s ease, transform 1.1s var(--ease); }
#sp-hero.in .fc { opacity: 1; transform: translateY(var(--fy, 0px)); }
#sp-hero .fc.glass { background: linear-gradient(135deg, rgba(10,29,41,.62), rgba(10,29,41,.4)); border-color: rgba(255,255,255,.16); }
#sp-hero .fc small { display: block; font-family: "Fragment Mono", monospace; font-size: calc(10 * var(--u)); letter-spacing: .08em; text-transform: uppercase; color: var(--soft); margin-bottom: calc(8 * var(--u)); }
#sp-hero .fc.q { left: 0; top: 14%; width: min(calc(320 * var(--u)), 74%); transition-delay: .5s; }
#sp-hero .fc.q .bar { display: flex; align-items: center; gap: calc(10 * var(--u)); background: rgba(255,255,255,.12); border-radius: calc(999 * var(--u)); padding: calc(10 * var(--u)) calc(14 * var(--u)); min-height: calc(40 * var(--u)); font-size: calc(14 * var(--u)); }
#sp-hero .fc.q .bar svg { width: calc(14 * var(--u)); height: calc(14 * var(--u)); flex: none; opacity: .7; }
#sp-hero .fc.q .caret { display: inline-block; width: 1.5px; height: calc(15 * var(--u)); background: var(--lime); margin-left: 1px; vertical-align: -2px; animation: blink 1s steps(1) infinite; }
@keyframes blink { 50% { opacity: 0; } }
#sp-hero .fc.f { right: 5%; bottom: 9%; width: min(calc(290 * var(--u)), 70%); transition-delay: .7s; }
#sp-hero .fc.f ol { list-style: none; padding: 0; display: grid; gap: calc(8 * var(--u)); }
#sp-hero .fc.f li { display: grid; grid-template-columns: calc(62 * var(--u)) 1fr auto; gap: calc(10 * var(--u)); align-items: center; font-size: calc(12.5 * var(--u)); }
#sp-hero .fc.f li i { height: calc(6 * var(--u)); border-radius: calc(999 * var(--u)); background: rgba(255,255,255,.14); position: relative; overflow: hidden; }
#sp-hero .fc.f li i::after { content: ""; position: absolute; inset: 0; width: var(--w); background: var(--lime); border-radius: inherit; transform: scaleX(0); transform-origin: 0 50%; transition: transform 1.4s var(--ease); transition-delay: calc(1s + var(--d) * .15s); }
#sp-hero.in .fc.f li i::after { transform: none; }
#sp-hero .fc.f li b { font-weight: 600; font-variant-numeric: tabular-nums; }
#sp-hero .fc.d { right: 0; top: 4%; transition-delay: .9s; }
#sp-hero .fc.d .won { color: var(--lime); font-weight: 600; }
@media (max-width: 960px) {
  #sp-hero { grid-template-columns: 1fr; padding-top: calc(128 * var(--u)); min-height: 0; }
  #sp-hero .vis { aspect-ratio: 1 / .9; max-width: calc(640 * var(--u)); }
}
@media (max-width: 560px) {
  #sp-hero .fc.d { display: none; }
  #sp-hero .frame { inset: 0; }
  #sp-hero .fc.q { top: auto; bottom: 34%; }
}
#sp-why { background: var(--light); color: var(--ink-dark); padding: calc(130 * var(--u) * var(--sy-t)) var(--rand) calc(130 * var(--u) * var(--sy-b)); display: grid; grid-template-columns: 1fr 1.1fr; gap: calc(var(--pad) * 2); align-items: start; }
#sp-why .stick { position: sticky; top: calc(130 * var(--u)); }
#sp-why .h em { color: var(--navy); }
#sp-why .body > p { font-size: clamp(calc(18 * var(--u)), min(1.45vw, calc(20.88 * var(--u))), calc(22 * var(--u))); line-height: 1.5; letter-spacing: -.01em; }
#sp-why .body > p + p { margin-top: calc(18 * var(--u)); color: var(--soft-dark); font-size: calc(17 * var(--u)); }
#sp-why .tiles { margin-top: calc(48 * var(--u)); display: grid; gap: calc(12 * var(--u)); }
#sp-why .tile { display: grid; grid-template-columns: calc(52 * var(--u)) 1fr; gap: calc(20 * var(--u)); padding: calc(26 * var(--u)); border-radius: var(--r); background: #fff; border: 1px solid var(--line-light); transition: transform .5s var(--ease), box-shadow .5s; }
#sp-why .tile:hover { box-shadow: 0 calc(24 * var(--u)) calc(60 * var(--u)) rgba(10,29,41,.08); }
#sp-why .tile .n { width: calc(52 * var(--u)); height: calc(52 * var(--u)); border-radius: calc(14 * var(--u)); background: var(--navy); color: var(--lime); display: grid; place-items: center; font-family: "Fragment Mono", monospace; font-size: calc(13 * var(--u)); }
#sp-why .tile h3 { font-size: calc(22 * var(--u)); font-weight: 700; letter-spacing: -.035em; line-height: 1.15; }
#sp-why .tile p { margin-top: calc(8 * var(--u)); font-size: calc(15.5 * var(--u)); line-height: 1.5; color: var(--soft-dark); }
@media (max-width: 960px) {
  #sp-why { grid-template-columns: 1fr; gap: calc(40 * var(--u)); padding: calc(100 * var(--u) * var(--sy-t)) var(--rand) calc(100 * var(--u) * var(--sy-b)); }
  #sp-why .stick { position: static; }
}
#sp-hero h1 { font-size: clamp(calc(46 * var(--u)), min(5.6vw, calc(80.64 * var(--u))), calc(100 * var(--u))); }
#sp-hero .sub { margin-top: calc(26 * var(--u)); font-size: clamp(calc(19 * var(--u)), min(1.6vw, calc(23.04 * var(--u))), calc(24 * var(--u))); font-weight: 600; letter-spacing: -.025em; line-height: 1.3; max-width: 30ch; }
#sp-hero .sub em { font-family: "Instrument Serif", serif; font-style: italic; font-weight: 400; color: var(--lime); letter-spacing: -.005em; }
#sp-hero .facts { margin-top: calc(34 * var(--u)); display: flex; flex-wrap: wrap; gap: calc(8 * var(--u)); }
#sp-hero .facts span { display: inline-flex; gap: calc(9 * var(--u)); align-items: center; font-size: calc(14 * var(--u)); padding: calc(10 * var(--u)) calc(15 * var(--u)) calc(10 * var(--u)) calc(12 * var(--u)); border-radius: calc(999 * var(--u)); color: var(--ink); }
#sp-hero .facts svg { width: calc(16 * var(--u)); height: calc(16 * var(--u)); color: var(--lime); flex: none; }
#sp-hero .facts .money { background: var(--lime); color: var(--navy); border-color: transparent; font-weight: 600; }
#sp-hero .facts .money svg { color: var(--navy); }
#sp-hero .frame img { object-position: 50% 40%; }
#sp-hero .fc.ag { left: 0; top: 50%; width: min(calc(320 * var(--u)), 62%);  transition-delay: .5s; }
#sp-hero .fc.ag .msg { display: grid; grid-template-columns: calc(30 * var(--u)) 1fr; gap: calc(10 * var(--u)); align-items: start; font-size: calc(13.5 * var(--u)); line-height: 1.4; }
#sp-hero .fc.ag .bot { width: calc(30 * var(--u)); height: calc(30 * var(--u)); border-radius: calc(9 * var(--u)); background: var(--lime); color: var(--navy); display: grid; place-items: center; }
#sp-hero .fc.ag .bot svg { width: calc(16 * var(--u)); height: calc(16 * var(--u)); }
#sp-hero .fc.ag .dip { margin-top: calc(10 * var(--u)); height: calc(34 * var(--u)); }
#sp-hero .fc.ag .dip path { fill: none; stroke: #ff8a7a; stroke-width: 2; stroke-dasharray: 260; stroke-dashoffset: 260; transition: stroke-dashoffset 1.6s var(--ease) 1.2s; }
#sp-hero.in .fc.ag .dip path { stroke-dashoffset: 0; }
#sp-hero .fc.call { right: 5%; bottom: 8%; width: min(calc(300 * var(--u)), 70%); display: flex; gap: calc(12 * var(--u)); align-items: center; transition-delay: .9s; }
#sp-hero .fc.call .ring { width: calc(40 * var(--u)); height: calc(40 * var(--u)); border-radius: 50%; background: var(--lime); color: var(--navy); display: grid; place-items: center; flex: none; animation: ring 2.4s ease-in-out infinite 2s; }
#sp-hero .fc.call .ring svg { width: calc(18 * var(--u)); height: calc(18 * var(--u)); }
#sp-hero .fc.call b { display: block; font-size: calc(14 * var(--u)); }
#sp-hero .fc.call span { font-size: calc(12.5 * var(--u)); color: var(--soft); }
@keyframes ring { 0%, 70%, 100% { transform: rotate(0); } 75% { transform: rotate(-14deg); } 80% { transform: rotate(12deg); } 85% { transform: rotate(-8deg); } 90% { transform: rotate(5deg); } }
#sp-why .body > p.pull { margin-top: calc(34 * var(--u)); padding: calc(26 * var(--u)) calc(28 * var(--u)); border-radius: var(--r); background: var(--navy); color: var(--ink); font-size: clamp(calc(19 * var(--u)), min(1.5vw, calc(21.6 * var(--u))), calc(23 * var(--u))); font-weight: 600; letter-spacing: -.025em; line-height: 1.35; }
#sp-why .pull em { font-family: "Instrument Serif", serif; font-style: italic; font-weight: 400; color: var(--lime); }
#sp-dag { background: var(--navy); color: var(--ink); padding: calc(130 * var(--u) * var(--sy-t)) var(--rand) calc(130 * var(--u) * var(--sy-b)); position: relative; overflow: hidden; }
#sp-dag .sec-top { display: flex; justify-content: space-between; align-items: end; gap: calc(24 * var(--u)); flex-wrap: wrap; margin-bottom: calc(64 * var(--u)); }
#sp-dag .h em { color: var(--lime); }
#sp-dag .note { max-width: 38ch; color: var(--soft); font-size: calc(16 * var(--u)); line-height: 1.5; }
#sp-dag .tl { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: calc(14 * var(--u)); }
#sp-dag .tl::before { content: ""; position: absolute; left: 0; right: 0; top: calc(23 * var(--u)); height: 1px; background: var(--line); }
#sp-dag .tl .fill { position: absolute; left: 0; top: calc(23 * var(--u)); height: 1px; width: 100%; background: var(--lime); transform: scaleX(var(--p, 0)); transform-origin: 0 50%; }
#sp-dag .mo { position: relative; padding-top: calc(70 * var(--u)); }
#sp-dag .mo .t { position: absolute; top: 0; left: 0; display: inline-flex; gap: calc(10 * var(--u)); align-items: center; font-family: "Fragment Mono", monospace; font-size: calc(12 * var(--u)); padding: calc(13 * var(--u)) calc(16 * var(--u)) calc(13 * var(--u)) calc(13 * var(--u)); border-radius: calc(999 * var(--u)); background: var(--navy-2); border: 1px solid var(--line); color: var(--soft); transition: color .5s, border-color .5s, background .5s; }
#sp-dag .mo .t i { width: calc(8 * var(--u)); height: calc(8 * var(--u)); border-radius: 50%; background: var(--line); transition: background .5s, box-shadow .5s; }
#sp-dag .mo.on .t { color: var(--ink); border-color: rgba(200,245,96,.5); }
#sp-dag .mo.on .t i { background: var(--lime); box-shadow: 0 0 0 calc(4 * var(--u)) rgba(200,245,96,.18); }
#sp-dag .mo .who { font-family: "Fragment Mono", monospace; font-size: calc(11 * var(--u)); letter-spacing: .08em; text-transform: uppercase; color: var(--soft); }
#sp-dag .mo .who.you { color: var(--lime); }
#sp-dag .mo h3 { margin-top: calc(12 * var(--u)); font-size: clamp(calc(22 * var(--u)), min(1.9vw, calc(27.36 * var(--u))), calc(30 * var(--u))); font-weight: 700; letter-spacing: -.05em; line-height: 1.05; }
#sp-dag .mo p { margin-top: calc(12 * var(--u)); font-size: calc(15.5 * var(--u)); line-height: 1.5; color: var(--soft); }
#sp-dag .mo { opacity: .35; transition: opacity .6s; }
#sp-dag .mo.on { opacity: 1; }
@media (max-width: 900px) {
  #sp-dag .tl { grid-template-columns: 1fr 1fr; row-gap: calc(44 * var(--u)); }
  #sp-dag .tl::before, #sp-dag .tl .fill { display: none; }
}
@media (max-width: 560px) {
  #sp-dag .tl { grid-template-columns: 1fr; }
  #sp-dag .mo { opacity: 1; }
}
#sp-taken { background: var(--light); color: var(--ink-dark); padding: calc(130 * var(--u) * var(--sy-t)) var(--rand) calc(130 * var(--u) * var(--sy-b)); }
#sp-taken .sec-top { display: flex; justify-content: space-between; align-items: end; gap: calc(24 * var(--u)); flex-wrap: wrap; margin-bottom: calc(56 * var(--u)); }
#sp-taken .h em { color: var(--navy); }
#sp-taken .grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: calc(12 * var(--u)); }
#sp-taken .task { padding: calc(28 * var(--u)); border-radius: var(--r); background: #fff; border: 1px solid var(--line-light); transition: transform .5s var(--ease), box-shadow .5s; }
#sp-taken .task:hover { box-shadow: 0 calc(24 * var(--u)) calc(60 * var(--u)) rgba(10,29,41,.08); }
#sp-taken .task .n { font-family: "Fragment Mono", monospace; font-size: calc(12 * var(--u)); color: var(--soft-dark); }
#sp-taken .task h3 { margin-top: calc(30 * var(--u)); font-size: calc(22 * var(--u)); font-weight: 700; letter-spacing: -.045em; line-height: 1.1; }
#sp-taken .task p { margin-top: calc(10 * var(--u)); font-size: calc(15 * var(--u)); line-height: 1.55; color: var(--soft-dark); }
#sp-taken .task.key { background: var(--navy); color: var(--ink); border-color: var(--navy); }
#sp-taken .task.key .n, #sp-taken .task.key p { color: var(--soft); }
#sp-taken .task.key h3::after { content: " ●"; color: var(--lime); font-size: calc(11 * var(--u)); vertical-align: calc(4 * var(--u)); }
@media (max-width: 1000px) {
  #sp-taken .grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px) {
  #sp-taken .grid { grid-template-columns: 1fr; }
}
#sp-profiel { background: var(--light); color: var(--ink-dark); padding: calc(20 * var(--u)) var(--rand) calc(130 * var(--u) * var(--sy-b)); display: grid; grid-template-columns: 1.25fr .75fr; gap: calc(var(--pad) * 1.5); align-items: start; }
#sp-profiel .h em { color: var(--navy); }
#sp-profiel .list { margin-top: calc(40 * var(--u)); border-top: 1px solid var(--line-light); }
#sp-profiel .it { display: grid; grid-template-columns: calc(34 * var(--u)) 1fr; gap: calc(16 * var(--u)); padding: calc(20 * var(--u)) 0; border-bottom: 1px solid var(--line-light); }
#sp-profiel .it .ck { width: calc(26 * var(--u)); height: calc(26 * var(--u)); border-radius: 50%; background: var(--lime); color: var(--navy); display: grid; place-items: center; font-size: calc(12 * var(--u)); font-weight: 700; margin-top: 1px; }
#sp-profiel .it.plus .ck { background: transparent; border: 1.5px dashed var(--soft-dark); color: var(--soft-dark); }
#sp-profiel .it b { display: block; font-size: calc(17 * var(--u)); letter-spacing: -.02em; }
#sp-profiel .it p { margin-top: calc(5 * var(--u)); font-size: calc(15 * var(--u)); line-height: 1.55; color: var(--soft-dark); }
#sp-profiel .not { position: sticky; top: calc(120 * var(--u)); border-radius: calc(var(--r) * 1.1); background: var(--navy); color: var(--ink); padding: calc(32 * var(--u)); }
#sp-profiel .not h3 { font-size: clamp(calc(28 * var(--u)), min(2.4vw, calc(34.56 * var(--u))), calc(38 * var(--u))); font-weight: 700; letter-spacing: -.055em; line-height: 1; }
#sp-profiel .not h3 em { font-family: "Instrument Serif", serif; font-style: italic; font-weight: 400; color: var(--lime); }
#sp-profiel .not ul { margin-top: calc(24 * var(--u)); display: grid; gap: calc(4 * var(--u)); }
#sp-profiel .not li { display: grid; grid-template-columns: calc(26 * var(--u)) 1fr; gap: calc(12 * var(--u)); padding: calc(12 * var(--u)) 0; border-top: 1px solid var(--line); font-size: calc(15 * var(--u)); line-height: 1.5; color: var(--soft); }
#sp-profiel .not li i { font-style: normal; width: calc(22 * var(--u)); height: calc(22 * var(--u)); border-radius: 50%; border: 1px solid var(--line); display: grid; place-items: center; font-size: calc(11 * var(--u)); color: #ff8a7a; margin-top: 1px; }
#sp-profiel .not .ok { margin-top: calc(22 * var(--u)); padding: calc(16 * var(--u)) calc(18 * var(--u)); border-radius: calc(14 * var(--u)); background: rgba(200,245,96,.12); color: var(--ink); font-size: calc(14.5 * var(--u)); line-height: 1.45; }
@media (max-width: 960px) {
  #sp-profiel { grid-template-columns: 1fr; }
  #sp-profiel .not { position: static; }
}
#sp-krijgt { background: var(--navy); color: var(--ink); padding: calc(130 * var(--u) * var(--sy-t)) var(--rand) calc(130 * var(--u) * var(--sy-b)); }
#sp-krijgt .sec-top { display: flex; justify-content: space-between; align-items: end; gap: calc(24 * var(--u)); flex-wrap: wrap; margin-bottom: calc(52 * var(--u)); }
#sp-krijgt .h em { color: var(--lime); }
#sp-krijgt .bento { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: minmax(calc(220 * var(--u)), auto); gap: calc(12 * var(--u)); }
#sp-krijgt .b { position: relative; overflow: hidden; border-radius: var(--r); padding: calc(24 * var(--u)); background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); display: flex; flex-direction: column; justify-content: space-between; gap: calc(18 * var(--u)); transition: background .4s; }
#sp-krijgt .b:hover { background: rgba(255,255,255,.08); }
#sp-krijgt .b .k { font-family: "Fragment Mono", monospace; font-size: calc(11 * var(--u)); letter-spacing: .08em; text-transform: uppercase; color: var(--soft); }
#sp-krijgt .b h3 { font-size: calc(22 * var(--u)); font-weight: 700; letter-spacing: -.045em; line-height: 1.1; }
#sp-krijgt .b p { margin-top: calc(8 * var(--u)); font-size: calc(14.5 * var(--u)); line-height: 1.5; color: var(--soft); }
#sp-krijgt .b.money { grid-column: span 2; background: var(--lime); color: var(--navy); border: 0; }
#sp-krijgt .b.money .k, #sp-krijgt .b.money p { color: rgba(10,29,41,.7); }
#sp-krijgt .b.money .big { font-size: clamp(calc(48 * var(--u)), min(5vw, calc(72 * var(--u))), calc(84 * var(--u))); font-weight: 700; letter-spacing: -.07em; line-height: .85; }
#sp-krijgt .b.money .big small { font-size: .32em; letter-spacing: -.02em; font-weight: 700; margin-left: calc(6 * var(--u)); }
#sp-krijgt .b.photo { grid-row: span 2; padding: 0; justify-content: flex-start; }
#sp-krijgt .b.photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
#sp-krijgt .b.photo:hover img { transform: scale(1.05); }
#sp-krijgt .b.photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,29,41,.94), rgba(10,29,41,.6) 30%, rgba(10,29,41,0) 55%); }
#sp-krijgt .b.photo > div { position: relative; z-index: 1; padding: calc(24 * var(--u)); }
#sp-krijgt .b.wide { grid-column: span 2; }
#sp-krijgt .b .gear { display: flex; flex-wrap: wrap; gap: calc(6 * var(--u)); }
#sp-krijgt .b .gear li { font-size: calc(12.5 * var(--u)); padding: calc(6 * var(--u)) calc(10 * var(--u)); border-radius: calc(999 * var(--u)); background: rgba(255,255,255,.07); color: var(--soft); }
@media (max-width: 1000px) {
  #sp-krijgt .bento { grid-template-columns: 1fr 1fr; }
  #sp-krijgt .b.photo { grid-row: span 1; min-height: calc(320 * var(--u)); }
}
@media (max-width: 560px) {
  #sp-krijgt .bento { grid-template-columns: 1fr; }
  #sp-krijgt .b.money, #sp-krijgt .b.wide { grid-column: auto; }
}
#solliciteren { background: var(--navy); color: var(--ink); position: relative; overflow: hidden; padding: calc(40 * var(--u)) var(--rand) calc(130 * var(--u) * var(--sy-b)); display: grid; grid-template-columns: 1fr .95fr; gap: calc(var(--pad) * 2); align-items: start; }
#solliciteren > * { position: relative; z-index: 1; }
#solliciteren .mark { position: absolute; z-index: 0; width: 60vw; max-width: calc(900 * var(--u)); right: -16vw; bottom: -24%; color: rgba(255,255,255,.04); pointer-events: none; }
#solliciteren .inner { border-top: 1px solid var(--line); padding-top: calc(90 * var(--u)); grid-column: 1 / -1; display: grid; grid-template-columns: inherit; gap: inherit; align-items: start; }
#solliciteren .h { font-size: clamp(calc(48 * var(--u)), min(6vw, calc(86.4 * var(--u))), calc(112 * var(--u))); margin-top: calc(20 * var(--u)); }
#solliciteren .h em { color: var(--lime); }
#solliciteren .sub { margin-top: calc(26 * var(--u)); font-size: calc(18 * var(--u)); line-height: 1.5; color: var(--soft); max-width: 42ch; }
#solliciteren .flow { margin-top: calc(38 * var(--u)); display: grid; gap: calc(10 * var(--u)); max-width: calc(480 * var(--u)); }
#solliciteren .flow div { display: grid; grid-template-columns: calc(40 * var(--u)) 1fr; gap: calc(14 * var(--u)); align-items: center; padding: calc(14 * var(--u)) calc(16 * var(--u)); border-radius: calc(16 * var(--u)); background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); font-size: calc(15 * var(--u)); line-height: 1.4; }
#solliciteren .flow b { font-family: "Fragment Mono", monospace; font-weight: 400; font-size: calc(12 * var(--u)); color: var(--lime); }
#solliciteren .spar { margin-top: calc(26 * var(--u)); display: flex; gap: calc(14 * var(--u)); align-items: center; max-width: calc(480 * var(--u)); padding: calc(16 * var(--u)) calc(18 * var(--u)); border-radius: calc(18 * var(--u)); }
#solliciteren .spar .mono { width: calc(46 * var(--u)); height: calc(46 * var(--u)); border-radius: 50%; background: var(--lime); color: var(--navy); display: grid; place-items: center; font-weight: 700; letter-spacing: -.03em; flex: none; }
#solliciteren .spar div { font-size: calc(14 * var(--u)); line-height: 1.45; color: var(--soft); }
#solliciteren .spar b { display: block; color: var(--ink); font-size: calc(15 * var(--u)); }
#solliciteren .spar a { color: var(--ink); border-bottom: 1px solid var(--line); }
#solliciteren .form { background: #fff; color: var(--ink-dark); border-radius: var(--r); padding: calc(32 * var(--u)); display: flex; flex-direction: column; gap: calc(12 * var(--u)); box-shadow: 0 calc(40 * var(--u)) calc(100 * var(--u)) rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.6); }
#solliciteren .form .ft { font-weight: 700; font-size: calc(28 * var(--u)); letter-spacing: -.045em; line-height: 1.05; }
#solliciteren .form .ft em { font-family: "Instrument Serif", serif; font-style: italic; font-weight: 400; }
#solliciteren .form .fs { color: var(--soft-dark); font-size: calc(15 * var(--u)); line-height: 1.45; margin-bottom: calc(6 * var(--u)); }
#solliciteren .two { display: grid; grid-template-columns: 1fr 1fr; gap: calc(12 * var(--u)); }
#solliciteren label { font-size: calc(13.5 * var(--u)); font-weight: 600; letter-spacing: -.01em; margin-top: calc(6 * var(--u)); }
#solliciteren label small { display: block; font-weight: 400; color: var(--soft-dark); margin-top: 2px; }
#solliciteren .field { font: inherit; width: 100%; font-size: calc(15 * var(--u)); padding: calc(15 * var(--u)) calc(16 * var(--u)); border-radius: calc(12 * var(--u)); border: 1px solid var(--line-light); background: #f6f8f9; color: var(--ink-dark); transition: border-color .2s, background .2s, box-shadow .2s; }
#solliciteren .field:focus { outline: none; border-color: var(--navy); background: #fff; box-shadow: 0 0 0 calc(4 * var(--u)) rgba(200,245,96,.45); }
#solliciteren textarea.field { resize: none; min-height: calc(96 * var(--u)); }
#solliciteren .drop { display: flex; gap: calc(12 * var(--u)); align-items: center; padding: calc(14 * var(--u)) calc(16 * var(--u)); border-radius: calc(12 * var(--u)); border: 1.5px dashed var(--line-light); background: #f6f8f9; font-size: calc(14 * var(--u)); color: var(--soft-dark); cursor: pointer; transition: border-color .2s, background .2s; }
#solliciteren .drop:hover { border-color: var(--navy); background: #fff; }
#solliciteren .drop i { font-style: normal; width: calc(34 * var(--u)); height: calc(34 * var(--u)); border-radius: calc(10 * var(--u)); background: var(--navy); color: var(--lime); display: grid; place-items: center; flex: none; }
#solliciteren .drop input { display: none; }
#solliciteren .submit { font: inherit; display: flex; justify-content: space-between; align-items: center; gap: calc(12 * var(--u)); font-weight: 700; font-size: calc(16 * var(--u)); padding: calc(17 * var(--u)) calc(20 * var(--u)) calc(17 * var(--u)) calc(24 * var(--u)); border-radius: calc(999 * var(--u)); border: 0; background: var(--navy); color: #fff; cursor: pointer; margin-top: calc(8 * var(--u)); transition: transform .25s; }
#solliciteren .submit .arr { width: calc(36 * var(--u)); height: calc(36 * var(--u)); border-radius: 50%; background: var(--lime); color: var(--navy); display: grid; place-items: center; font-size: calc(17 * var(--u)); transition: transform .3s; }
#solliciteren .submit:hover .arr { transform: rotate(-45deg); }
#solliciteren .fine { font-size: calc(13 * var(--u)); color: var(--soft-dark); line-height: 1.45; }
@media (max-width: 960px) {
  #solliciteren, #solliciteren .inner { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  #solliciteren .form { padding: calc(22 * var(--u)); }
  #solliciteren .two { grid-template-columns: 1fr; }
}
.applybar { position: fixed; z-index: 80; left: 50%; bottom: calc(18 * var(--u)); display: flex; gap: calc(16 * var(--u)); align-items: center; padding: calc(8 * var(--u)) calc(8 * var(--u)) calc(8 * var(--u)) calc(22 * var(--u)); border-radius: calc(999 * var(--u)); color: var(--ink); background: linear-gradient(135deg, rgba(10,29,41,.86), rgba(10,29,41,.74)); border: 1px solid rgba(255,255,255,.16); backdrop-filter: blur(calc(20 * var(--u))) saturate(150%); -webkit-backdrop-filter: blur(calc(20 * var(--u))) saturate(150%); box-shadow: 0 calc(20 * var(--u)) calc(60 * var(--u)) rgba(0,0,0,.3); transform: translate(-50%, 140%); transition: transform .7s var(--ease); white-space: nowrap; max-width: calc(100% - calc(32 * var(--u))); }
.applybar.on { transform: translate(-50%, 0); }
.applybar b { font-size: calc(14.5 * var(--u)); letter-spacing: -.02em; }
.applybar span { font-size: calc(13 * var(--u)); color: var(--soft); }
.applybar a { display: inline-flex; gap: calc(10 * var(--u)); align-items: center; font-weight: 700; font-size: calc(14 * var(--u)); padding: calc(6 * var(--u)) calc(6 * var(--u)) calc(6 * var(--u)) calc(18 * var(--u)); border-radius: calc(999 * var(--u)); background: var(--lime); color: var(--navy); }
.applybar a i { width: calc(30 * var(--u)); height: calc(30 * var(--u)); border-radius: 50%; background: var(--navy); color: var(--lime); display: grid; place-items: center; font-style: normal; }
@media (max-width: 620px) {
  .applybar span { display: none; }
  .applybar { padding-left: calc(18 * var(--u)); gap: calc(12 * var(--u)); }
}
#sp-waarom { background: var(--light); color: var(--ink-dark); padding: calc(130 * var(--u) * var(--sy-t)) var(--rand) calc(130 * var(--u) * var(--sy-b)); display: grid; grid-template-columns: 1fr 1.1fr; gap: calc(var(--pad) * 2); align-items: start; border-top: 1px solid var(--line-light); }
#sp-waarom .h em { color: var(--navy); }
#sp-waarom .txt { display: grid; gap: calc(18 * var(--u)); font-size: calc(17 * var(--u)); line-height: 1.55; color: var(--soft-dark); }
#sp-waarom .txt .lead { font-size: clamp(calc(18 * var(--u)), min(1.45vw, calc(20.88 * var(--u))), calc(22 * var(--u))); color: var(--ink-dark); letter-spacing: -.01em; }
@media (max-width: 960px) {
  #sp-waarom { grid-template-columns: 1fr; gap: calc(36 * var(--u)); }
}
#sp-strip { background: var(--light); color: var(--ink-dark); padding: calc(10 * var(--u)) 0 calc(130 * var(--u) * var(--sy-b)); overflow: hidden; }
#sp-strip .top { display: flex; justify-content: space-between; align-items: end; gap: calc(24 * var(--u)); flex-wrap: wrap; padding: 0 var(--rand); margin-bottom: calc(36 * var(--u)); }
#sp-strip .top p { max-width: 46ch; font-size: calc(17 * var(--u)); line-height: 1.5; color: var(--soft-dark); }
#sp-strip .row { display: flex; gap: calc(14 * var(--u)); align-items: center; width: max-content; padding-left: var(--pad); transform: translateX(var(--x, 0px)); will-change: transform; }
#sp-strip .ph { position: relative; flex: none; border-radius: var(--r); overflow: hidden; background: #dfe3e5; }
#sp-strip .ph img { width: 100%; height: 100%; object-fit: cover; display: block; transform: scale(1.08) translateX(var(--ix, 0px)); }
#sp-strip .ph.l { width: clamp(calc(320 * var(--u)), min(38vw, calc(547.2 * var(--u))), calc(620 * var(--u))); aspect-ratio: 3 / 2; }
#sp-strip .ph.p { width: clamp(calc(220 * var(--u)), min(22vw, calc(316.8 * var(--u))), calc(360 * var(--u))); aspect-ratio: 4 / 5; }
#sp-strip .ph.s { width: clamp(calc(260 * var(--u)), min(28vw, calc(403.2 * var(--u))), calc(460 * var(--u))); aspect-ratio: 1 / 1; }
#sp-strip .ph .tag { position: absolute; left: calc(14 * var(--u)); bottom: calc(14 * var(--u)); display: inline-flex; gap: calc(8 * var(--u)); align-items: center; padding: calc(9 * var(--u)) calc(14 * var(--u)) calc(9 * var(--u)) calc(10 * var(--u)); border-radius: calc(999 * var(--u)); font-size: calc(13.5 * var(--u)); font-weight: 600; color: var(--ink); background: linear-gradient(135deg, rgba(10,29,41,.66), rgba(10,29,41,.46)); border: 1px solid rgba(255,255,255,.16); backdrop-filter: blur(calc(16 * var(--u))); -webkit-backdrop-filter: blur(calc(16 * var(--u))); }
#sp-strip .ph .tag i { width: calc(8 * var(--u)); height: calc(8 * var(--u)); border-radius: 50%; background: var(--lime); }
#sp-krijgt .b.pic { background: #0d2230 center / cover no-repeat; border: 0; justify-content: flex-end; }
#sp-krijgt .b.pic::before { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(10,29,41,.94), rgba(10,29,41,.5) 45%, rgba(10,29,41,.05) 75%), linear-gradient(180deg, rgba(10,29,41,.7), rgba(10,29,41,0) 30%); }
#sp-krijgt .b.pic > * { position: relative; }
#sp-krijgt .b.pic .k { position: absolute; top: calc(24 * var(--u)); left: calc(24 * var(--u)); }
#sp-waarom .shot { margin-top: calc(44 * var(--u)); border-radius: calc(var(--r) * 1.1); overflow: hidden; aspect-ratio: 3 / 2; }
#sp-waarom .shot img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1.2s var(--ease); }
#sp-waarom .shot:hover img { transform: scale(1.04); }
#sp-why { padding-bottom: calc(60 * var(--u)); }
@media (prefers-reduced-motion: reduce) {
  .sp .h .ln > span, .sp .rise, #sp-hero .fc, #footer .rise { opacity: 1 !important; transform: none !important; }
  #sp-hero .frame { clip-path: none !important; }
}

/* Portret bij "Eerst even sparren?" en het vinkje als laatste stap (12-10) */
.spar img.mono { object-fit: cover; flex: none; }
#solliciteren .flow b.ok, .flow b.ok { width: calc(24 * var(--u)); height: calc(24 * var(--u)); border-radius: 50%; background: var(--lime); color: var(--navy); display: grid; place-items: center; }
.flow b.ok svg { width: calc(14 * var(--u)); height: calc(14 * var(--u)); }

/* CV-vak: het pijltje uit inc/formulieren.php stond navy op navy (licht.css) en viel weg. Nu een lijn-icoon
   (upload: pijl omhoog uit een bak) in limoen, als masker zodat de kleur uit de stylesheet komt (feedback Tim 03-11). */
#solliciteren .drop > i { font-size: 0; color: transparent; }
#solliciteren .drop > i::before { content: ""; width: calc(18 * var(--u)); height: calc(18 * var(--u)); background: var(--lime); -webkit-mask: var(--ico-upload) center / contain no-repeat; mask: var(--ico-upload) center / contain no-repeat; }
#solliciteren .drop { --ico-upload: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 15V4M7.5 8.5 12 4l4.5 4.5'/%3E%3Cpath d='M4 14.5V18a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-3.5'/%3E%3C/svg%3E"); }
#solliciteren .drop .dsg-bestand { font-weight: 600; color: var(--ink-dark); }
