@font-face{ font-family: 'Frank Ruhl Libre'; font-style: normal; font-display: swap; font-weight: 300; src:url(/assets/fonts/frank-ruhl-libre-hebrew-300-normal.woff2) format('woff2'); unicode-range: U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F; }
@font-face{ font-family: 'Frank Ruhl Libre'; font-style: normal; font-display: swap; font-weight: 300; src:url(/assets/fonts/frank-ruhl-libre-latin-300-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face{ font-family: 'Frank Ruhl Libre'; font-style: normal; font-display: swap; font-weight: 400; src:url(/assets/fonts/frank-ruhl-libre-hebrew-400-normal.woff2) format('woff2'); unicode-range: U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F; }
@font-face{ font-family: 'Frank Ruhl Libre'; font-style: normal; font-display: swap; font-weight: 400; src:url(/assets/fonts/frank-ruhl-libre-latin-400-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face{ font-family: 'Heebo'; font-style: normal; font-display: swap; font-weight: 300; src:url(/assets/fonts/heebo-hebrew-300-normal.woff2) format('woff2'); unicode-range: U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F; }
@font-face{ font-family: 'Heebo'; font-style: normal; font-display: swap; font-weight: 300; src:url(/assets/fonts/heebo-latin-300-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face{ font-family: 'Heebo'; font-style: normal; font-display: swap; font-weight: 400; src:url(/assets/fonts/heebo-hebrew-400-normal.woff2) format('woff2'); unicode-range: U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F; }
@font-face{ font-family: 'Heebo'; font-style: normal; font-display: swap; font-weight: 400; src:url(/assets/fonts/heebo-latin-400-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face{ font-family: 'Heebo'; font-style: normal; font-display: swap; font-weight: 500; src:url(/assets/fonts/heebo-hebrew-500-normal.woff2) format('woff2'); unicode-range: U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F; }
@font-face{ font-family: 'Heebo'; font-style: normal; font-display: swap; font-weight: 500; src:url(/assets/fonts/heebo-latin-500-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face{font-family:'Boska';font-style:normal;font-weight:300;font-display:swap;src:url(/assets/fonts/boska-300-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Boska';font-style:italic;font-weight:300;font-display:swap;src:url(/assets/fonts/boska-300-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'General Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/general-sans-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'General Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/general-sans-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --papier:#F5F2EC;--papier-2:#ECE7DE;--inkt:#1B1D2A;--navy:#141D55;--zacht:#67655F;--lijn:rgba(27,29,42,.14);
  --display:"Boska","Frank Ruhl Libre",Georgia,serif;
  --sans:"General Sans","Heebo","Helvetica Neue",Arial,sans-serif;
  --rand:clamp(20px,5vw,72px);--max:1360px
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papier);color:var(--inkt);font:400 1.0625rem/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
[lang=he] body{font-size:1.1rem;font-weight:300;line-height:1.75}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,p,figure,blockquote{margin:0}
address{font-style:normal}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--rand)}
.skip{position:absolute;inset-inline-start:-999px;top:8px;background:var(--inkt);color:#fff;padding:8px 14px;z-index:100}
.skip:focus{inset-inline-start:8px}
:focus-visible{outline:1px solid var(--inkt);outline-offset:4px}

/* type */
.d-1{font:300 clamp(2.5rem,5.4vw,5.6rem)/1.03 var(--display);letter-spacing:-.02em;color:var(--navy);max-width:21ch;text-wrap:balance}
[lang=he] .d-1{line-height:1.1;letter-spacing:0;max-width:24ch}
.d-2{font:300 clamp(2rem,3.6vw,3.4rem)/1.05 var(--display);letter-spacing:-.015em;color:var(--navy)}
.d-3{font:300 clamp(1.6rem,2.4vw,2.2rem)/1.1 var(--display);color:var(--navy)}
.d-zin{font:300 clamp(1.5rem,2.4vw,2.2rem)/1.3 var(--display);color:var(--navy);letter-spacing:-.01em;max-width:28ch}
[lang=he] .d-2,[lang=he] .d-3,[lang=he] .d-zin{letter-spacing:0}
.tekst{max-width:58ch;color:var(--inkt)}
.tekst.groot{font-size:1.2rem;line-height:1.6}
.klein{font-size:.9rem;color:var(--zacht)}

.knop{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;background:var(--navy);color:var(--papier);text-decoration:none;font:500 .98rem/1 var(--sans);border:1px solid var(--navy);transition:background .25s,color .25s;cursor:pointer}
.knop:hover{background:transparent;color:var(--navy)}
.tel-link,.lees-meer{display:inline-flex;align-items:center;gap:.6em;min-height:44px;font-weight:500;color:var(--navy);text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:2px;transition:background-size .3s}
[dir=rtl] .tel-link,[dir=rtl] .lees-meer{background-position:100% 100%}
.tel-link:hover,.lees-meer:hover{background-size:0 1px}
.pijl{transition:transform .3s}
.lees-meer:hover .pijl{transform:translateX(4px)}
[dir=rtl] .lees-meer:hover .pijl{transform:translateX(-4px)}

/* kop */
.kop{max-width:var(--max);margin-inline:auto;padding:26px var(--rand);display:flex;align-items:center;justify-content:space-between;gap:32px;position:relative;z-index:20}
.logo img{width:clamp(150px,13vw,190px)}
.menu{display:flex;align-items:center;gap:36px}
.menu ul{display:flex;gap:30px;list-style:none;margin:0;padding:0}
.menu a{text-decoration:none;font-size:.95rem;color:var(--inkt);padding:6px 0}
.menu a[aria-current]{box-shadow:inset 0 -1px var(--inkt)}
.menu a:hover{color:var(--navy)}
.taal{color:var(--zacht)!important}
.menu-knop{display:none}

/* held */
.held{padding-block:clamp(40px,7vw,104px) clamp(36px,5vw,64px)}
.held-raster{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:32px clamp(32px,7vw,120px);margin-top:clamp(36px,5vw,72px);align-items:end}
.held-foto img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 24%}
.held-foto figcaption{padding-top:12px;font-size:.85rem;color:var(--zacht)}
.held-onder{display:flex;flex-direction:column;gap:32px;padding-bottom:44px}
.held-sub{max-width:52ch;font-size:clamp(1.05rem,1.3vw,1.2rem);color:var(--zacht)}
.held-acties{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
.breed{position:relative}
.breed img{width:100%;aspect-ratio:16/8;object-fit:cover;object-position:50% 32%}
.breed figcaption{padding-top:14px;font-size:.85rem;color:var(--zacht)}
.breed.laag img{aspect-ratio:21/8;object-position:50% 50%}

.twee{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:28px clamp(32px,6vw,96px);align-items:start}
.over{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:40px clamp(32px,7vw,120px);align-items:center;padding-block:clamp(88px,12vw,170px)}
.over-tekst{display:flex;flex-direction:column;gap:26px;align-items:flex-start}
.over-foto img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:40% 50%}
.over>div,.lees>div{display:flex;flex-direction:column;gap:28px;align-items:flex-start}

/* diensten */
.diensten{padding-bottom:clamp(80px,11vw,150px)}
.diensten>.d-2{margin-bottom:clamp(36px,5vw,64px)}
.groepen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(48px,6vw,88px) clamp(32px,6vw,96px)}
.groep{display:flex;flex-direction:column;gap:14px;padding-top:24px;border-top:1px solid var(--inkt)}
.groep h3{font:300 clamp(1.7rem,2.6vw,2.3rem)/1.1 var(--display);color:var(--navy)}
.groep-intro{color:var(--zacht);max-width:44ch}
.groep ul{list-style:none;margin:8px 0 0;padding:0}
.groep li{padding:11px 0;border-top:1px solid var(--lijn);font-size:.98rem;line-height:1.45}
.diensten .lees-meer{margin-top:clamp(36px,5vw,56px)}
.diensten-pagina{padding-top:clamp(24px,4vw,48px)}

/* citaat */
.citaat-blok{position:relative;overflow:hidden;padding-block:clamp(110px,15vw,220px);background:var(--papier-2)}
.citaat-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38}
.citaat-blok blockquote{position:relative;display:flex;flex-direction:column;gap:22px;align-items:center;text-align:center}
.citaat-blok p{font:400 clamp(1.8rem,3.6vw,3.3rem)/1.22 var(--display);color:var(--navy);max-width:24ch;text-wrap:balance}
.citaat-blok footer{font-size:.9rem;color:var(--inkt)}

/* contact */
.contact{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:40px clamp(32px,6vw,96px);padding-block:clamp(88px,11vw,150px);align-items:end}
.contact-tekst{display:flex;flex-direction:column;gap:22px}
.contact-tekst p{max-width:44ch;color:var(--zacht)}
.contact-gegevens{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.contact-gegevens address{display:flex;flex-direction:column;color:var(--inkt)}
.d-tel{font:300 clamp(2.4rem,4.6vw,4.2rem)/1 var(--display);color:var(--navy);text-decoration:none;direction:ltr;unicode-bidi:isolate}
.kaart{display:flex;gap:24px;margin-bottom:12px}
.kaart a{font-weight:500;color:var(--navy);text-underline-offset:5px}

/* pagina's */
.paginakop{padding-block:clamp(36px,6vw,88px) clamp(48px,7vw,104px);display:flex;flex-direction:column;gap:26px}
.kruimel{font-size:.88rem;color:var(--zacht)}
.kruimel a{text-decoration:none}
.lees{padding-bottom:clamp(80px,10vw,140px)}
.portret-pagina{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:40px clamp(32px,7vw,120px);align-items:start;padding-bottom:clamp(40px,6vw,80px)}
.portret img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 22%}
.portret-tekst{display:flex;flex-direction:column;gap:26px;align-items:flex-start;padding-top:8px}
.contact-pagina{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px clamp(32px,7vw,120px);padding-bottom:clamp(80px,10vw,140px);align-items:start}
.formulier{display:grid;gap:26px}
.formulier label{display:grid;gap:6px;font-size:.88rem;color:var(--zacht)}
.formulier input,.formulier textarea{width:100%;font:inherit;font-size:1.05rem;color:var(--inkt);background:transparent;border:0;border-bottom:1px solid var(--inkt);padding:10px 0;border-radius:0}
.formulier input:focus,.formulier textarea:focus{outline:none;border-bottom-width:2px}
.formulier .knop{justify-self:start}
.melding{color:var(--navy)}

/* voet */
.voet{background:var(--papier-2);font-size:.92rem;color:var(--zacht)}
.voet-in{max-width:var(--max);margin-inline:auto;padding:64px var(--rand) 36px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px}
.voet-logo{width:170px}
.voet address,.voet-tel{display:flex;flex-direction:column}
.voet-tel{margin:0}
.voet a{color:var(--inkt)}
.voet-nav{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.voet-nav a{text-decoration:none}
.voet-nav a:hover{text-decoration:underline}
.voet-onder{max-width:var(--max);margin-inline:auto;padding:0 var(--rand) 84px;font-size:.82rem}

.js [data-in]{opacity:0;transform:translateY(18px);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.7,.2,1)}
.js [data-in].in{opacity:1;transform:none}
.held .d-1,.held-onder{animation:op 1.1s cubic-bezier(.2,.7,.2,1) both}
.held-onder{animation-delay:.15s}
@keyframes op{from{opacity:0;transform:translateY(16px)}}
@media (prefers-reduced-motion:reduce){.js [data-in],.held .d-1,.held-onder{opacity:1;transform:none;transition:none;animation:none}}

@media (max-width:980px){
  .menu-knop{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;background:none;border:0;border-bottom:1px solid var(--inkt);font:500 .95rem/1 var(--sans);color:var(--inkt);cursor:pointer}
  .menu{display:none;position:absolute;inset-inline:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--papier);padding:8px var(--rand) 28px;border-bottom:1px solid var(--lijn)}
  .menu-open .menu{display:flex}
  .menu ul{flex-direction:column;gap:0}
  .menu li a{display:block;padding:14px 0;font:300 1.7rem/1.15 var(--display);color:var(--navy);border-bottom:1px solid var(--lijn)}
  .taal{padding-top:18px!important}
  .held-raster,.over,.twee,.contact,.portret-pagina,.contact-pagina{grid-template-columns:1fr}
  .held-onder{padding-bottom:0}
  .groepen{grid-template-columns:1fr}
  .voet-in{grid-template-columns:1fr 1fr}
  .voet-logo{grid-column:1/-1}
}
@media (max-width:700px){
  .breed.laag img{aspect-ratio:4/3}
  .voet-in{grid-template-columns:1fr}
  .held-acties .knop{width:100%}
}

.ow{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 24px);z-index:90;display:flex;align-items:center;gap:2px;padding:4px;border-radius:999px;background:rgba(17,17,17,.86);color:#fff;font:500 12px/1 system-ui,-apple-system,sans-serif;letter-spacing:.02em;box-shadow:0 6px 24px rgba(0,0,0,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.ow a,.ow span{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 10px;border-radius:999px;color:inherit;text-decoration:none}
.ow a:hover{background:rgba(255,255,255,.14)}
.ow [aria-current]{background:#fff;color:#111}
.ow .ow-label{opacity:.6;padding:0 6px 0 4px}
.ow .ow-terug{padding:0 12px;border-inline-end:1px solid rgba(255,255,255,.2);border-radius:999px 0 0 999px;margin-inline-end:2px}
@media print{.ow{display:none}}
