Dienstenaccordeon met foto per dienst New
Services as an accordion: click a service and the matching photo swaps on the right, no scroll coupling. Built on native details with name (exclusive), ::details-content and interpolate-size: allow-keywords for a soft height animation; browsers without these open instantly and a small script closes the others. On mobile the photo sits inside the open panel.
Huidpraktijk Noor · Amstelveen
Behandelingen
Elke behandeling begint met een huidanalyse. Je krijgt vooraf een behandelplan met prijs, zonder verplichting.
01Hydraterende gezichtsbehandeling60 min · € 85

Reinigen, peeling met enzymen en een masker met hyaluronzuur. Voor een droge of trekkerige huid, vooral in de herfst en winter.
- Resultaat direct zichtbaar
- Geschikt bij een gevoelige huid
02Laserontharingvanaf € 59

Met een diodelaser, geschikt voor de meeste huidtypen. Gemiddeld 6 tot 8 behandelingen, met 6 weken ertussen.
- Proefplek gratis bij de intake
- Uitgevoerd door een BIG-geregistreerd verpleegkundige
03Huidanalyse en behandelplan30 min · € 35

Met een loeplamp en huidscanner kijken we naar vocht, talg, pigment en rimpels. Je krijgt het plan mee op papier.
- Bedrag wordt verrekend als je een behandeling boekt
04Thuisverzorging op maatadvies gratis

Drie producten voor 's ochtends en 's avonds, afgestemd op je analyse. Niet goed voor je huid? Binnen 30 dagen omruilen.
Bekijk de producten
01 / 04
How to use it
- Paste the HTML where the page sections should appear.
- Add the CSS to your stylesheet. All classes are prefixed, so nothing clashes with your own styles.
- Add the JavaScript and call init() with the element that contains the HTML.
<!-- Dienstenaccordeon met foto per dienst · NedDev · eigen werk. -->
<div class="jouw-container">
<div class="hfa">
<div class="hfa__in">
<div class="hfa__l">
<p class="hfa__kick">Huidpraktijk Noor · Amstelveen</p>
<h2 class="hfa__h">Behandelingen</h2>
<p class="hfa__lead">Elke behandeling begint met een huidanalyse. Je krijgt vooraf een behandelplan met prijs, zonder verplichting.</p>
<div class="hfa__acc">
<details class="hfa__d" name="hfa-beh" open data-i="1"><summary><span class="hfa__n">01</span><span class="hfa__st">Hydraterende gezichtsbehandeling</span><span class="hfa__pr">60 min · € 85</span><span class="hfa__pl" aria-hidden="true"></span></summary>
<div class="hfa__body"><img class="hfa__mimg" src="https://neddev.com/lab-media/feature-accordeon-beeld-1.webp" alt="" loading="lazy"><p>Reinigen, peeling met enzymen en een masker met hyaluronzuur. Voor een droge of trekkerige huid, vooral in de herfst en winter.</p><ul><li>Resultaat direct zichtbaar</li><li>Geschikt bij een gevoelige huid</li></ul><a class="hfa__a" href="#">Boek deze behandeling</a></div></details>
<details class="hfa__d" name="hfa-beh" data-i="2"><summary><span class="hfa__n">02</span><span class="hfa__st">Laserontharing</span><span class="hfa__pr">vanaf € 59</span><span class="hfa__pl" aria-hidden="true"></span></summary>
<div class="hfa__body"><img class="hfa__mimg" src="https://neddev.com/lab-media/feature-accordeon-beeld-2.webp" alt="" loading="lazy"><p>Met een diodelaser, geschikt voor de meeste huidtypen. Gemiddeld 6 tot 8 behandelingen, met 6 weken ertussen.</p><ul><li>Proefplek gratis bij de intake</li><li>Uitgevoerd door een BIG-geregistreerd verpleegkundige</li></ul><a class="hfa__a" href="#">Boek een intake</a></div></details>
<details class="hfa__d" name="hfa-beh" data-i="3"><summary><span class="hfa__n">03</span><span class="hfa__st">Huidanalyse en behandelplan</span><span class="hfa__pr">30 min · € 35</span><span class="hfa__pl" aria-hidden="true"></span></summary>
<div class="hfa__body"><img class="hfa__mimg" src="https://neddev.com/lab-media/feature-accordeon-beeld-3.webp" alt="" loading="lazy"><p>Met een loeplamp en huidscanner kijken we naar vocht, talg, pigment en rimpels. Je krijgt het plan mee op papier.</p><ul><li>Bedrag wordt verrekend als je een behandeling boekt</li></ul><a class="hfa__a" href="#">Plan een analyse</a></div></details>
<details class="hfa__d" name="hfa-beh" data-i="4"><summary><span class="hfa__n">04</span><span class="hfa__st">Thuisverzorging op maat</span><span class="hfa__pr">advies gratis</span><span class="hfa__pl" aria-hidden="true"></span></summary>
<div class="hfa__body"><img class="hfa__mimg" src="https://neddev.com/lab-media/feature-accordeon-beeld-4.webp" alt="" loading="lazy"><p>Drie producten voor 's ochtends en 's avonds, afgestemd op je analyse. Niet goed voor je huid? Binnen 30 dagen omruilen.</p><a class="hfa__a" href="#">Bekijk de producten</a></div></details>
</div>
</div>
<div class="hfa__r">
<img class="hfa__fig is-on" data-i="1" src="https://neddev.com/lab-media/feature-accordeon-beeld-1.webp" alt="Schoonheidsspecialist brengt een masker aan bij een cliënt" loading="lazy">
<img class="hfa__fig" data-i="2" src="https://neddev.com/lab-media/feature-accordeon-beeld-2.webp" alt="Laserontharing op een onderarm" loading="lazy">
<img class="hfa__fig" data-i="3" src="https://neddev.com/lab-media/feature-accordeon-beeld-3.webp" alt="Huidanalyse met een loeplamp" loading="lazy">
<img class="hfa__fig" data-i="4" src="https://neddev.com/lab-media/feature-accordeon-beeld-4.webp" alt="Flesjes huidverzorging op een plank" loading="lazy">
<p class="hfa__cap"><span class="hfa__cap-n">01</span> / 04</p>
</div>
</div>
</div>
</div>/* Dienstenaccordeon met foto per dienst · NedDev · eigen werk. */
/* fonts (Fontshare): gambetta@400,500,600 + satoshi@400,500,700 */
.hfa{--hfa-bg:#f4ece6;--hfa-coc:#3b2620;--hfa-rose:#a8473f;--hfa-line:#e2d0c4;--hfa-mut:#6b5850;background:var(--hfa-bg);color:var(--hfa-coc);font-family:'Satoshi',sans-serif;box-sizing:border-box}
.hfa *,.hfa *::before,.hfa *::after{box-sizing:border-box}
.hfa__in{max-width:1200px;margin:0 auto;padding:44px 32px;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:stretch}
.hfa__kick{margin:0 0 10px;font-size:13px;font-weight:500;color:var(--hfa-mut)}
.hfa__h{font-family:'Gambetta',serif;font-weight:500;font-size:clamp(34px,4vw,52px);line-height:1;letter-spacing:-.02em;margin:0 0 12px}
.hfa__lead{margin:0 0 22px;font-size:15.5px;line-height:1.6;color:var(--hfa-mut);max-width:46ch}
.hfa__acc{border-top:1px solid var(--hfa-coc)}
.hfa__d{border-bottom:1px solid var(--hfa-line)}
.hfa__d summary{display:grid;grid-template-columns:34px 1fr auto 22px;align-items:center;gap:12px;padding:16px 2px;cursor:pointer;list-style:none;transition:color .16s}
.hfa__d summary::-webkit-details-marker{display:none}
.hfa__d summary:hover .hfa__st{color:var(--hfa-rose)}
.hfa__d summary:focus-visible{outline:2px solid var(--hfa-rose);outline-offset:2px}
.hfa__n{font-size:12px;font-weight:700;color:var(--hfa-mut);font-variant-numeric:tabular-nums}
.hfa__st{font-family:'Gambetta',serif;font-weight:500;font-size:21px;line-height:1.2;transition:color .16s}
.hfa__pr{font-size:13.5px;color:var(--hfa-mut);font-variant-numeric:tabular-nums;white-space:nowrap}
.hfa__pl{position:relative;width:14px;height:14px;justify-self:end}
.hfa__pl::before,.hfa__pl::after{content:"";position:absolute;left:0;right:0;top:6px;height:1.5px;background:currentColor;transition:transform .25s}
.hfa__pl::after{transform:rotate(90deg)}
.hfa__d[open] .hfa__pl::after{transform:rotate(0)}
.hfa__d[open] .hfa__n{color:var(--hfa-rose)}
.hfa__body{padding:0 2px 18px 46px;font-size:15px;line-height:1.6}
.hfa__body p{margin:0 0 8px}
.hfa__body ul{margin:0 0 12px;padding-left:18px;color:var(--hfa-mut);font-size:14px}
.hfa__a{display:inline-flex;align-items:center;gap:8px;color:var(--hfa-coc);font-weight:700;font-size:14.5px;text-decoration:none;border-bottom:1.5px solid var(--hfa-rose);padding-bottom:2px;transition:color .16s}
.hfa__a:hover{color:var(--hfa-rose)}
.hfa__a:focus-visible{outline:2px solid var(--hfa-rose);outline-offset:3px}
.hfa__mimg{display:none}
@supports (interpolate-size:allow-keywords){
.hfa{interpolate-size:allow-keywords}
.hfa__d::details-content{block-size:0;overflow:clip;transition:block-size .35s cubic-bezier(.2,.7,.2,1),content-visibility .35s allow-discrete}
.hfa__d[open]::details-content{block-size:auto}
}
.hfa__r{position:relative;border-radius:2px 120px 2px 2px;overflow:hidden;min-height:460px;background:#e7d8cd}
.hfa__fig{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.03);transition:opacity .45s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.hfa__fig.is-on{opacity:1;transform:none}
.hfa__cap{position:absolute;left:16px;bottom:14px;margin:0;background:rgba(244,236,230,.92);padding:6px 10px;font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums;border-radius:2px}
@media (max-width:860px){.hfa__in{grid-template-columns:1fr;padding:28px 16px}.hfa__r{display:none}.hfa__mimg{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;margin:0 0 12px}.hfa__body{padding-left:0}.hfa__d summary{grid-template-columns:28px 1fr 18px}.hfa__pr{grid-column:2;grid-row:2;margin-top:-8px}.hfa__pl{grid-column:3;grid-row:1}.hfa__st{font-size:19px}}
@media (prefers-reduced-motion:reduce){.hfa *,.hfa__d::details-content{transition:none!important}}// Dienstenaccordeon met foto per dienst · NedDev · eigen werk.
// root = het element waarin de HTML staat
function init(root){
var w=root.querySelector('.hfa');if(!w)return;
var ds=[].slice.call(w.querySelectorAll('.hfa__d')),figs=[].slice.call(w.querySelectorAll('.hfa__fig')),cap=w.querySelector('.hfa__cap-n');
function pick(i){figs.forEach(function(f){f.classList.toggle('is-on',f.getAttribute('data-i')===i);});cap.textContent='0'+i;}
ds.forEach(function(d){d.addEventListener('toggle',function(){if(!d.open)return;ds.forEach(function(o){if(o!==d&&o.open)o.open=false;});pick(d.getAttribute('data-i'));});});
}
init(document.querySelector('.jouw-container'));
More page sections
Seen something you like?
Add it to your selection and send it over. We build your site around it, in your brand.
Get in touch →