{"id":581885,"date":"2026-07-17T15:34:39","date_gmt":"2026-07-17T13:34:39","guid":{"rendered":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/?page_id=581885"},"modified":"2026-07-28T12:11:11","modified_gmt":"2026-07-28T10:11:11","slug":"3dontwerp","status":"publish","type":"page","link":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/3dontwerp\/","title":{"rendered":"3D Ontwerp"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"581885\" class=\"elementor elementor-581885\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7eb95788 e-flex e-con-boxed e-con e-parent\" data-id=\"7eb95788\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3dd3327 elementor-widget elementor-widget-html\" data-id=\"3dd3327\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<meta charset=\"utf-8\">\r\n<style>\r\n\r\n\/* --- anti-lek reset: hostthema buiten de deur houden --- *\/\r\n.r108embed.r108embed, .r108embed.r108embed *, .r108embed.r108embed *::before, .r108embed.r108embed *::after{box-sizing:border-box}\r\n.r108embed.r108embed h1, .r108embed.r108embed h2, .r108embed.r108embed h3, .r108embed.r108embed h4, .r108embed.r108embed h5, .r108embed.r108embed h6, .r108embed.r108embed p, .r108embed.r108embed ul, .r108embed.r108embed ol, .r108embed.r108embed li,\r\n.r108embed.r108embed figure, .r108embed.r108embed blockquote{margin:0 !important;padding:0 !important;background:none !important;border:none !important;box-shadow:none !important;text-shadow:none}\r\n.r108embed.r108embed ul, .r108embed.r108embed ol{list-style:none !important}\r\n.r108embed.r108embed li::before, .r108embed.r108embed li::marker{content:none}\r\n.r108embed.r108embed a{color:inherit !important;text-decoration:none !important;background:none !important;border-bottom:none !important;box-shadow:none !important;transition:none}\r\n.r108embed.r108embed a:hover, .r108embed.r108embed a:focus{text-decoration:none !important;background:none !important;color:inherit !important;outline:none}\r\n.r108embed.r108embed img{max-width:100%;height:auto;display:block;margin:0 !important;padding:0 !important;border:none !important;border-radius:0 !important;box-shadow:none !important;filter:none}\r\n.r108embed.r108embed button{font-family:inherit !important;font-size:inherit !important;font-weight:inherit !important;letter-spacing:inherit !important;text-transform:none !important;\r\n  cursor:pointer;border:none !important;background:none !important;color:inherit !important;margin:0 !important;padding:0 !important;border-radius:0 !important;box-shadow:none !important;\r\n  line-height:inherit !important;min-height:0;min-width:0;width:auto;text-shadow:none;transition:none}\r\n.r108embed.r108embed button:hover, .r108embed.r108embed button:focus{background:none !important;color:inherit !important;border:none !important;box-shadow:none !important;outline:none}\r\n.r108embed.r108embed input, .r108embed.r108embed textarea, .r108embed.r108embed select{font-family:inherit !important;font-size:inherit !important;color:inherit !important;margin:0 !important;\r\n  background:#fff !important;border:none !important;border-radius:0 !important;box-shadow:none !important;min-height:0;line-height:inherit !important}\r\n.r108embed.r108embed summary{margin:0 !important;padding:0 !important;background:none !important;border:none !important}\r\n.r108embed.r108embed svg{fill:none}\r\n.r108embed.r108embed .icon{fill:none}\r\n\r\n.r108embed.r108embed{\r\n    --brown-1:#190d06; --brown-2:#3a2310; --brown-3:#5b3a18;\r\n    --gold:#e6d3a4;\r\n    --orange:#f29141; --orange-deep:#e07d29;\r\n    --ink:#333333; --ink-soft:#5a544c; --muted:#8e867b;\r\n    --teal:#3f5a57;\r\n    --paper:#ffffff; --paper-2:#f6f4f1; --line:rgba(20,14,8,.14); --line-2:rgba(20,14,8,.26);\r\n    --head:\"Josefin Sans\",system-ui,-apple-system,\"Segoe UI\",sans-serif;\r\n    --sans:\"Work Sans\",system-ui,-apple-system,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;\r\n    \r\n    --script:\"Allison\",\"Segoe Script\",\"Brush Script MT\",\"Snell Roundhand\",\"Apple Chancery\",cursive;\r\n  }\r\n.r108embed.r108embed *{box-sizing:border-box;margin:0 !important;padding:0 !important}\r\n.r108embed.r108embed{scroll-behavior:smooth}\r\n.r108embed.r108embed{font-family:var(--sans) !important;background:var(--paper) !important;color:var(--ink) !important;line-height:1.7 !important;-webkit-font-smoothing:antialiased;font-weight:400 !important}\r\n.r108embed.r108embed a{color:inherit !important;text-decoration:none !important}\r\n.r108embed.r108embed img{max-width:100%;display:block}\r\n.r108embed.r108embed button{font-family:inherit !important;cursor:pointer;border:none !important;background:none !important;color:inherit !important}\r\n.r108embed.r108embed ::selection{background:var(--orange) !important;color:#fff !important}\r\n.r108embed.r108embed .wrap{max-width:1180px;margin:0 auto !important;padding:0 28px !important}\r\n.r108embed.r108embed .icon{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}\r\n.r108embed.r108embed h1, .r108embed.r108embed h2, .r108embed.r108embed h3, .r108embed.r108embed h4{font-family:var(--head) !important;font-weight:300 !important;text-transform:uppercase !important;letter-spacing:.1em !important;line-height:1.15 !important;color:var(--ink) !important}\r\n.r108embed.r108embed .script-line{font-family:var(--script) !important;font-size:clamp(26px,3.4vw,40px) !important;line-height:1 !important;color:var(--ink) !important;\r\n    letter-spacing:1px !important;display:block;margin-bottom:10px !important}\r\n.r108embed.r108embed .script-line.on-dark{color:var(--gold) !important}\r\n.r108embed.r108embed .eyebrow{font-family:var(--head) !important;font-size:12px !important;letter-spacing:.3em !important;text-transform:uppercase !important;color:var(--orange) !important;font-weight:500 !important;display:block;margin-bottom:14px !important}\r\n.r108embed.r108embed .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:16px 30px !important;border-radius:3px !important;font-family:var(--head) !important;font-size:13px !important;font-weight:500 !important;letter-spacing:.16em !important;text-transform:uppercase !important;transition:.22s}\r\n.r108embed.r108embed .btn-orange{background:var(--orange) !important;color:#fff !important}\r\n.r108embed.r108embed .btn-orange:hover{background:var(--orange-deep) !important}\r\n.r108embed.r108embed .btn-ghost{border:1px solid var(--line-2) !important;color:var(--ink) !important}\r\n.r108embed.r108embed .btn-ghost:hover{border-color:var(--orange) !important;color:var(--orange) !important}\r\n.r108embed.r108embed .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}\r\n.r108embed.r108embed .reveal.vis{opacity:1;transform:none}\r\n@media (prefers-reduced-motion: reduce){.r108embed.r108embed .reveal{opacity:1;transform:none;transition:none}}\r\n.r108embed.r108embed .ontwerp-hero{padding:clamp(52px,7vw,88px) 0 clamp(46px,6vw,72px) !important}\r\n.r108embed.r108embed .ontwerp-hero .wrap{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(30px,5vw,64px);align-items:center;max-width:1120px}\r\n.r108embed.r108embed .ontwerp-hero h1{font-size:clamp(28px,3.8vw,46px) !important;letter-spacing:.08em !important}\r\n.r108embed.r108embed .ontwerp-hero h1 em{font-style:normal !important;color:var(--orange) !important}\r\n.r108embed.r108embed .ontwerp-hero .lead{max-width:54ch;margin-top:18px !important;color:var(--ink-soft) !important;font-size:16.5px !important}\r\n.r108embed.r108embed .ontwerp-hero .incl{display:inline-flex;align-items:flex-start;gap:10px;background:var(--paper-2) !important;border:1px solid var(--line) !important;\r\n    border-radius:10px !important;padding:13px 18px !important;margin-top:22px !important;font-size:13.5px !important;color:var(--ink-soft) !important}\r\n.r108embed.r108embed .ontwerp-hero .incl .icon{stroke:var(--orange);flex:0 0 auto;margin-top:3px !important}\r\n.r108embed.r108embed .ontwerp-hero .incl b{color:var(--ink) !important;font-weight:600 !important}\r\n.r108embed.r108embed .ontwerp-hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px !important}\r\n.r108embed.r108embed .hero-media .frame{border-radius:170px 170px 14px 14px !important;overflow:hidden;border:1px solid var(--line) !important;\r\n    box-shadow:0 28px 56px -26px rgba(20,14,8,.5) !important;aspect-ratio:4\/5;background:var(--paper-2) !important}\r\n.r108embed.r108embed .hero-media .frame img{width:100%;height:100%;object-fit:cover}\r\n.r108embed.r108embed .what-sec{background:var(--paper-2) !important;border-top:1px solid var(--line) !important;border-bottom:1px solid var(--line) !important;padding:clamp(52px,7vw,86px) 0 !important}\r\n.r108embed.r108embed .what-sec .wrap{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(30px,5vw,64px);align-items:center;max-width:1060px}\r\n.r108embed.r108embed .what-media{border-radius:14px !important;overflow:hidden;border:1px solid var(--line) !important;box-shadow:0 28px 56px -26px rgba(20,14,8,.5) !important;aspect-ratio:4\/3;background:#fff !important}\r\n.r108embed.r108embed .what-media img{width:100%;height:100%;object-fit:cover}\r\n.r108embed.r108embed .what-sec h2{font-size:clamp(20px,2.6vw,30px) !important;letter-spacing:.12em !important;color:var(--teal) !important}\r\n.r108embed.r108embed .what-sec .rule{width:54px;height:2px;background:var(--orange) !important;margin:16px 0 20px !important}\r\n.r108embed.r108embed .what-sec p{color:var(--ink-soft) !important;font-size:15px !important;margin-bottom:14px !important}\r\n.r108embed.r108embed .what-sec ul{list-style:none !important;margin:18px 0 0 !important}\r\n.r108embed.r108embed .what-sec li{position:relative;padding-left:28px !important;margin:10px 0 !important;color:var(--ink-soft) !important;font-size:14.5px !important}\r\n.r108embed.r108embed .what-sec li::before{content:\"\u2713\";position:absolute;left:0;color:var(--orange) !important;font-weight:600 !important}\r\n.r108embed.r108embed .what-sec li b{color:var(--ink) !important}\r\n.r108embed.r108embed .ben-sec{padding:clamp(52px,7vw,86px) 0 !important;text-align:center}\r\n.r108embed.r108embed .ben-sec h2{font-size:clamp(20px,2.6vw,30px) !important;letter-spacing:.12em !important;color:var(--teal) !important}\r\n.r108embed.r108embed .ben-sec .sub{color:var(--ink-soft) !important;font-size:15px !important;margin-top:12px !important}\r\n.r108embed.r108embed .ben-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1000px;margin:40px auto 0 !important;padding:0 8px !important}\r\n.r108embed.r108embed .ben-card{background:var(--paper-2) !important;border:1px solid var(--line) !important;border-radius:10px !important;padding:32px 26px !important;transition:.25s;text-align:left}\r\n.r108embed.r108embed .ben-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px -20px rgba(20,14,8,.45) !important;border-color:var(--line-2) !important}\r\n.r108embed.r108embed .ben-card .ic{width:46px;height:46px;margin-bottom:16px !important;border-radius:50% !important;background:#fff !important;border:1px solid var(--line) !important;display:flex;align-items:center;justify-content:center}\r\n.r108embed.r108embed .ben-card .ic .icon{stroke:var(--orange);width:22px}\r\n.r108embed.r108embed .ben-card h3{font-size:14.5px !important;letter-spacing:.12em !important;color:var(--ink) !important;margin-bottom:10px !important}\r\n.r108embed.r108embed .ben-card p{font-size:13.5px !important;color:var(--ink-soft) !important}\r\n.r108embed.r108embed .app-sec{background:var(--paper-2) !important;border-top:1px solid var(--line) !important;border-bottom:1px solid var(--line) !important;\r\n    padding:clamp(52px,7vw,86px) 0 !important;text-align:center}\r\n.r108embed.r108embed .app-sec h2{font-size:clamp(20px,2.6vw,30px) !important;letter-spacing:.12em !important;color:var(--teal) !important}\r\n.r108embed.r108embed .app-sec .sub{color:var(--ink-soft) !important;font-size:15px !important;margin-top:12px !important;max-width:56ch;margin-left:auto !important;margin-right:auto !important}\r\n.r108embed.r108embed .app-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1060px;margin:44px auto 0 !important;padding:0 8px !important}\r\n.r108embed.r108embed .app-card{background:#fff !important;border:1px solid var(--line) !important;border-radius:150px 150px 12px 12px !important;\r\n    padding:44px 20px 28px !important;transition:.28s}\r\n.r108embed.r108embed .app-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px -22px rgba(20,14,8,.42) !important;border-color:var(--line-2) !important}\r\n.r108embed.r108embed .app-card .knob{width:52px;height:52px;margin:0 auto 16px !important;border-radius:50% !important;display:flex;align-items:center;justify-content:center;\r\n    font-family:var(--head) !important;font-weight:500 !important;font-size:19px !important;color:#fff !important;background:var(--orange) !important}\r\n.r108embed.r108embed .app-card h3{font-size:14px !important;letter-spacing:.1em !important;color:var(--ink) !important;margin-bottom:10px !important}\r\n.r108embed.r108embed .app-card p{font-size:13px !important;color:var(--ink-soft) !important}\r\n.r108embed.r108embed .price-sec{padding:clamp(52px,7vw,86px) 0 0 !important}\r\n.r108embed.r108embed .price-card{max-width:680px;margin:0 auto !important;background:var(--paper-2) !important;border:1px solid var(--line) !important;border-radius:14px !important;\r\n    padding:30px clamp(20px,4vw,40px) !important;text-align:center}\r\n.r108embed.r108embed .price-card .amount{font-family:var(--head) !important;font-size:clamp(26px,3.4vw,38px) !important;letter-spacing:.06em !important;color:var(--ink) !important}\r\n.r108embed.r108embed .price-card .amount small{font-size:15px !important;color:var(--muted) !important;letter-spacing:.02em !important;text-transform:none !important}\r\n.r108embed.r108embed .price-card .gratis{margin-top:8px !important;font-size:14.5px !important;color:var(--ink-soft) !important}\r\n.r108embed.r108embed .price-card .gratis b{color:var(--orange) !important;font-weight:600 !important}\r\n.r108embed.r108embed .plan-sec{padding:clamp(52px,7vw,86px) 0 !important;text-align:center}\r\n.r108embed.r108embed .plan-sec h2{font-size:clamp(20px,2.6vw,30px) !important;letter-spacing:.12em !important;color:var(--teal) !important}\r\n.r108embed.r108embed .plan-sec .sub{color:var(--ink-soft) !important;font-size:15px !important;margin-top:12px !important}\r\n.r108embed.r108embed .plan-card{max-width:680px;margin:38px auto 0 !important;background:#fff !important;border:1px solid var(--line) !important;border-radius:14px !important;\r\n    padding:30px clamp(20px,4vw,40px) 36px !important;box-shadow:0 22px 44px -24px rgba(20,14,8,.35) !important;text-align:left}\r\n.r108embed.r108embed .plan-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px !important}\r\n.r108embed.r108embed .plan-top span{font-family:var(--head) !important;font-size:11px !important;letter-spacing:.22em !important;text-transform:uppercase !important;color:var(--muted) !important}\r\n.r108embed.r108embed .plan-q{font-family:var(--head) !important;font-size:15px !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--ink) !important;margin:18px 0 4px !important}\r\n.r108embed.r108embed .plan-help{font-size:13px !important;color:var(--muted) !important;margin-bottom:12px !important}\r\n.r108embed.r108embed .chips{display:flex;flex-wrap:wrap;gap:10px}\r\n.r108embed.r108embed .chip{border:1px solid var(--line) !important;border-radius:999px !important;padding:10px 20px !important;font-size:14px !important;color:var(--ink-soft) !important;transition:.2s;background:var(--paper-2) !important}\r\n.r108embed.r108embed .chip:hover{border-color:var(--orange) !important;color:var(--orange) !important}\r\n.r108embed.r108embed .chip.on{background:var(--orange) !important;border-color:var(--orange) !important;color:#fff !important}\r\n.r108embed.r108embed .plan-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px !important}\r\n.r108embed.r108embed .plan-back{font-size:14px !important;color:var(--muted) !important}\r\n.r108embed.r108embed .plan-back:hover{color:var(--orange) !important}\r\n.r108embed.r108embed .plan-err{color:#b4483a !important;font-size:13.5px !important;margin-top:14px !important;display:none}\r\n.r108embed.r108embed .plan-err.show{display:block}\r\n.r108embed.r108embed .field{margin-top:16px !important}\r\n.r108embed.r108embed .field label{display:block;font-family:var(--head) !important;font-size:11px !important;letter-spacing:.2em !important;text-transform:uppercase !important;color:var(--ink-soft) !important;margin-bottom:7px !important}\r\n.r108embed.r108embed .field input{width:100%;border:1px solid var(--line-2) !important;border-radius:8px !important;padding:13px 16px !important;font-family:var(--sans) !important;font-size:15px !important;color:var(--ink) !important;background:#fff !important;transition:.2s}\r\n.r108embed.r108embed .field input:focus{outline:none;border-color:var(--orange) !important;box-shadow:0 0 0 3px rgba(242,145,65,.15) !important}\r\n.r108embed.r108embed .plan-recap{background:var(--paper-2) !important;border:1px solid var(--line) !important;border-radius:10px !important;padding:14px 18px !important;font-size:14px !important;color:var(--ink-soft) !important}\r\n.r108embed.r108embed .plan-recap b{color:var(--ink) !important}\r\n.r108embed.r108embed .plan-done{text-align:center;padding:16px 0 4px !important}\r\n.r108embed.r108embed .plan-done .seal{width:76px;height:76px;margin:0 auto 18px !important}\r\n.r108embed.r108embed .plan-done .seal svg{width:100%;height:100%}\r\n.r108embed.r108embed .plan-done .seal .ring{fill:none;stroke:var(--gold);stroke-width:1.4}\r\n.r108embed.r108embed .plan-done .seal .check{fill:none;stroke:var(--orange);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;\r\n    stroke-dasharray:60;stroke-dashoffset:60;animation:draw 1s ease .2s forwards}\r\n@keyframes draw{to{stroke-dashoffset:0}}\r\n.r108embed.r108embed .plan-done h3{font-size:clamp(20px,2.6vw,26px) !important;letter-spacing:.1em !important}\r\n.r108embed.r108embed .plan-done p{color:var(--ink-soft) !important;font-size:15px !important;max-width:44ch;margin:12px auto 0 !important}\r\n.r108embed.r108embed .faq-sec{background:var(--paper-2) !important;border-top:1px solid var(--line) !important;border-bottom:1px solid var(--line) !important;padding:clamp(52px,7vw,86px) 0 !important}\r\n.r108embed.r108embed .faq-sec .wrap{max-width:820px}\r\n.r108embed.r108embed .faq-sec .head{text-align:center;margin-bottom:36px !important}\r\n.r108embed.r108embed .faq-sec h2{font-size:clamp(20px,2.6vw,30px) !important;letter-spacing:.12em !important;color:var(--teal) !important}\r\n.r108embed.r108embed .faq{border:1px solid var(--line) !important;border-radius:12px !important;overflow:hidden;background:#fff !important}\r\n.r108embed.r108embed .faq details{border-bottom:1px solid var(--line) !important}\r\n.r108embed.r108embed .faq details:last-child{border-bottom:none !important}\r\n.r108embed.r108embed .faq summary{list-style:none !important;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;\r\n    padding:20px 24px !important;font-family:var(--head) !important;font-size:14px !important;letter-spacing:.08em !important;text-transform:uppercase !important;color:var(--ink) !important;transition:.2s}\r\n.r108embed.r108embed .faq summary::-webkit-details-marker{display:none}\r\n.r108embed.r108embed .faq summary:hover{color:var(--orange) !important}\r\n.r108embed.r108embed .faq summary::after{content:\"+\";font-size:20px !important;color:var(--orange) !important;flex:0 0 auto;transition:.25s}\r\n.r108embed.r108embed .faq details[open] summary::after{transform:rotate(45deg)}\r\n.r108embed.r108embed .faq .a{padding:0 24px 22px !important;font-size:14.5px !important;color:var(--ink-soft) !important}\r\n.r108embed.r108embed .cross-sec{padding:clamp(52px,7vw,86px) 0 clamp(40px,5vw,60px) !important}\r\n.r108embed.r108embed .cross-card{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;\r\n    max-width:820px;margin:0 auto !important;background:var(--paper-2) !important;border:1px solid var(--line) !important;border-radius:14px !important;padding:26px 30px !important}\r\n.r108embed.r108embed .cross-card .txt h3{font-size:15px !important;letter-spacing:.1em !important;margin-bottom:4px !important}\r\n.r108embed.r108embed .cross-card .txt p{font-size:13.5px !important;color:var(--ink-soft) !important}\r\n.r108embed.r108embed .end-cta{padding:0 0 clamp(56px,7vw,88px) !important}\r\n.r108embed.r108embed .end-card{position:relative;border-radius:14px !important;overflow:hidden;color:#f4ead7 !important;text-align:center;\r\n    background:radial-gradient(120% 150% at 50% -10%,var(--brown-3) 0%,var(--brown-2) 48%,var(--brown-1) 100%) !important;\r\n    padding:clamp(48px,6vw,72px) 30px !important;box-shadow:0 28px 56px -26px rgba(20,14,8,.55) !important;max-width:1060px;margin:0 auto !important}\r\n.r108embed.r108embed .end-card .arches{position:absolute;right:-60px;bottom:-140px;width:340px;height:340px;opacity:.6;pointer-events:none}\r\n.r108embed.r108embed .end-card .arches circle{fill:none;stroke:var(--gold);stroke-width:1;opacity:.35}\r\n.r108embed.r108embed .end-card h2{color:#fdf6ea !important;font-size:clamp(22px,3vw,32px) !important;letter-spacing:.12em !important;position:relative;z-index:1}\r\n.r108embed.r108embed .end-card p{color:rgba(244,234,215,.8) !important;font-size:15px !important;max-width:52ch;margin:14px auto 26px !important;position:relative;z-index:1}\r\n.r108embed.r108embed .end-card .ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}\r\n.r108embed.r108embed .end-card .btn-ghost{border-color:rgba(230,211,164,.5) !important;color:#f4ead7 !important}\r\n.r108embed.r108embed .end-card .btn-ghost:hover{border-color:var(--gold) !important;color:var(--gold) !important}\r\n@media (max-width:960px){.r108embed.r108embed .ontwerp-hero .wrap, .r108embed.r108embed .what-sec .wrap{grid-template-columns:1fr;gap:40px}\r\n.r108embed.r108embed .hero-media{max-width:440px;margin:0 auto !important}\r\n.r108embed.r108embed .what-media{order:-1;max-width:520px;margin:0 auto !important;width:100%}\r\n.r108embed.r108embed .ben-cards{grid-template-columns:1fr;max-width:440px}\r\n.r108embed.r108embed .app-cards{grid-template-columns:repeat(2,1fr)}}\r\n@media (max-width:560px){.r108embed.r108embed .ontwerp-hero .ctas .btn{width:100%}\r\n.r108embed.r108embed .app-cards{grid-template-columns:1fr;max-width:340px}\r\n.r108embed.r108embed .plan-nav{flex-direction:column-reverse;align-items:stretch}\r\n.r108embed.r108embed .plan-nav .btn{width:100%}\r\n.r108embed.r108embed .cross-card{justify-content:center;text-align:center}}\r\n.r108embed.r108embed .reveal{opacity:1 !important;transform:none !important}\r\n<\/style>\r\n<div class=\"r108embed\">\r\n<!-- ============================================================\r\n     1 \u00b7 HERO\r\n     Foto instellen: vul IMAGES.hero in het CONFIG-blok onderaan.\r\n     ============================================================ -->\r\n<section class=\"ontwerp-hero\">\r\n  <div class=\"wrap\">\r\n    <div>\r\n      <span class=\"eyebrow\" id=\"hero-eyebrow\">3D interieurontwerp &bull; Room108<\/span>\r\n      <span class=\"script-line\">Beleef je interieur vooraf<\/span>\r\n      <h1>3D interieurontwerp, <em>zie je droominterieur<\/em> voordat het er staat<\/h1>\r\n      <p class=\"lead\">Wil je zeker weten dat jouw nieuwe interieur perfect bij je past? Met een 3D interieurontwerp krijg je een realistische visualisatie van jouw woning, nog voordat de inrichting begint. Of je nu een compleet nieuw interieur wilt of \u00e9\u00e9n ruimte wilt herinrichten, een 3D-ontwerp helpt je de juiste keuzes te maken.<\/p>\r\n      <div class=\"incl\">\r\n        <svg class=\"icon\" viewBox=\"0 0 24 24\"><path d=\"M20 6L9 17l-5-5\"\/><\/svg>\r\n        <span>Inclusief <b>meubeladvies<\/b>, <b>kleur- en materiaaladvies<\/b> en een <b>moodboard<\/b>!<\/span>\r\n      <\/div>\r\n      <div class=\"ctas\">\r\n        <a class=\"btn btn-orange\" href=\"#planner\">Maak een afspraak<\/a>\r\n        <a class=\"btn btn-ghost\" href=\"#voordelen\">Waarom een 3D-ontwerp?<\/a>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"hero-media\">\r\n      <div class=\"frame\"><img decoding=\"async\" id=\"img-hero\" src=\"\/wp-content\/uploads\/2022\/10\/Interieuradvies-Room108-3d-advies-styling-scaled.jpg\" alt=\"3D interieurontwerp door Room108\"><\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============================================================\r\n     2 \u00b7 WAT IS EEN 3D-ONTWERP\r\n     Foto instellen: vul IMAGES.uitleg in het CONFIG-blok\r\n     (bijv. een render\/visualisatie van een 3D-ontwerp).\r\n     ============================================================ -->\r\n<section class=\"what-sec reveal\">\r\n  <div class=\"wrap\">\r\n    <div class=\"what-media\"><img decoding=\"async\" id=\"img-uitleg\" src=\"\/wp-content\/uploads\/2026\/07\/3d-interieurontwerp.png\" alt=\"Voorbeeld van een 3D visualisatie\"><\/div>\r\n    <div>\r\n      <span class=\"script-line\">Wat is het precies?<\/span>\r\n      <h2>Visualiseer je nieuwe interieur<\/h2>\r\n      <div class=\"rule\"><\/div>\r\n      <p>Een 3D interieurontwerp geeft een realistisch beeld van jouw toekomstige interieur. Het gaat verder dan een plattegrond en laat zien hoe kleuren, materialen en meubels samenkomen in jouw ruimte, inclusief hoogte, diepte en perspectief.<\/p>\r\n      <p>Van meubelplaatsing tot verlichting, je ervaart jouw interieur vooraf en maakt keuzes met vertrouwen.<\/p>\r\n      <ul>\r\n        <li><b>Loop alvast door<\/b> jouw toekomstige interieur<\/li>\r\n        <li><b>Duidelijk inzicht<\/b> in meubels, kleuren en materialen<\/li>\r\n        <li>Bekijk <b>verschillende stijlen en indelingen<\/b><\/li>\r\n      <\/ul>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============================================================\r\n     3 \u00b7 DE 3 GROOTSTE VOORDELEN\r\n     ============================================================ -->\r\n<section class=\"ben-sec reveal\" id=\"voordelen\">\r\n  <div class=\"wrap\">\r\n    <span class=\"script-line\">De grootste voordelen<\/span>\r\n    <h2>Waarom een 3D interieurontwerp?<\/h2>\r\n    <div class=\"ben-cards\">\r\n      <div class=\"ben-card\">\r\n        <div class=\"ic\"><svg class=\"icon\" viewBox=\"0 0 24 24\"><path d=\"M1 12s4-7 11-7 11 7 11 7-4 7-11 7S1 12 1 12z\"\/><circle cx=\"12\" cy=\"12\" r=\"3\"\/><\/svg><\/div>\r\n        <h3>Ervaar het vooraf<\/h3>\r\n        <p>Je bekijkt jouw ruimte realistisch vanuit verschillende hoeken, met meubels, kleuren, verlichting en materialen. Zo weet je precies hoe je interieur er uiteindelijk uit zal zien.<\/p>\r\n      <\/div>\r\n      <div class=\"ben-card\">\r\n        <div class=\"ic\"><svg class=\"icon\" viewBox=\"0 0 24 24\"><path d=\"M12 3l7 3v5c0 4.5-3 8.5-7 10-4-1.5-7-5.5-7-10V6z\"\/><path d=\"M9 12l2 2 4-4\"\/><\/svg><\/div>\r\n        <h3>Voorkom miskopen<\/h3>\r\n        <p>Omdat je vooraf ziet hoe alles samenkomt, voorkom je teleurstellingen en aankopen die niet passen. Alle keuzes zijn op elkaar afgestemd voordat je iets aanschaft.<\/p>\r\n      <\/div>\r\n      <div class=\"ben-card\">\r\n        <div class=\"ic\"><svg class=\"icon\" viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"1\"\/><path d=\"M3 12h9M12 3v9\"\/><\/svg><\/div>\r\n        <h3>Test indelingen<\/h3>\r\n        <p>Je kunt verschillende indelingen en looproutes bekijken, zodat de ruimte praktisch \u00e9n esthetisch in balans is. Ideaal voor zowel bestaande woningen als nieuwbouw.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============================================================\r\n     4 \u00b7 ONZE AANPAK: van stijlanalyse tot presentatie\r\n     ============================================================ -->\r\n<section class=\"app-sec reveal\">\r\n  <div class=\"wrap\">\r\n    <span class=\"script-line\">Onze aanpak<\/span>\r\n    <h2>Een totaalconcept voor jouw interieur<\/h2>\r\n    <p class=\"sub\">Van eerste kennismaking tot presentatie in de showroom, stap voor stap naar een interieur dat klopt.<\/p>\r\n    <div class=\"app-cards\">\r\n      <div class=\"app-card\">\r\n        <div class=\"knob\">1<\/div>\r\n        <h3>Stijlanalyse<\/h3>\r\n        <p>We beginnen met een uitgebreide stijlanalyse, waarin we jouw woonwensen en persoonlijke smaak in kaart brengen.<\/p>\r\n      <\/div>\r\n      <div class=\"app-card\">\r\n        <div class=\"knob\">2<\/div>\r\n        <h3>Meubelkeuze<\/h3>\r\n        <p>We bepalen de ideale meubelkeuze: banken, eettafels, stoelen en kasten die passen bij de ruimte \u00e9n bijdragen aan sfeer en functionaliteit.<\/p>\r\n      <\/div>\r\n      <div class=\"app-card\">\r\n        <div class=\"knob\">3<\/div>\r\n        <h3>Indeling &amp; verlichting<\/h3>\r\n        <p>We kijken naar de ruimte-indeling en looproutes, en leggen met de juiste verlichting de accenten voor een gebalanceerde uitstraling.<\/p>\r\n      <\/div>\r\n      <div class=\"app-card\">\r\n        <div class=\"knob\">4<\/div>\r\n        <h3>Beleef het in 3D<\/h3>\r\n        <p>We presenteren het complete 3D-ontwerp in onze showroom, waar je de materialen en meubels zelf ervaart voordat je beslist.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============================================================\r\n     5 \u00b7 PRIJS (bedragen instellen via PRICING in de CONFIG)\r\n     ============================================================ -->\r\n<section class=\"price-sec reveal\">\r\n  <div class=\"wrap\">\r\n    <div class=\"price-card\">\r\n      <div class=\"amount\"><span class=\"r108-prijs\">\u20ac 899<\/span> <small>voor een compleet 3D-ontwerp<\/small><\/div>\r\n      <p class=\"gratis\">Bij aanschaf vanaf <b class=\"r108-gratis-vanaf\">\u20ac 14.999<\/b> is het ontwerp <b>helemaal gratis<\/b>.<\/p>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============================================================\r\n     6 \u00b7 PLANNER: afspraak in 2 stappen (PROTOTYPE-verzending)\r\n     ============================================================ -->\r\n<section class=\"plan-sec reveal\" id=\"planner\">\r\n  <div class=\"wrap\">\r\n    <span class=\"script-line\">Plan je afspraak<\/span>\r\n    <h2>Geregeld in 30 seconden<\/h2>\r\n    <p class=\"sub\">Vrijblijvend kennismaken in de showroom, wij bevestigen binnen \u00e9\u00e9n werkdag.<\/p>\r\n    <div class=\"plan-card\">\r\n      <!-- STAP 1: ruimtes + moment -->\r\n      <div id=\"plan-step1\">\r\n        <div class=\"plan-top\"><span>Stap 1 van 2, jouw wensen<\/span><span>&#9201; nog &plusmn; 30 sec.<\/span><\/div>\r\n        <div class=\"plan-q\">Voor welke ruimte(s) wil je een 3D-ontwerp?<\/div>\r\n        <p class=\"plan-help\">Kies \u00e9\u00e9n of meer ruimtes<\/p>\r\n        <div class=\"chips\" id=\"plan-rooms\">\r\n          <button class=\"chip\" type=\"button\">Woonkamer<\/button>\r\n          <button class=\"chip\" type=\"button\">Eetkamer<\/button>\r\n          <button class=\"chip\" type=\"button\">Slaapkamer<\/button>\r\n          <button class=\"chip\" type=\"button\">Complete woning<\/button>\r\n          <button class=\"chip\" type=\"button\">Anders \/ weet ik nog niet<\/button>\r\n        <\/div>\r\n        <div class=\"plan-q\">Wanneer komt het jou het beste uit?<\/div>\r\n        <div class=\"chips\" id=\"plan-moment\">\r\n          <button class=\"chip\" type=\"button\">Doordeweeks ochtend<\/button>\r\n          <button class=\"chip\" type=\"button\">Doordeweeks middag<\/button>\r\n          <button class=\"chip\" type=\"button\">Weekend<\/button>\r\n        <\/div>\r\n        <p class=\"plan-err\" id=\"plan-err1\">Kies eerst minimaal \u00e9\u00e9n ruimte en een moment.<\/p>\r\n        <div class=\"plan-nav\">\r\n          <span><\/span>\r\n          <button class=\"btn btn-orange\" type=\"button\" id=\"plan-next\">Volgende &rarr;<\/button>\r\n        <\/div>\r\n      <\/div>\r\n      <!-- STAP 2: gegevens -->\r\n      <div id=\"plan-step2\" hidden>\r\n        <div class=\"plan-top\"><span>Stap 2 van 2, je gegevens<\/span><span>&#9201; nog &plusmn; 15 sec.<\/span><\/div>\r\n        <p class=\"plan-recap\" id=\"plan-recap\">Bijna klaar!<\/p>\r\n        <div class=\"field\"><label for=\"plan-naam\">Voornaam en achternaam<\/label><input id=\"plan-naam\" type=\"text\" placeholder=\"Bijv. Sanne de Vries\" autocomplete=\"name\"><\/div>\r\n        <div class=\"field\"><label for=\"plan-tel\">Telefoonnummer<\/label><input id=\"plan-tel\" type=\"tel\" placeholder=\"06 ...\" autocomplete=\"tel\"><\/div>\r\n        <div class=\"field\"><label for=\"plan-mail\">E-mailadres<\/label><input id=\"plan-mail\" type=\"email\" placeholder=\"naam@voorbeeld.nl\" autocomplete=\"email\"><\/div>\r\n        <p class=\"plan-err\" id=\"plan-err2\">Vul je naam en een geldig telefoonnummer of e-mailadres in.<\/p>\r\n        <div class=\"plan-nav\">\r\n          <button class=\"plan-back\" type=\"button\" id=\"plan-back\">&larr; Terug<\/button>\r\n          <button class=\"btn btn-orange\" type=\"button\" id=\"plan-send\">Bevestig je afspraak &#10003;<\/button>\r\n        <\/div>\r\n      <\/div>\r\n      <!-- SUCCES: getoond na bevestigen -->\r\n      <div id=\"plan-succes\" class=\"plan-done\" hidden>\r\n        <div class=\"seal\">\r\n          <svg viewBox=\"0 0 96 96\"><circle class=\"ring\" cx=\"48\" cy=\"48\" r=\"45\"\/><circle class=\"ring\" cx=\"48\" cy=\"48\" r=\"38\"\/><path class=\"check\" d=\"M33 49 l10 10 l20 -22\"\/><\/svg>\r\n        <\/div>\r\n        <h3>Gelukt, je aanvraag is binnen!<\/h3>\r\n        <p id=\"plan-succes-txt\">We bellen of mailen je binnen \u00e9\u00e9n werkdag om je afspraak te bevestigen. Tot snel!<\/p>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============================================================\r\n     7 \u00b7 FAQ (native details\/summary, geen JavaScript nodig)\r\n     ============================================================ -->\r\n<section class=\"faq-sec reveal\">\r\n  <div class=\"wrap\">\r\n    <div class=\"head\">\r\n      <span class=\"script-line\">Veelgestelde vragen<\/span>\r\n      <h2>Alles over een 3D interieurontwerp<\/h2>\r\n    <\/div>\r\n    <div class=\"faq\">\r\n      <details open>\r\n        <summary>Wat is een 3D interieurontwerp?<\/summary>\r\n        <div class=\"a\">Een 3D interieurontwerp is een visuele weergave van een interieur waarbij je jouw ruimte realistisch bekijkt vanuit verschillende hoeken. In tegenstelling tot een 2D plattegrond biedt het een gedetailleerd beeld van meubels, kleuren, verlichting en materialen.<\/div>\r\n      <\/details>\r\n      <details>\r\n        <summary>Waarom kiezen voor een 3D interieurontwerp?<\/summary>\r\n        <div class=\"a\">Je ervaart je nieuwe interieur vooraf, waardoor je zeker weet dat alle keuzes perfect bij elkaar passen. Je voorkomt miskopen en teleurstellingen, en het helpt bij het optimaal indelen van je woning en het kiezen van de juiste verhoudingen.<\/div>\r\n      <\/details>\r\n      <details>\r\n        <summary>Hoe wordt een 3D interieurontwerp gemaakt?<\/summary>\r\n        <div class=\"a\">We beginnen met een inventarisatie van je woonwensen en een analyse van de ruimte. Vervolgens maken we een digitale weergave met gespecialiseerde software, waarin meubels, verlichting, kleuren en materialen nauwkeurig worden ingetekend.<\/div>\r\n      <\/details>\r\n      <details>\r\n        <summary>Hoeveel kost een 3D interieurontwerp?<\/summary>\r\n        <div class=\"a\">Een 3D interieurontwerp kost normaal <span class=\"r108-prijs\">\u20ac 899<\/span>, maar bij aanschaf vanaf <span class=\"r108-gratis-vanaf\">\u20ac 14.999<\/span> is het ontwerp helemaal gratis. We werken de mogelijkheden van de ruimte uit in visualisaties in de juiste maatvoering.<\/div>\r\n      <\/details>\r\n      <details>\r\n        <summary>Hoe lang duurt het maken van een 3D-ontwerp?<\/summary>\r\n        <div class=\"a\">Gemiddeld vier weken, afhankelijk van de complexiteit van het project. Factoren zoals het aantal ruimtes, de mate van detail en eventuele aanpassingen kunnen de doorlooptijd be\u00efnvloeden.<\/div>\r\n      <\/details>\r\n      <details>\r\n        <summary>Kan ik een 3D-ontwerp laten maken voor \u00e9\u00e9n kamer?<\/summary>\r\n        <div class=\"a\">Ja, een 3D-ontwerp kan zowel voor een complete woning als voor \u00e9\u00e9n specifieke ruimte gemaakt worden. Ideaal als je bijvoorbeeld een nieuwe eethoek, woonkamer of slaapkamer wilt inrichten.<\/div>\r\n      <\/details>\r\n      <details>\r\n        <summary>Is een 3D-ontwerp ook geschikt voor een nieuwbouwwoning?<\/summary>\r\n        <div class=\"a\">Zeker! Juist bij nieuwbouw is het waardevol om vooraf te zien hoe je interieur eruit komt te zien. Het helpt bij beslissingen over indeling, meubels en afwerkingen, nog voordat de bouw is afgerond.<\/div>\r\n      <\/details>\r\n      <details>\r\n        <summary>Kan een 3D-ontwerp worden aangepast?<\/summary>\r\n        <div class=\"a\">Ja, we presenteren eerst een concept en een voorlopige versie. Daarna is er ruimte voor feedback en wijzigingen voordat het definitieve ontwerp wordt opgeleverd.<\/div>\r\n      <\/details>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============================================================\r\n     8 \u00b7 KRUISLINK NAAR 2D + AFSLUITENDE CTA\r\n     Link instellen via LINKS.ontwerp2d in de CONFIG.\r\n     ============================================================ -->\r\n<section class=\"cross-sec reveal\">\r\n  <div class=\"wrap\">\r\n    <div class=\"cross-card\">\r\n      <div class=\"txt\">\r\n        <h3>Eerst de basis leggen?<\/h3>\r\n        <p>Met een 2D interieurontwerp start je met een heldere plattegrond en indeling.<\/p>\r\n      <\/div>\r\n      <a class=\"btn btn-ghost\" id=\"cross-link\" href=\"\/2dontwerp\/\">Bekijk 2D interieurontwerp<\/a>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<section class=\"end-cta reveal\">\r\n  <div class=\"wrap\">\r\n    <div class=\"end-card\">\r\n      <svg class=\"arches\" viewBox=\"0 0 340 340\"><circle cx=\"170\" cy=\"170\" r=\"60\"\/><circle cx=\"170\" cy=\"170\" r=\"100\"\/><circle cx=\"170\" cy=\"170\" r=\"140\"\/><circle cx=\"170\" cy=\"170\" r=\"180\"\/><\/svg>\r\n      <span class=\"script-line on-dark\">Tot snel bij Room108<\/span>\r\n      <h2>Beleef jouw droominterieur in 3D<\/h2>\r\n      <p>Kom langs in onze showroom, dan brengen we jouw woonwensen in beeld, tot in de kleinste details, nog v\u00f3\u00f3r de inrichting begint.<\/p>\r\n      <div class=\"ctas\">\r\n        <a class=\"btn btn-orange\" href=\"#planner\">Maak een afspraak<\/a>\r\n        <a class=\"btn btn-ghost r108-telbtn\" href=\"tel:+31407200890\">Bel ons<\/a>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n\/* ==============================================================\r\n   Room108 \u00b7 3D interieurontwerp \u2014 alle interactie in \u00c9\u00c9N IIFE,\r\n   zodat niets naar de globale scope lekt (Elementor-pagina's\r\n   laden ook thema\/plugin-scripts; naam-botsingen = alles kapot).\r\n   ============================================================== *\/\r\n(function(){\r\n\"use strict\";\r\n\r\n\/* ------------------------------------------------------------\r\n   CONFIG, per vestiging aanpassen. Alleen dit blok wijzigen.\r\n   ------------------------------------------------------------ *\/\r\nvar STORE = {\r\n  name:  \"Room108 Hilversum\",            \/* vestigingsnaam *\/\r\n  city:  \"Hilversum\",                    \/* stad *\/\r\n  phone: \"035 - 7200805\",                  \/* getoond telefoonnummer *\/\r\n  phoneHref: \"+31357200805\"              \/* nummer voor de tel:-link *\/\r\n};\r\n\/* Prijzen: worden overal op de pagina ingevuld (prijskaart + FAQ) *\/\r\nvar PRICING = {\r\n  prijs:       \"\u20ac 899\",                  \/* normale prijs van het 3D-ontwerp *\/\r\n  gratisVanaf: \"\u20ac 14.999\"                \/* gratis bij aanschaf vanaf dit bedrag *\/\r\n};\r\n\/* Foto's: plak hier de WordPress-media-URL's (Media -> foto -> URL\r\n   kopi\u00ebren; zelfde domein als de pagina, anders blokkeert de server).\r\n   Laat je een veld leeg (\"\"), dan blijft de foto uit de HTML staan. *\/\r\nvar IMAGES = {\r\n  hero:   \"\",                            \/* grote foto naast de kop *\/\r\n  uitleg: \"\"                             \/* foto bij de uitleg (bijv. 3D render) *\/\r\n};\r\n\/* Link van de kruislink-knop naar de 2D-pagina van deze site *\/\r\nvar LINKS = {\r\n  ontwerp2d: \"\/2dontwerp\"                         \/* URL van jullie 2D interieurontwerp-pagina *\/\r\n};\r\n\r\n\/* ------------------------------------------------------------\r\n   CONFIG TOEPASSEN: eyebrow, telefoon, prijzen, foto's, link.\r\n   ------------------------------------------------------------ *\/\r\n(function(){\r\n  var e = document.getElementById('hero-eyebrow');\r\n  if (e) e.innerHTML = '3D interieurontwerp &bull; ' + STORE.name;\r\n})();\r\ndocument.querySelectorAll('.r108-telbtn').forEach(function(a){\r\n  a.textContent = 'Bel ' + STORE.phone;\r\n  a.href = 'tel:' + STORE.phoneHref;\r\n});\r\ndocument.querySelectorAll('.r108-prijs').forEach(function(el){ el.textContent = PRICING.prijs; });\r\ndocument.querySelectorAll('.r108-gratis-vanaf').forEach(function(el){ el.textContent = PRICING.gratisVanaf; });\r\n(function(){\r\n  var map = { hero:'img-hero', uitleg:'img-uitleg' };\r\n  for (var k in map){\r\n    var el = document.getElementById(map[k]);\r\n    if (el && IMAGES[k]) el.src = IMAGES[k];\r\n  }\r\n})();\r\n(function(){\r\n  var a = document.getElementById('cross-link');\r\n  if (a && LINKS.ontwerp2d) a.href = LINKS.ontwerp2d;\r\n})();\r\n\r\n\/* ------------------------------------------------------------\r\n   SCROLL-REVEAL: secties zachtjes laten infaden. De grote\r\n   top-marge zorgt dat ook overgeslagen secties (na een anker-\r\n   sprong) gewoon zichtbaar worden.\r\n   ------------------------------------------------------------ *\/\r\n(function(){\r\n  var els = document.querySelectorAll('.reveal');\r\n  if (!els.length) return;\r\n  var RM = window.matchMedia && matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n  if (RM || !('IntersectionObserver' in window)) { els.forEach(function(e){ e.classList.add('vis'); }); return; }\r\n  var obs = new IntersectionObserver(function(entries){\r\n    entries.forEach(function(e){ if (e.isIntersecting){ e.target.classList.add('vis'); obs.unobserve(e.target); } });\r\n  }, {threshold:0, rootMargin:'9999px 0px -8% 0px'});\r\n  els.forEach(function(e){ obs.observe(e); });\r\n})();\r\n\r\n\/* ------------------------------------------------------------\r\n   PLANNER: 2-staps wizard. Chips kiezen -> gegevens -> succes.\r\n   PROTOTYPE: er wordt nog NIETS echt verstuurd, zie 'verzending'.\r\n   ------------------------------------------------------------ *\/\r\n(function(){\r\n  var step1 = document.getElementById('plan-step1');\r\n  var step2 = document.getElementById('plan-step2');\r\n  var done  = document.getElementById('plan-succes');\r\n  if (!step1 || !step2 || !done) return;\r\n\r\n  \/* chip-gedrag: ruimtes = meerdere aan\/uit, moment = precies \u00e9\u00e9n *\/\r\n  var roomWrap   = document.getElementById('plan-rooms');\r\n  var momentWrap = document.getElementById('plan-moment');\r\n  roomWrap.querySelectorAll('.chip').forEach(function(c){\r\n    c.addEventListener('click', function(){ c.classList.toggle('on'); });\r\n  });\r\n  momentWrap.querySelectorAll('.chip').forEach(function(c){\r\n    c.addEventListener('click', function(){\r\n      momentWrap.querySelectorAll('.chip').forEach(function(x){ x.classList.remove('on'); });\r\n      c.classList.add('on');\r\n    });\r\n  });\r\n  \/* geselecteerde chip-teksten als nette lijst *\/\r\n  function selected(wrap){\r\n    return Array.prototype.map.call(wrap.querySelectorAll('.chip.on'), function(c){ return c.textContent.trim(); });\r\n  }\r\n\r\n  \/* stap 1 -> 2: valideer keuze en toon de samenvatting *\/\r\n  document.getElementById('plan-next').addEventListener('click', function(){\r\n    var rooms = selected(roomWrap), moment = selected(momentWrap);\r\n    var err = document.getElementById('plan-err1');\r\n    if (!rooms.length || !moment.length){ err.classList.add('show'); return; }\r\n    err.classList.remove('show');\r\n    document.getElementById('plan-recap').innerHTML =\r\n      'Bijna klaar! Je koos: <b>' + rooms.join(', ') + '<\/b> &middot; liefst <b>' + moment[0] + '<\/b>.';\r\n    step1.hidden = true; step2.hidden = false;\r\n  });\r\n\r\n  \/* terug naar stap 1 *\/\r\n  document.getElementById('plan-back').addEventListener('click', function(){\r\n    step2.hidden = true; step1.hidden = false;\r\n  });\r\n\r\n  \/* bevestigen: lichte validatie, dan succes-paneel *\/\r\n  document.getElementById('plan-send').addEventListener('click', function(){\r\n    var naam = document.getElementById('plan-naam').value.trim();\r\n    var tel  = document.getElementById('plan-tel').value.trim();\r\n    var mail = document.getElementById('plan-mail').value.trim();\r\n    var err  = document.getElementById('plan-err2');\r\n    var mailOk = \/.+@.+\\..+\/.test(mail);\r\n    var telOk  = tel.replace(\/\\D\/g,'').length >= 9;\r\n    if (!naam || (!mailOk && !telOk)){ err.classList.add('show'); return; }\r\n    err.classList.remove('show');\r\n\r\n    \/* --------------------------------------------------------\r\n       VERZENDING (PROTOTYPE): hier wordt nog NIETS verstuurd.\r\n       Vervang dit blok later door echte verzending, bijv.:\r\n       fetch('\/wp-json\/room108\/v1\/ontwerp', {\r\n         method:'POST', headers:{'Content-Type':'application\/json'},\r\n         body: JSON.stringify({\r\n           vestiging: STORE.name, type: '3D',\r\n           ruimtes:   selected(roomWrap),\r\n           moment:    selected(momentWrap)[0],\r\n           naam: naam, telefoon: tel, email: mail\r\n         })\r\n       });\r\n       Of: koppel aan een (verborgen) Elementor-formulier en\r\n       trigger dat, dan loopt alles via de bestaande mailflow.\r\n       -------------------------------------------------------- *\/\r\n\r\n    \/* persoonlijke succestekst met de voornaam *\/\r\n    var voornaam = naam.split(' ')[0];\r\n    document.getElementById('plan-succes-txt').textContent =\r\n      'Bedankt ' + voornaam + '! We bellen of mailen je binnen \u00e9\u00e9n werkdag om je afspraak voor een 3D-ontwerp bij ' + STORE.name + ' te bevestigen. Tot snel!';\r\n    step2.hidden = true; done.hidden = false;\r\n  });\r\n})();\r\n\r\n})();\r\n<\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>3D interieurontwerp &bull; Room108 Beleef je interieur vooraf 3D interieurontwerp, zie je droominterieur voordat het er staat Wil je zeker weten dat jouw nieuwe interieur perfect bij je past? Met een 3D interieurontwerp krijg je een realistische visualisatie van jouw woning, nog voordat de inrichting begint. Of je nu een compleet nieuw interieur wilt of&hellip;<\/p>\n","protected":false},"author":7763,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"class_list":["post-581885","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>3D Ontwerp - Room108<\/title>\n<meta name=\"description\" content=\"3D interieurontwerp &bull; Room108 Beleef je interieur vooraf 3D interieurontwerp, zie je droominterieur voordat het er staat Wil je zeker weten dat jouw\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/room108-hilversum.nl\/3dontwerp\/\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"3D Ontwerp - Room108\" \/>\n<meta property=\"og:description\" content=\"3D interieurontwerp &bull; Room108 Beleef je interieur vooraf 3D interieurontwerp, zie je droominterieur voordat het er staat Wil je zeker weten dat jouw\" \/>\n<meta property=\"og:url\" content=\"https:\/\/room108-hilversum.nl\/3dontwerp\/\" \/>\n<meta property=\"og:site_name\" content=\"Room108\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/LifestyleRoom108\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-28T10:11:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/wp-content\/uploads\/2017\/03\/Hoekbanken-van-room108-stel-hem-zelf-samen-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1500\" \/>\n\t<meta property=\"og:image:height\" content=\"847\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@Room108Sofas\" \/>\n<meta name=\"twitter:label1\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/room108-hilversum.nl\\\/3dontwerp\\\/\",\"url\":\"https:\\\/\\\/room108-hilversum.nl\\\/3dontwerp\\\/\",\"name\":\"3D Ontwerp - Room108\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/room108-rotterdam.nl\\\/#website\"},\"datePublished\":\"2026-07-17T13:34:39+00:00\",\"dateModified\":\"2026-07-28T10:11:11+00:00\",\"description\":\"3D interieurontwerp &bull; Room108 Beleef je interieur vooraf 3D interieurontwerp, zie je droominterieur voordat het er staat Wil je zeker weten dat jouw\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/room108-hilversum.nl\\\/3dontwerp\\\/#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/room108-hilversum.nl\\\/3dontwerp\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/room108-hilversum.nl\\\/3dontwerp\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vigilant-mclaren.82-165-42-164.plesk.page\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"3D Ontwerp\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/room108-rotterdam.nl\\\/#website\",\"url\":\"https:\\\/\\\/room108-rotterdam.nl\\\/\",\"name\":\"Room108 Rotterdam\",\"description\":\"Create your own lifestyle, Room108 woonwinkel in Rotterdam, interieurinspiratie in elke sfeer\",\"publisher\":{\"@id\":\"https:\\\/\\\/room108-rotterdam.nl\\\/#organization\"},\"alternateName\":\"Room\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/room108-rotterdam.nl\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-NL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/room108-rotterdam.nl\\\/#organization\",\"name\":\"Room108 Rotterdam\",\"url\":\"https:\\\/\\\/room108-rotterdam.nl\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\\\/\\\/room108-rotterdam.nl\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/vigilant-mclaren.82-165-42-164.plesk.page\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/Room108-logo-officieel-AI-or.png\",\"contentUrl\":\"https:\\\/\\\/vigilant-mclaren.82-165-42-164.plesk.page\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/Room108-logo-officieel-AI-or.png\",\"width\":1891,\"height\":478,\"caption\":\"Room108 Rotterdam\"},\"image\":{\"@id\":\"https:\\\/\\\/room108-rotterdam.nl\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/LifestyleRoom108\",\"https:\\\/\\\/x.com\\\/Room108Sofas\",\"https:\\\/\\\/nl.pinterest.com\\\/Room108Sofas\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCRN3JthrfolaJNhMfV4aQPw\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"3D Ontwerp - Room108","description":"3D interieurontwerp &bull; Room108 Beleef je interieur vooraf 3D interieurontwerp, zie je droominterieur voordat het er staat Wil je zeker weten dat jouw","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/room108-hilversum.nl\/3dontwerp\/","og_locale":"nl_NL","og_type":"article","og_title":"3D Ontwerp - Room108","og_description":"3D interieurontwerp &bull; Room108 Beleef je interieur vooraf 3D interieurontwerp, zie je droominterieur voordat het er staat Wil je zeker weten dat jouw","og_url":"https:\/\/room108-hilversum.nl\/3dontwerp\/","og_site_name":"Room108","article_publisher":"https:\/\/www.facebook.com\/LifestyleRoom108","article_modified_time":"2026-07-28T10:11:11+00:00","og_image":[{"width":1500,"height":847,"url":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/wp-content\/uploads\/2017\/03\/Hoekbanken-van-room108-stel-hem-zelf-samen-1.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@Room108Sofas","twitter_misc":{"Geschatte leestijd":"5 minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/room108-hilversum.nl\/3dontwerp\/","url":"https:\/\/room108-hilversum.nl\/3dontwerp\/","name":"3D Ontwerp - Room108","isPartOf":{"@id":"https:\/\/room108-rotterdam.nl\/#website"},"datePublished":"2026-07-17T13:34:39+00:00","dateModified":"2026-07-28T10:11:11+00:00","description":"3D interieurontwerp &bull; Room108 Beleef je interieur vooraf 3D interieurontwerp, zie je droominterieur voordat het er staat Wil je zeker weten dat jouw","breadcrumb":{"@id":"https:\/\/room108-hilversum.nl\/3dontwerp\/#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/room108-hilversum.nl\/3dontwerp\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/room108-hilversum.nl\/3dontwerp\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/"},{"@type":"ListItem","position":2,"name":"3D Ontwerp"}]},{"@type":"WebSite","@id":"https:\/\/room108-rotterdam.nl\/#website","url":"https:\/\/room108-rotterdam.nl\/","name":"Room108 Rotterdam","description":"Create your own lifestyle, Room108 woonwinkel in Rotterdam, interieurinspiratie in elke sfeer","publisher":{"@id":"https:\/\/room108-rotterdam.nl\/#organization"},"alternateName":"Room","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/room108-rotterdam.nl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-NL"},{"@type":"Organization","@id":"https:\/\/room108-rotterdam.nl\/#organization","name":"Room108 Rotterdam","url":"https:\/\/room108-rotterdam.nl\/","logo":{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/room108-rotterdam.nl\/#\/schema\/logo\/image\/","url":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/wp-content\/uploads\/2023\/02\/Room108-logo-officieel-AI-or.png","contentUrl":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/wp-content\/uploads\/2023\/02\/Room108-logo-officieel-AI-or.png","width":1891,"height":478,"caption":"Room108 Rotterdam"},"image":{"@id":"https:\/\/room108-rotterdam.nl\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/LifestyleRoom108","https:\/\/x.com\/Room108Sofas","https:\/\/nl.pinterest.com\/Room108Sofas\/","https:\/\/www.youtube.com\/channel\/UCRN3JthrfolaJNhMfV4aQPw"]}]}},"_links":{"self":[{"href":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/wp-json\/wp\/v2\/pages\/581885","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/wp-json\/wp\/v2\/users\/7763"}],"replies":[{"embeddable":true,"href":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/wp-json\/wp\/v2\/comments?post=581885"}],"version-history":[{"count":9,"href":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/wp-json\/wp\/v2\/pages\/581885\/revisions"}],"predecessor-version":[{"id":582574,"href":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/wp-json\/wp\/v2\/pages\/581885\/revisions\/582574"}],"wp:attachment":[{"href":"https:\/\/vigilant-mclaren.82-165-42-164.plesk.page\/nl\/wp-json\/wp\/v2\/media?parent=581885"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}