/* Pagina voor bureaus (bureaus.html). Bouwt voort op site.css.
   Opbouw: een zachte kleurverloop-achtergrond met losse, ronde panelen erop. */
.bu{
  --bu-r:28px;
  --bu-gap:20px;
  --bu-knop:var(--brand);
  --bu-vlak:#F5F5F5;
  --bu-stro:#FBF4E4;
  position:relative;padding:28px 0 0;background:#fff;
}
.bu-blok{max-width:1240px;margin:0 auto var(--bu-gap);padding:0 20px}
.bu-paneel{position:relative;overflow:hidden;background:var(--bu-vlak);border-radius:var(--bu-r)}
.bu h1,.bu h2{font-family:var(--head);font-weight:400;color:var(--ink);letter-spacing:-.025em;line-height:1.04;text-wrap:balance}
.bu h2{font-size:clamp(32px,3.6vw,48px);text-align:left}

/* knop: kleurverloop met een donker rondje met pijl */
.bu-knop{display:inline-flex;align-items:center;gap:12px;height:54px;padding:0 8px 0 26px;border-radius:999px;background:var(--brand);color:#fff;font-weight:700;font-size:17px;transition:transform .2s cubic-bezier(.2,.8,.2,1),background-color .2s}
.bu-knop:hover{transform:translateY(-1px);background:var(--brand-h)}
.bu-pijl{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--deep)}
.bu-pijl svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.bu-link{font-size:17px;font-weight:500;color:var(--brand);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
.bu-link:hover{color:var(--brand-h)}
.bu-knop-oranje{background:var(--amber);color:var(--deep)}
.bu-knop-rand{display:inline-flex;align-items:center;height:54px;padding:0 24px;border-radius:999px;border:1.5px solid rgba(255,255,255,.35);color:#fff;font-weight:700;font-size:17px;transition:border-color .2s,background-color .2s}
.bu-knop-rand:hover{border-color:#fff;background:rgba(255,255,255,.06)}
/* in de opening staan de knoppen onder elkaar en zijn ze even breed */
.bu-kop .bu-knoppen{display:grid;grid-template-columns:max-content;justify-items:stretch}
.bu-kop .bu-knoppen .bu-knop{justify-content:space-between}
.bu-kop .bu-knoppen .bu-knop-rand{justify-content:center}
.bu-knop-oranje:hover{background:#E59E33}

/* opening: groot paneel links, twee tegels en een breed paneel rechts */
.bu-open{display:grid;grid-template-columns:1.7fr 1fr 1fr;grid-template-rows:auto auto;gap:var(--bu-gap)}
.bu-kop{grid-row:1 / span 2;padding:52px 48px 220px;background:var(--deep)}
.bu-kop::after{content:"";position:absolute;right:-90px;bottom:-110px;width:380px;height:380px;border-radius:50%;background:rgba(165,211,182,.14);z-index:0}
.bu-kop h1{position:relative;z-index:1;font-size:clamp(40px,4.2vw,58px);max-width:640px;color:#fff}
.bu-kop h1 span{color:var(--amber)}
.bu-kop>p{position:relative;z-index:1;font-size:19px;line-height:1.55;color:#BFD6C8;margin-top:20px;max-width:520px}
.bu-knoppen{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px}
.bu-kop-m{position:absolute;right:28px;bottom:-6px;width:250px;height:auto;z-index:1}
.bu-kop .bu-link{color:#A5D3B6}
.bu-kop .bu-link:hover{color:#fff}
.js .bu-kop-m,.js .bu-tab.is-on img{animation:bu-zweef 5s ease-in-out infinite}
@keyframes bu-zweef{0%,100%{translate:0 0}50%{translate:0 -8px}}
.bu-tegel{position:relative;overflow:hidden;border-radius:var(--bu-r);padding:26px 26px 28px;display:flex;flex-direction:column;min-height:260px;color:var(--ink)}

.bu-t-mint{background:var(--mint)}
.bu-t-stro{background:var(--amber)}
.bu-t-stro .bu-t-wie{color:#3F2D0C}
.bu-t-wie{font-size:15px;font-weight:500;color:var(--text)}
.bu-tegel b{margin-top:auto;font-family:var(--head);font-weight:400;font-size:72px;line-height:1;letter-spacing:-.03em;color:var(--deep)}
.bu-tegel b+span{font-size:16px;font-weight:500;margin-top:8px;color:var(--ink)}

.bu-werkt{grid-column:2 / span 2;padding:28px 28px 30px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;background:var(--bu-stro)}
.bu-werkt>p{font-family:var(--head);font-size:28px;line-height:1.15;letter-spacing:-.015em;color:var(--ink);max-width:420px}
.bu-werkt>small{font-size:15px;color:var(--muted)}
.bu-schuin{list-style:none;display:flex;flex-wrap:wrap;gap:12px 10px}
.bu-schuin li{position:relative;isolation:isolate;padding:11px 18px;font-weight:700;font-size:18px;color:var(--ink)}
.bu-schuin li::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:10px;transform:skewX(-14deg);background:var(--c)}
.bu-schuin .s1,.bu-schuin .s4{--c:var(--mint)}.bu-schuin .s2,.bu-schuin .s5{--c:#fff}.bu-schuin .s3{--c:var(--amber)}
.bu-schuin li{transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.bu-schuin li:hover{transform:translateY(-3px)}

/* stappen: tabbladen met voortgangslijn */
.bu-stappen{padding:64px 56px 40px;background:var(--mint)}
.bu-stappen h2{max-width:760px;margin:0 auto;text-align:center}
.bu-intro{font-size:19px;line-height:1.55;color:var(--text);max-width:720px;margin:18px auto 0;text-align:center}
.bu-tabs{margin-top:48px}
.bu-tab-inhoud{position:relative}
.bu-tab{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:8px 0 24px}
.bu-tabs.is-js .bu-tab-inhoud{display:grid}
.bu-tabs.is-js .bu-tab{grid-area:1 / 1;visibility:hidden;opacity:0}
.bu-tabs.is-js .bu-tab.is-on{visibility:visible;opacity:1;animation:bu-in .45s cubic-bezier(.2,.8,.2,1)}
.bu-tab h3{font-size:clamp(28px,3vw,40px)}
.bu-tab p{font-size:19px;line-height:1.55;color:var(--text);margin-top:14px;max-width:460px}
.bu-tab img{justify-self:center;width:min(100%,340px);height:auto;filter:drop-shadow(0 20px 30px rgba(15,35,27,.12))}
.bu-tab-knoppen{display:none;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:8px}
.bu-tabs.is-js .bu-tab-knoppen{display:grid}
.bu-tab-knoppen button{position:relative;text-align:left;padding:14px 0 18px;font-size:16px;font-weight:500;color:#3D5A49;border-bottom:2px solid #BFE0CB}
.bu-tab-knoppen button::after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;background:var(--bu-knop)}
.bu-tab-knoppen button.is-on{color:var(--ink)}
.bu-tab-knoppen button.is-on::after{width:100%;animation:bu-lijn 6s linear}
.bu-tabs.is-stil .bu-tab-knoppen button.is-on::after{animation:none;width:100%}
@keyframes bu-lijn{from{width:0}to{width:100%}}
@keyframes bu-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* meer dan blogs: kaarten met zachte kleurverlopen */
.bu-meer{padding:56px 56px 56px}
.bu-meer-kop{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 40px}
.bu-meer-kop p{font-size:19px;color:var(--text);max-width:420px}
.bu-meer ul{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px}
.bu-meer li{position:relative;border-radius:20px;padding:24px 24px 26px;min-height:168px}
.bu-meer li{background:#fff;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
.bu-meer li:hover{transform:translateY(-4px);box-shadow:0 18px 34px -22px rgba(15,35,27,.35)}
.bu-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--mint);margin-bottom:18px}
.bu-ic svg{width:22px;height:22px;fill:none;stroke:var(--brand);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bu-meer li:nth-child(3n+2) .bu-ic{background:var(--bu-stro)}
.bu-meer li:nth-child(3n+2) .bu-ic svg{stroke:#B86E0B}
.bu-meer li:nth-child(3n) .bu-ic{background:var(--deep)}
.bu-meer li:nth-child(3n) .bu-ic svg{stroke:#A5D3B6}
.bu-meer b{display:block;font-family:var(--head);font-weight:400;font-size:24px;letter-spacing:-.02em;color:var(--ink);line-height:1.15}
.bu-meer b i{position:absolute;top:24px;right:24px;font-style:normal;font-family:var(--body);font-size:13px;font-weight:700;line-height:1;color:var(--deep);background:var(--amber);border-radius:99px;padding:6px 11px;letter-spacing:0}
.bu-meer li p{font-size:16.5px;line-height:1.5;color:var(--text);margin-top:10px}

/* case */
.bu-case{display:grid;grid-template-columns:.85fr 1.5fr;gap:40px;align-items:center;padding:52px 52px}
.bu-case-tekst>p{font-size:18px;line-height:1.55;color:var(--text);margin-top:16px}
.bu-cijfers{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:28px}
.bu-cijfers div{border-radius:18px;padding:16px 16px 18px;background:#fff}
.bu-cijfers .c1{background:var(--deep)}.bu-cijfers .c1 dt{color:#A5D3B6}.bu-cijfers .c1 dd{color:#fff}
.bu-cijfers .c2{background:var(--amber)}.bu-cijfers .c2 dt{color:#3F2D0C}
.bu-cijfers .c3{background:var(--mint)}
.bu-cijfers dt{font-size:14px;font-weight:500;color:var(--text);line-height:1.3}
.bu-cijfers dd{font-family:var(--head);font-size:40px;line-height:1;letter-spacing:-.03em;color:var(--deep);margin-top:14px}
.bu-cijfers small{font-family:var(--body);font-size:15px;letter-spacing:0;color:var(--text)}
.bu-gsc img{width:100%;height:auto;border-radius:18px;border:1px solid var(--line);box-shadow:0 24px 50px -30px rgba(15,35,27,.35)}
.bu-gsc figcaption{font-size:14px;line-height:1.5;color:var(--muted);margin-top:14px}

/* afspraken: tekst links, schuine beloftes rechts */
.bu-afspraken{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:56px 56px;background:var(--deep)}
.bu-afspraken h2{color:#fff}

.bu-afspraken-tekst{position:relative}
.bu-afspraken-tekst p{font-size:18px;line-height:1.55;color:#BFD6C8;margin:16px 0 28px;max-width:480px}
.bu-beloftes{list-style:none;display:grid;gap:16px;justify-items:end}
.bu-beloftes li{transform:skewX(-12deg);border-radius:14px;padding:18px 34px;max-width:440px;width:100%;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.bu-beloftes li:hover{transform:skewX(-12deg) translateX(-6px)}
.bu-beloftes li>*{display:block;transform:skewX(12deg)}
.bu-beloftes b{font-family:var(--head);font-weight:400;font-size:26px;letter-spacing:-.015em;color:var(--ink)}
.bu-beloftes span{font-size:16px;color:var(--text);margin-top:4px}
.bu-beloftes .s1{background:#fff;margin-right:40px}
.bu-beloftes .s2{background:var(--amber);margin-right:0}
.bu-beloftes .s2 span{color:#3F2D0C}
.bu-beloftes .s3{background:var(--mint);margin-right:60px}

/* vragen */
.bu-faq{padding:56px 56px 60px}
.bu-faq h2{text-align:center}
.bu-faq .faq-list{margin-top:36px}

/* slot: rij mascottes, kop en knop */
.bu-slot{text-align:center;padding:52px 40px 60px}

.bu-slot>*{position:relative;z-index:1}
.bu .final{margin-top:40px}
.bu .final h2{text-align:center;margin:0 auto}
.js .bu-slot h2{text-align:center;max-width:760px;margin:36px auto 0}
.bu-slot p{font-size:19px;line-height:1.55;color:var(--text);max-width:620px;margin:16px auto 30px}

@media (max-width:1080px){
  .bu-open{grid-template-columns:1fr 1fr}
  .bu-kop{grid-column:1 / -1;grid-row:auto;padding-bottom:220px}
  .bu-werkt{grid-column:1 / -1}
  .bu-case,.bu-afspraken{grid-template-columns:1fr}
  .bu-meer ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bu-beloftes{justify-items:stretch}
  .bu-beloftes li{max-width:none}
  .bu-beloftes .s1,.bu-beloftes .s2,.bu-beloftes .s3{margin-right:0}
}
@media (max-width:760px){
  .bu{padding-top:16px}
  .bu-blok{padding:0 12px;margin-bottom:12px}
  .bu{--bu-r:22px}
  .bu-kop{padding:36px 24px 190px}
  .bu-kop>p{font-size:17px}
  .bu-kop-m{width:200px;right:12px}
  .bu-tegel{min-height:200px;padding:20px}
  .bu-tegel b{font-size:52px}
  .bu-stappen,.bu-meer,.bu-case,.bu-afspraken,.bu-faq{padding:36px 22px}
  .bu-stappen h2,.bu-intro{text-align:left}
  .bu-tab{grid-template-columns:1fr;gap:16px}
  .bu-tab img{width:200px;justify-self:start;order:-1}
  .bu-tab-knoppen{grid-template-columns:1fr 1fr;gap:8px}
  .bu-tab-knoppen button{padding:12px 14px;border:0;border-radius:999px;background:rgba(255,255,255,.6);text-align:center;min-height:44px}
  .bu-tab-knoppen button.is-on{background:#fff;box-shadow:inset 0 0 0 1.5px var(--brand)}
  .bu-tab-knoppen button::after{display:none}
  .bu-meer ul{grid-template-columns:minmax(0,1fr)}
  .bu-kop .bu-knoppen{grid-template-columns:minmax(0,1fr)}
  .bu-knoppen .bu-knop,.bu-knoppen .bu-knop-rand{width:100%;justify-content:space-between}
  .bu-knoppen .bu-knop-rand{justify-content:center}
  .bu-meer li{min-height:0}
  .bu-cijfers{grid-template-columns:1fr}
  .bu-beloftes li{padding:16px 24px}
  .bu-beloftes b{font-size:22px}
  .bu-slot{padding:40px 20px 44px}
  .bu-knop{height:52px;font-size:16px}
}
@media (prefers-reduced-motion:reduce){
  .bu-knop{transition:none}
  .bu-tabs.is-js .bu-tab.is-on,.js .bu-kop-m,.js .bu-tab.is-on img{animation:none}
  .bu-meer li,.bu-schuin li,.bu-beloftes li{transition:none}
  .bu-tab-knoppen button.is-on::after{animation:none}
}

/* voor en na in de case */
.bu-voorna{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.bu-voorna s{font-family:var(--head);font-size:24px;letter-spacing:-.02em;color:#A5D3B6;text-decoration-thickness:2px}
.bu-voorna svg{width:20px;height:20px;fill:none;stroke:var(--amber);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;align-self:center}
.bu-tegel .bu-was{font-size:14px;font-weight:500;color:var(--text);margin-top:4px}

/* venster: bureaubrochure aanvragen */
.br{width:min(480px,calc(100% - 24px));max-height:calc(100% - 24px);margin:auto;border:0;border-radius:24px;padding:40px 36px 32px;background:#fff;color:var(--text);box-shadow:0 30px 80px -20px rgba(15,35,27,.45)}
.br::backdrop{background:rgba(15,35,27,.38);-webkit-backdrop-filter:blur(8px) saturate(.9);backdrop-filter:blur(8px) saturate(.9)}
.br[open]::backdrop{animation:br-waas .3s ease}
@keyframes br-waas{from{opacity:0}to{opacity:1}}
html.br-open{overflow:hidden}
.br[open]{animation:br-in .35s cubic-bezier(.2,.8,.2,1)}
@keyframes br-in{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.br-x{position:absolute;right:14px;top:14px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--soft)}
.br-x:hover{background:#ECEEEC}
.br-x svg{width:18px;height:18px;fill:none;stroke:var(--ink);stroke-width:2.2;stroke-linecap:round}
.br-m{width:96px;height:auto;margin-bottom:10px}
.br h2{font-size:30px;text-align:left;line-height:1.1}
.br-uitleg{font-size:16.5px;line-height:1.5;margin-top:10px}
.br form{display:grid;margin-top:22px}
.br label{font-size:15px;font-weight:700;color:var(--ink);margin-top:14px}
.br label:first-child{margin-top:0}
.br input{height:52px;margin-top:8px;padding:0 16px;border:1.5px solid var(--line);border-radius:12px;font:inherit;font-size:16px;color:var(--ink);background:#fff;transition:border-color .2s}
.br input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px rgba(10,125,67,.12)}
.br input[aria-invalid=true]{border-color:#C8262B}
.br-veldfout{font-size:14px;color:#B3261E;margin-top:6px}
.br-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.br form .bu-knop{justify-content:space-between;margin-top:22px;width:100%;border:0;cursor:pointer;font:inherit;font-weight:700;font-size:17px}
.br form .bu-knop.is-bezig{opacity:.7;cursor:progress}
.br-fout{font-size:14.5px;color:#B3261E;margin-top:12px}
.br-fout a,.br-klein a,.br-klaar a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.br-klein{font-size:13.5px;color:var(--muted);margin-top:14px;line-height:1.5}
.br-klaar{display:none}
.br.is-klaar .br-form{display:none}
.br.is-klaar .br-klaar{display:block}
.br-klaar p{font-size:16.5px;line-height:1.55;margin:10px 0 22px}
.br-klaar b{color:var(--ink);overflow-wrap:anywhere}
.br-klaar .bu-knop{padding:0 30px;border:0;cursor:pointer;font:inherit;font-weight:700;font-size:17px}
@media (prefers-reduced-motion:reduce){.br[open],.br[open]::backdrop{animation:none}}

/* telefoon: compacter en zonder springende hoogtes */
.bu-veeg{display:none}
@media (max-width:760px){
  .bu-meer ul{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:24px}
  .bu-meer li{min-height:0;display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;padding:16px 16px 18px;border-radius:16px}
  .bu-ic{width:40px;height:40px;border-radius:12px;margin:0;grid-row:1 / span 2}
  .bu-ic svg{width:20px;height:20px}
  .bu-meer b{font-size:20px;padding-right:44px;align-self:center}
  .bu-meer b i{top:16px;right:16px;padding:5px 9px;font-size:12px}
  .bu-meer li p{font-size:15.5px;margin-top:4px;grid-column:2}
  .bu-meer-kop p{font-size:17px}
  .bu-tabs{display:flex;flex-direction:column;margin-top:28px}
  .bu-tabs.is-js .bu-tab-knoppen{order:-1;margin:0 0 20px}
  .bu-tab h3{font-size:28px}
  .bu-tab p{font-size:17px}
  .bu-intro{font-size:17px}
  .bu-cijfers{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .bu-cijfers div{padding:12px 12px 14px;border-radius:14px}
  .bu-cijfers dt{font-size:12.5px}
  .bu-cijfers dd{font-size:30px;margin-top:10px}
  .bu-cijfers small{display:block;font-size:12.5px;margin-top:2px}
  .bu-voorna s{font-size:16px}
  .bu-gsc{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -22px;padding:0 22px 4px;scrollbar-width:none}
  .bu-gsc::-webkit-scrollbar{display:none}
  .bu-gsc img{width:680px;max-width:none}
  .bu-gsc figcaption,.bu-veeg{position:sticky;left:0;max-width:calc(100vw - 68px)}
  .bu-veeg{display:block;font-size:13px;font-weight:500;color:var(--brand);margin:10px 0 0}
  .bu .final .sub{font-size:18px}
  .bu .final h2{font-size:32px}
  .bu-afspraken-tekst p{font-size:17px}
  .br{width:100%;max-width:none;max-height:92dvh;margin:auto 0 0;border-radius:24px 24px 0 0;padding:28px 22px calc(24px + env(safe-area-inset-bottom));overflow:auto}
  .br-m{display:none}
  .br h2{font-size:26px;padding-right:44px}
  .br-uitleg{font-size:15.5px}
  .br form{margin-top:16px}
}
@media (max-width:760px) and (prefers-reduced-motion:no-preference){
  .br[open]{animation:br-op .35s cubic-bezier(.2,.8,.2,1)}
  @keyframes br-op{from{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}
}
