
/* <inline asset> */
@charset "UTF-8"; 

/* /vv_offerte_configurator/static/src/scss/configurator.scss */
 .s_vv_offerte{padding: 1rem 0 3rem;}.vv-off-h1{font-family: var(--vv-font-serif, "Fraunces", Georgia, serif); font-size: clamp(1.6rem, 4vw, 2.4rem); color: var(--vv-color-ink, #1a1a1a); margin: 0 0 .3rem;}.vv-off-lead{color: var(--vv-color-ink-muted, #6f6253); margin: 0; font-size: 1rem; text-align: left;}@media (min-width: 992px){.vv-off-lead{white-space: nowrap;}}.vv-off-switch{margin: .5rem 0 0; font-size: .9rem;}.vv-off-switch a{color: var(--vv-color-oak-deep, #7a4a1f); text-decoration: none; border-bottom: 1px dashed rgba(var(--vv-color-oak-deep, #7a4a1f), 0.5); padding-bottom: 1px;}.vv-off-switch a:hover{border-bottom-style: solid;}.o_vv_offerte_root{font-family: var(--vv-font-sans, "Inter", system-ui, sans-serif); color: var(--vv-color-ink, #1a1a1a);}.vv-off-grid{display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: 2rem; align-items: start;}@media (max-width: 1200px){.vv-off-grid{grid-template-columns: minmax(0, 1fr) 380px; gap: 1.5rem;}}@media (max-width: 900px){.vv-off-grid{grid-template-columns: minmax(0, 1fr);}}.vv-off-progress{margin-bottom: 1.2rem;}.vv-off-progress-label{font-size: .82rem; color: var(--vv-color-ink-muted, #6f6253); margin-bottom: .35rem; font-weight: 600;}.vv-off-progress-track{height: 6px; background: var(--vv-color-border, #e8e0d0); border-radius: 99px; overflow: hidden;}.vv-off-progress-fill{height: 100%; background: var(--vv-accent, var(--vv-color-oak, #a06020)); border-radius: 99px; transition: width 0.35s cubic-bezier(0.4, 0, 0.2, 1);}.vv-off-step-title{font-family: var(--vv-font-serif, "Fraunces", Georgia, serif); font-size: 1.5rem; margin: 0 0 .3rem; color: var(--vv-color-ink, #1a1a1a); display: flex; align-items: center; gap: .5rem; flex-wrap: wrap;}.vv-off-step-help, .vv-off-opthelp{color: var(--vv-color-ink-muted, #6f6253); font-size: .9rem; margin-bottom: 1rem;}.vv-off-uitleg{position: relative; display: inline-flex; flex: 0 0 auto; margin-left: auto;}.vv-off-uitleg-knop{width: 22px; height: 22px; flex: 0 0 auto; padding: 0; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 50%; background: #fff; color: var(--vv-color-ink-muted, #6f6253); font-size: .7rem; cursor: pointer; transition: all .16s;}.vv-off-uitleg-knop:hover, .vv-off-uitleg-knop[aria-expanded='true']{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); color: var(--vv-color-oak-deep, #7a4a1f); background: var(--vv-color-cream-soft, #faf6ee);}.vv-off-uitleg-paneel{position: absolute; top: calc(100% + .4rem); left: 0; z-index: 20; width: min(30rem, 78vw); padding: .8rem .9rem; background: #fff; border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 12px; box-shadow: 0 10px 30px rgba(61, 34, 24, 0.16); font-size: .88rem; font-weight: 400; line-height: 1.5; color: var(--vv-color-ink, #1a1a1a); text-align: left;}.vv-off-uitleg-paneel p{margin: 0 0 .5rem;}.vv-off-uitleg-paneel p:last-child{margin-bottom: 0;}.vv-off-uitleg-paneel a{color: var(--vv-color-oak-deep, #7a4a1f);}@media (max-width: 560px){.vv-off-uitleg-paneel{left: auto; right: 0;}}.vv-off-uitleg-sluit{position: absolute; top: .3rem; right: .35rem; width: 26px; height: 26px; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--vv-color-ink-muted, #6f6253); font-size: 1.25rem; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center;}.vv-off-uitleg-sluit:hover, .vv-off-uitleg-sluit:focus-visible{background: var(--vv-color-cream-soft, #faf6ee); color: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-uitleg-tekst{padding-right: 1.6rem;}.vv-off-step-body{margin-top: 1rem;}.vv-off-optgroup{margin-bottom: 1.6rem;}.vv-off-optlabel{font-weight: 700; font-size: 1rem; margin-bottom: .6rem; display: flex; align-items: center; gap: .5rem;}.vv-off-cards{display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 1rem;}.vv-off-cards.is-swatch{grid-template-columns: repeat(auto-fill, minmax(132px, 1fr)); gap: .7rem;}.vv-off-card, .vv-off-check{display: flex; flex-direction: column; align-items: stretch; gap: .15rem; padding: 0; border: 2px solid var(--vv-color-border, #e8e0d0); border-radius: 16px; background: #fff; cursor: pointer; text-align: left; position: relative; overflow: hidden; transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;}.vv-off-card:hover, .vv-off-check:hover{border-color: rgba(var(--vv-color-oak, #a06020), 0.45); transform: translateY(-2px); box-shadow: 0 6px 18px rgba(26, 26, 26, 0.08);}.vv-off-card.is-on, .vv-off-check.is-on{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); box-shadow: 0 0 0 3px rgba(160, 96, 32, 0.14);}.vv-off-card.is-on::after, .vv-off-check.is-on::after{content: '✓'; position: absolute; top: .6rem; right: .6rem; z-index: 2; width: 26px; height: 26px; border-radius: 50%; background: var(--vv-accent, var(--vv-color-oak, #a06020)); color: #fff; font-weight: 800; font-size: .85rem; display: grid; place-items: center; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);}.vv-off-check{padding: .8rem .9rem;}.vv-off-card-img, .vv-off-swatch-img{width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; display: block; background: var(--vv-color-cream, #f7f0e5); margin: 0;}.vv-off-card-ph{width: 100%; aspect-ratio: 4 / 3; background: repeating-linear-gradient(90deg, rgba(160, 96, 32, 0.07) 0 2px, rgba(160, 96, 32, 0) 2px 34px), repeating-linear-gradient(0deg, rgba(160, 96, 32, 0.05) 0 1px, rgba(160, 96, 32, 0) 1px 7px), linear-gradient(150deg, #f6ecdd 0%, #ecdcc4 55%, #f3e6d3 100%);}.is-swatch .vv-off-card-img, .is-swatch .vv-off-card-ph{aspect-ratio: 1 / 1;}.is-swatch .vv-off-card-body{padding: .5rem .6rem .6rem;}.is-swatch .vv-off-card-name{font-size: .86rem;}.vv-off-card-body{padding: .7rem .85rem .85rem; display: flex; flex-direction: column; gap: .1rem;}.vv-off-card-name, .vv-off-check-name{font-weight: 700; font-size: 1rem; color: var(--vv-color-ink, #1a1a1a);}.vv-off-card-desc{font-size: .82rem; color: var(--vv-color-ink-muted, #6f6253); line-height: 1.35;}.vv-off-delta{font-size: .88rem; color: var(--vv-color-oak-deep, #7a4a1f); font-weight: 700; margin-top: .35rem;}.vv-off-checks{display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: .7rem;}.vv-off-catalog-keuze{display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; padding: .7rem .9rem; background: var(--vv-color-cream-soft, #faf6ee); border: 2px solid var(--vv-accent, var(--vv-color-oak, #a06020)); border-radius: 14px;}.vv-off-catalog-keuze-img{width: 56px; height: 42px; object-fit: cover; border-radius: 8px; flex: 0 0 auto;}.vv-off-catalog-keuze-txt{font-size: .92rem; line-height: 1.35;}.vv-off-catalog-keuze-prijs{color: var(--vv-color-oak-deep, #7a4a1f); font-weight: 700; white-space: nowrap;}.vv-off-catalog-wis{margin-left: auto; flex: 0 0 auto; background: none; border: 0; padding: .3rem .5rem; color: var(--vv-color-ink-muted, #6f6253); font-size: .82rem; font-weight: 600; text-decoration: underline; cursor: pointer; border-radius: 8px;}.vv-off-catalog-wis:hover{color: var(--vv-color-oak-deep, #7a4a1f); background: rgba(0, 0, 0, 0.04);}.vv-off-catalog-tools{display: flex; align-items: center; gap: .8rem; margin-bottom: .7rem; flex-wrap: wrap;}.vv-off-catalog-search{flex: 1 1 260px; max-width: 420px;}.vv-off-catalog-verder{flex: 0 0 auto; padding: .7rem 1.4rem; margin-left: auto;}.vv-off-herkomst{display: flex; align-items: center; gap: .5rem; margin: 0 0 1rem; padding: .55rem .8rem; border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 10px; background: var(--vv-color-cream-soft, #faf6ee); color: var(--vv-color-ink, #1a1a1a); text-decoration: none; font-size: .88rem; line-height: 1.3;}.vv-off-herkomst:hover{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); color: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-herkomst .fa{color: var(--vv-color-ink-muted, #6f6253); flex: 0 0 auto;}.vv-off-herkomst-txt{flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}.vv-off-herkomst-pre{color: var(--vv-color-ink-muted, #6f6253);}.vv-off-herkomst-actie{flex: 0 0 auto; font-weight: 600; color: var(--vv-color-oak-deep, #7a4a1f);}@media (max-width: 560px){.vv-off-herkomst-actie{display: none;}}.vv-off-gekozen{display: flex; align-items: center; gap: .7rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--vv-color-border, #e8e0d0); text-align: left;}.vv-off-gekozen + .vv-off-gekozen{margin-top: .5rem; padding-top: .5rem;}.vv-off-gekozen-img{width: 52px; height: 40px; object-fit: cover; border-radius: 8px; flex: 0 0 auto;}.vv-off-gekozen-txt{display: flex; flex-direction: column; min-width: 0; flex: 1 1 auto;}.vv-off-gekozen-label{font-size: .72rem; text-transform: uppercase; letter-spacing: .4px; color: var(--vv-color-ink-muted, #6f6253); font-weight: 700;}.vv-off-gekozen-naam{font-weight: 700; font-size: .9rem; color: var(--vv-color-ink, #1a1a1a); line-height: 1.25; overflow: hidden; text-overflow: ellipsis;}.vv-off-gekozen-prijs{font-size: .8rem; color: var(--vv-color-oak-deep, #7a4a1f); font-weight: 600;}.vv-off-gekozen-levering{font-size: .76rem; color: var(--vv-color-ink-muted, #6f6253); line-height: 1.35; margin-top: .1rem;}.vv-off-gekozen-geleverd{font-size: .73rem; color: var(--vv-color-ink-muted, #6f6253); opacity: .85; line-height: 1.3;}@keyframes vv-off-oplicht{0%{background: rgba(160, 96, 32, 0.18);}100%{background: transparent;}}.vv-off-gekozen.is-nieuw{animation: vv-off-oplicht 1.4s ease-out; border-radius: 10px;}@media (prefers-reduced-motion: reduce){.vv-off-gekozen.is-nieuw{animation: none; background: var(--vv-color-cream-soft, #faf6ee);}}.vv-off-gekozen-bedrag{font-size: .85rem; font-weight: 700; color: var(--vv-color-ink, #1a1a1a); white-space: nowrap; margin-left: auto; align-self: flex-start; padding-left: .4rem;}.vv-off-gekozen-bolletje{width: 52px; height: 40px; flex: 0 0 auto; border-radius: 8px; background: var(--vv-color-cream-soft, #faf6ee); border: 1px solid var(--vv-color-border, #e8e0d0); position: relative;}.vv-off-gekozen-bolletje::after{content: ""; position: absolute; inset: 0; margin: auto; width: 10px; height: 10px; border-radius: 50%; background: var(--vv-color-ink-muted, #6f6253);}.vv-off-gekozen-bolletje[data-soort="material"]::after{background: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-gekozen-bolletje[data-soort="labor"]::after{background: var(--vv-accent, var(--vv-color-oak, #a06020));}.vv-off-keuzelijst-voet{margin-top: .5rem; font-size: .72rem; color: var(--vv-color-ink-muted, #6f6253); text-align: right;}.vv-off-afgeleid{grid-column: 1 / -1; margin-bottom: .2rem; padding: .6rem .9rem; border-radius: 10px; background: var(--vv-color-cream, #f7f0e5); color: var(--vv-color-ink-muted, #6f6253); font-size: .86rem; line-height: 1.4;}.vv-off-chips{display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: 1rem;}.vv-off-chip{display: inline-flex; align-items: center; gap: .35rem; padding: .35rem .8rem; border: 2px solid var(--vv-color-border, #e8e0d0); border-radius: 99px; background: #fff; cursor: pointer; font-size: .86rem; font-weight: 600; color: var(--vv-color-ink, #1a1a1a);}.vv-off-chip:hover{border-color: rgba(var(--vv-color-oak, #a06020), 0.5);}.vv-off-chip.is-on{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); background: var(--vv-color-cream-soft, #faf6ee); color: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-chip-n{font-size: .76rem; color: var(--vv-color-ink-muted, #6f6253); font-weight: 500;}.is-on .vv-off-chip-n{color: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-card-pack{font-size: .76rem; color: var(--vv-color-ink-muted, #6f6253); margin-top: .1rem;}.vv-off-catalog-foot{display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1rem; flex-wrap: wrap;}.vv-off-catalog-telling{font-size: .85rem; color: var(--vv-color-ink-muted, #6f6253);}.vv-off-catalog-laden{padding: 2rem 0; color: var(--vv-color-ink-muted, #6f6253); grid-column: 1 / -1; text-align: center;}.vv-off-catalog-fout{grid-column: 1 / -1; padding: 1rem; border-radius: 12px; background: rgba(180, 120, 30, 0.12); color: #9a5b12; font-size: .9rem;}.vv-off-toggle{display: inline-flex; align-items: center; gap: .6rem; padding: .7rem 1rem; border: 2px solid var(--vv-color-border, #e8e0d0); border-radius: 99px; background: #fff; cursor: pointer; font-weight: 600;}.vv-off-toggle .vv-off-toggle-dot{width: 18px; height: 18px; border-radius: 50%; border: 2px solid var(--vv-color-ink-muted, #6f6253); transition: all .16s;}.vv-off-toggle.is-on{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); background: var(--vv-color-cream-soft, #faf6ee);}.vv-off-toggle.is-on .vv-off-toggle-dot{background: var(--vv-accent, var(--vv-color-oak, #a06020)); border-color: var(--vv-accent, var(--vv-color-oak, #a06020));}.vv-off-stepper{display: inline-flex; align-items: center; gap: .5rem;}.vv-off-step-btn{width: 48px; height: 48px; border-radius: 12px; border: 2px solid var(--vv-color-border, #e8e0d0); background: #fff; font-size: 1.5rem; line-height: 1; cursor: pointer; color: var(--vv-color-oak-deep, #7a4a1f); font-weight: 700;}.vv-off-step-btn:hover{border-color: var(--vv-accent, var(--vv-color-oak, #a06020));}.vv-off-step-input, .vv-off-m2-input{width: 96px; height: 48px; text-align: center; font-size: 1.3rem; font-weight: 700; border: 2px solid var(--vv-color-border, #e8e0d0); border-radius: 12px;}.vv-off-stepper-unit{color: var(--vv-color-ink-muted, #6f6253); margin-top: .4rem;}.vv-off-segs{display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; margin-bottom: 1.2rem; max-width: 520px;}@media (max-width: 480px){.vv-off-segs{grid-template-columns: 1fr;}}.vv-off-seg{display: flex; flex-direction: column; gap: .15rem; align-items: flex-start; padding: .75rem .95rem; border: 2px solid var(--vv-color-border, #e8e0d0); border-radius: 14px; background: #fff; cursor: pointer; text-align: left; transition: all .16s ease;}.vv-off-seg:hover{border-color: rgba(var(--vv-color-oak, #a06020), 0.45);}.vv-off-seg.is-on{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); background: var(--vv-color-cream-soft, #faf6ee); box-shadow: 0 0 0 3px rgba(160, 96, 32, 0.12);}.vv-off-seg-label{font-weight: 700; font-size: .96rem; color: var(--vv-color-ink, #1a1a1a);}.vv-off-seg-hint{font-size: .78rem; color: var(--vv-color-ink-muted, #6f6253);}.vv-off-m2-row{display: flex; align-items: stretch; gap: .6rem; max-width: 15rem;}.vv-off-m2-input{flex: 1 1 auto; min-width: 0; width: auto; font-size: 1.35rem !important; font-weight: 700; padding: .5rem .8rem !important; text-align: right;}.vv-off-m2-unit{flex: 0 0 auto; display: flex; align-items: center; padding: 0 1.1rem; font-size: 1.25rem; color: var(--vv-color-oak-deep, #7a4a1f); font-weight: 700; background: var(--vv-color-cream, #f7f0e5); border: 2px solid var(--vv-color-border, #e8e0d0); border-radius: 10px;}.vv-off-measure-note{margin-top: .8rem; font-size: .86rem; color: var(--vv-color-ink-muted, #6f6253); max-width: 520px; line-height: 1.45;}.vv-off-rooms{display: flex; flex-direction: column; gap: .7rem; max-width: 520px;}.vv-off-room-wrap{border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 12px; padding: .65rem .8rem; background: #fff;}.vv-off-room-num{font-size: .78rem; font-weight: 700; color: var(--vv-color-oak-deep, #7a4a1f); margin-bottom: .4rem;}.vv-off-room{display: flex; align-items: center; gap: .5rem;}.vv-off-room .vv-off-inp{flex: 1 1 0; min-width: 0;}.vv-off-room-m2{flex: 0 0 auto; font-weight: 700; color: var(--vv-color-ink, #1a1a1a); white-space: nowrap; min-width: 68px; text-align: right; font-size: .92rem;}.vv-off-x{flex: 0 0 auto; color: var(--vv-color-ink-muted, #6f6253);}.vv-off-room-del{flex: 0 0 auto; border: none; background: none; color: var(--vv-color-ink-muted, #6f6253); font-size: 1.3rem; line-height: 1; cursor: pointer; padding: 0 .1rem;}.vv-off-room-del:hover{color: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-add-room{margin-top: .2rem; border: 2px dashed var(--vv-color-border, #e8e0d0); background: none; color: var(--vv-color-oak-deep, #7a4a1f); padding: .6rem 1rem; border-radius: 10px; cursor: pointer; font-weight: 600; max-width: 520px; width: 100%; text-align: center;}.vv-off-add-room:hover{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); background: var(--vv-color-cream-soft, #faf6ee);}@media (max-width: 560px){.vv-off-room{flex-wrap: wrap;}.vv-off-room .vv-off-inp{flex: 1 1 38%;}.vv-off-room-m2{order: 4; flex: 1 1 100%; text-align: left; padding-top: .15rem;}}.vv-off-m2{margin-top: .9rem; display: flex; align-items: baseline; gap: .6rem; padding: .7rem 1rem; background: var(--vv-color-cream, #f7f0e5); border-radius: 12px; max-width: 520px;}.vv-off-m2-num{font-size: 1.5rem; font-weight: 800; color: var(--vv-color-ink, #1a1a1a); font-family: var(--vv-font-serif, "Fraunces", Georgia, serif);}.vv-off-m2-sub{font-size: .85rem; color: var(--vv-color-ink-muted, #6f6253);}.vv-off-survey-tools{margin: .4rem 0 .3rem;}.vv-off-survey-toolrow{display: flex; gap: .5rem; flex-wrap: wrap; align-items: center;}.vv-off-survey-toolrow .vv-off-inp{flex: 1; min-width: 120px;}.vv-off-survey-fill{border: 2px solid var(--vv-accent, var(--vv-color-oak, #a06020)); background: var(--vv-color-cream, #f7f0e5); color: var(--vv-color-oak-deep, #7a4a1f); padding: .7rem 1rem; border-radius: 10px; cursor: pointer; font-weight: 700; white-space: nowrap;}.vv-off-survey-fill:hover{background: var(--vv-accent, var(--vv-color-oak, #a06020)); color: #fff;}.vv-off-survey-hint{font-size: .82rem; color: var(--vv-color-ink-muted, #6f6253); margin: .3rem 0 .7rem;}.vv-off-survey{display: flex; flex-direction: column; gap: .35rem;}.vv-off-survey-head, .vv-off-survey-row{display: grid; grid-template-columns: 26px 78px 1fr 1fr 1.4fr 30px; gap: .4rem; align-items: center;}.vv-off-survey-head{font-size: .72rem; color: var(--vv-color-ink-muted, #6f6253); font-weight: 700; text-transform: uppercase; letter-spacing: .3px; padding: 0 .1rem;}.vv-off-survey-head span:first-child{text-align: center;}.vv-off-survey-idx{text-align: center; font-weight: 700; color: var(--vv-color-ink-muted, #6f6253); font-size: .85rem;}.vv-off-inp-sm{padding: .5rem .5rem !important; font-size: 15px !important;}.vv-off-inp-xs{padding: .5rem .35rem !important; font-size: 14px !important;}.vv-off-survey-bw{display: flex; gap: .3rem;}.vv-off-survey-bw .vv-off-inp{flex: 1; min-width: 0;}.vv-off-survey-totals{margin-top: .9rem;}.vv-off-survey-sum{display: flex; flex-wrap: wrap; gap: .4rem .9rem; padding: .7rem .9rem; background: var(--vv-color-cream, #f7f0e5); border-radius: 10px; font-size: .9rem; color: var(--vv-color-ink-muted, #6f6253);}.vv-off-survey-sum b{color: var(--vv-color-ink, #1a1a1a);}.vv-off-blondel{margin-top: .5rem; font-size: .84rem; padding: .5rem .8rem; border-radius: 8px;}.vv-off-blondel b{font-weight: 700;}.vv-off-blondel.is-ok{background: rgba(72, 140, 72, 0.12); color: #2f6b2f;}.vv-off-blondel.is-warn{background: rgba(180, 120, 30, 0.14); color: #9a5b12;}@media (max-width: 560px){.vv-off-survey-head{display: none;}.vv-off-survey-row{grid-template-columns: 22px 1fr 1fr; grid-auto-flow: row; row-gap: .3rem;}.vv-off-survey-row .vv-off-survey-bw{grid-column: 2 / 4;}}.vv-off-inp, .vv-off-select, .vv-off-textarea{width: 100%; padding: .7rem .8rem; border: 2px solid var(--vv-color-border, #e8e0d0); border-radius: 10px; font-size: 16px; font-family: inherit; background: #fff;}.vv-off-inp:focus, .vv-off-select:focus, .vv-off-textarea:focus{outline: none; border-color: var(--vv-accent, var(--vv-color-oak, #a06020));}.vv-off-num{max-width: 140px;}.vv-off-numrow{display: flex; align-items: center; gap: .6rem; flex-wrap: wrap;}.vv-off-num-unit{color: var(--vv-color-ink-muted, #6f6253); font-size: .9rem;}.vv-off-verlies{display: flex; align-items: flex-start; gap: .6rem; margin-top: 1.1rem; padding: .7rem .8rem; background: var(--vv-color-cream-soft, #faf6ee); border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 12px; cursor: pointer;}.vv-off-verlies:hover{border-color: var(--vv-accent, var(--vv-color-oak, #a06020));}.vv-off-verlies-vink{width: 18px; height: 18px; flex: 0 0 auto; margin-top: .1rem; accent-color: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-verlies-txt{display: flex; flex-direction: column; font-size: .88rem; font-weight: 600; color: var(--vv-color-ink, #1a1a1a);}.vv-off-verlies-hint{font-size: .78rem; font-weight: 400; color: var(--vv-color-ink-muted, #6f6253); margin-top: .1rem;}.vv-off-num-schatting{flex: 1 1 16rem; min-width: 0; font-size: .8rem; line-height: 1.4; color: var(--vv-color-ink-muted, #6f6253); background: var(--vv-color-cream-soft, #faf6ee); border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 10px; padding: .45rem .7rem; align-self: center;}@media (max-width: 620px){.vv-off-num-schatting{flex: 1 0 100%;}}.vv-off-contact{display: grid; grid-template-columns: 1fr 1fr; gap: .8rem;}@media (max-width: 560px){.vv-off-contact{grid-template-columns: 1fr;}}.vv-off-field{display: flex; flex-direction: column; gap: .25rem;}.vv-off-field-lbl{font-size: .82rem; color: var(--vv-color-ink-muted, #6f6253); font-weight: 600;}.vv-off-textarea{margin-top: .8rem;}.vv-off-photo{margin-top: .8rem; display: flex; align-items: center; gap: .8rem; flex-wrap: wrap;}.vv-off-photo-btn{display: inline-flex; align-items: center; gap: .4rem; border: 2px dashed var(--vv-color-border, #e8e0d0); border-radius: 10px; padding: .6rem 1rem; cursor: pointer; color: var(--vv-color-oak-deep, #7a4a1f); font-weight: 600; font-size: .9rem;}.vv-off-photo-btn:hover{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); background: var(--vv-color-cream, #f7f0e5);}.vv-off-photo-input{position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden;}.vv-off-photo-thumb{display: flex;}.vv-off-photo-img{width: 66px; height: 66px; object-fit: cover; border-radius: 10px; border: 1px solid var(--vv-color-border, #e8e0d0);}.vv-off-consent{font-size: .78rem; color: var(--vv-color-ink-muted, #6f6253); margin-top: .8rem;}.vv-off-consent a{color: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-summary{border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 12px; overflow: hidden;}.vv-off-sumkop{padding: .55rem .9rem; background: var(--vv-color-cream-soft, #faf6ee); border-bottom: 1px solid var(--vv-color-border, #e8e0d0); font-size: .74rem; font-weight: 800; text-transform: uppercase; letter-spacing: .5px; color: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-sumsub{display: flex; justify-content: space-between; gap: 1rem; padding: .55rem .9rem; border-bottom: 1px solid var(--vv-color-border, #e8e0d0); font-weight: 700; color: var(--vv-color-ink, #1a1a1a);}.vv-off-sumline-detail{display: block; font-size: .78rem; color: var(--vv-color-ink-muted, #6f6253); font-weight: 400; line-height: 1.4; margin-top: .15rem;}.vv-off-sumline{display: flex; justify-content: space-between; gap: 1rem; padding: .6rem .9rem; border-bottom: 1px solid var(--vv-color-border, #e8e0d0);}.vv-off-sumline:last-child{border-bottom: none;}.vv-off-sumline-amt{font-weight: 700;}.vv-off-disclaimer, .vv-off-consent{font-size: .8rem; color: var(--vv-color-ink-muted, #6f6253);}.vv-off-disclaimer{margin-top: 1rem; background: var(--vv-color-cream, #f7f0e5); border-radius: 10px; padding: .8rem 1rem;}.vv-off-side{align-self: stretch; display: flex; flex-direction: column; gap: 1rem;}.vv-off-preview{background: var(--vv-color-cream-soft, #faf6ee); border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 18px; padding: 1.1rem; min-height: 320px; display: flex; flex-direction: column; justify-content: center; text-align: center;}.vv-off-ladetotaal, .vv-off-keuzetab, .vv-off-keuzescrim{display: none;}.vv-off-keuzeblok{background: #fff; border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 18px; padding: .2rem 1.1rem 1rem; text-align: left;}.vv-off-keuzeblok:empty{display: none;}.vv-off-keuzeblok .vv-off-gekozen:first-child{border-top: 0; margin-top: .8rem; padding-top: 0;}.vv-off-preview-img{max-width: 100%; border-radius: 12px;}.vv-off-preview svg{width: 100%; height: auto;}.vv-off-preview-generic{color: var(--vv-color-ink-muted, #6f6253); font-weight: 600;}.vv-off-preview:has(.vv-off-floor){padding: 0; overflow: hidden; background: none; min-height: 0; display: block;}.vv-off-stair{width: 100%; text-align: center;}.vv-off-floor{position: relative; width: 100%; line-height: 0;}.vv-off-floor svg{display: block; width: 100%; height: auto;}.vv-off-floor-tag{position: absolute; left: .7rem; bottom: .7rem; z-index: 2; display: inline-flex; align-items: center; padding: .3rem .7rem; border-radius: 999px; background: rgba(26, 26, 26, 0.62); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); color: #fff; font-size: .78rem; font-weight: 700; line-height: 1.3; letter-spacing: .01em; white-space: nowrap;}.vv-off-stair-cap{margin-top: .5rem; font-weight: 700; color: var(--vv-color-oak-deep, #7a4a1f); font-size: .9rem;}.vv-off-3d{width: 100%; min-height: 300px; cursor: grab; touch-action: none;}.vv-off-3d canvas{width: 100% !important; height: auto !important; display: block;}.vv-off-3d:active{cursor: grabbing;}.vv-off-3d-hint{margin-top: .4rem; font-size: .75rem; color: var(--vv-color-ink-muted, #6f6253); display: flex; align-items: center; justify-content: center; gap: .3rem;}.vv-off-3d-hint::before{content: "↻"; font-size: 1rem;}.vv-off-3d-loading{min-height: 200px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .7rem; color: var(--vv-color-ink-muted, #6f6253);}.vv-off-3d-loadtxt{font-size: .82rem;}.vv-off-spin{width: 34px; height: 34px; border-radius: 50%; border: 3px solid var(--vv-color-border, #e8e0d0); border-top-color: var(--vv-accent, var(--vv-color-oak, #a06020)); animation: vv-off-spin .8s linear infinite;}@keyframes vv-off-spin{to{transform: rotate(360deg);}}.vv-off-floor-tiles{display: grid; grid-template-columns: repeat(6, 1fr); gap: 3px; border-radius: 8px; overflow: hidden;}.vv-off-floor-tiles span{aspect-ratio: 1/2.2; display: block; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);}.vv-off-floor.is-herringbone .vv-off-floor-tiles span:nth-child(even){transform: rotate(0);}.vv-off-floor.is-herringbone .vv-off-floor-tiles{transform: rotate(-8deg) scale(1.06);}.vv-off-pricebar{background: linear-gradient(135deg, var(--vv-color-oak, #a06020), var(--vv-color-oak-deep, #7a4a1f)); color: #fff; border-radius: 12px; padding: .55rem .9rem; flex: 1 1 auto; min-width: 0;}.vv-off-price-hoofd{display: flex; align-items: baseline; gap: .2rem .7rem; flex-wrap: wrap;}.vv-off-price-basis{font-size: .78rem; opacity: .85; margin-top: .15rem;}.vv-off-price-label{font-size: .78rem; opacity: .85; text-transform: uppercase; letter-spacing: .5px;}.vv-off-price-big{font-size: 1.6rem; font-weight: 800; line-height: 1.1; font-family: var(--vv-font-serif, "Fraunces", Georgia, serif); transition: opacity .2s;}.vv-off-price-big.is-loading{opacity: .55;}.vv-off-price-excl{font-size: .85rem; opacity: .8;}.vv-off-price-note{font-size: .7rem; opacity: .8; margin-top: .1rem;}.vv-off-price-wait{font-size: 1.15rem; font-weight: 700; line-height: 1.3; margin: .2rem 0 .1rem; font-family: var(--vv-font-serif, "Fraunces", Georgia, serif);}.vv-off-bottombar{position: sticky; bottom: 0; z-index: 6; display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; margin-top: 1.6rem; padding: .7rem; background: rgba(255, 255, 255, 0.92); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 16px; box-shadow: 0 -6px 20px rgba(61, 34, 24, 0.07);}@media (max-width: 620px){.vv-off-bottombar{padding: .6rem; gap: .6rem;}}.vv-off-nav{display: flex; gap: .6rem; margin: 0 0 0 auto; align-items: center; flex: 0 0 auto;}@media (max-width: 560px){.vv-off-nav{flex-wrap: wrap; flex: 1 1 auto; min-width: 0; justify-content: flex-end;}}.vv-off-btn{padding: .85rem 1.6rem; border-radius: 12px; border: 2px solid transparent; font-weight: 700; font-size: 1rem; cursor: pointer; transition: all .16s; text-decoration: none; display: inline-flex; align-items: center; justify-content: center;}.vv-off-btn:disabled{opacity: .6; cursor: default;}.vv-off-btn-primary{background: var(--vv-accent, var(--vv-color-oak, #a06020)); color: #fff; margin-left: auto;}.vv-off-btn-primary:hover{background: var(--vv-color-oak-deep, #7a4a1f);}.vv-off-btn-ghost{background: #fff; border-color: var(--vv-color-border, #e8e0d0); color: var(--vv-color-ink, #1a1a1a);}.vv-off-btn-ghost:hover{border-color: var(--vv-color-ink-muted, #6f6253);}.vv-off-btn.is-disabled{opacity: .45; cursor: not-allowed;}.vv-off-btn.is-disabled:hover{background: var(--vv-accent, var(--vv-color-oak, #a06020));}.vv-off-nav-hint{font-size: .86rem; color: var(--vv-color-ink-muted, #6f6253); align-self: center; margin-left: auto; padding-right: .8rem; text-align: right; max-width: 34ch;}@media (max-width: 560px){.vv-off-nav-hint{order: -1; margin-left: 0; padding-right: 0; text-align: left; max-width: none; flex: 1 1 100%;}}.vv-off-error{color: #b3261e; background: #fdeceb; border-radius: 8px; padding: .6rem .8rem; margin-top: .8rem; font-size: .9rem;}.vv-off-thanks{text-align: center; padding: 2rem 1rem; max-width: 520px; margin: 0 auto;}.vv-off-thanks-icon{width: 64px; height: 64px; border-radius: 50%; background: var(--vv-accent, var(--vv-color-oak, #a06020)); color: #fff; font-size: 2rem; display: flex; align-items: center; justify-content: center; margin: 0 auto 1rem;}.vv-off-thanks h2{font-family: var(--vv-font-serif, "Fraunces", serif);}.vv-off-thanks-ref{color: var(--vv-color-ink-muted, #6f6253);}.vv-off-thanks-price{font-size: 2rem; font-weight: 800; color: var(--vv-color-oak-deep, #7a4a1f); margin: .3rem 0 1rem;}.vv-off-thanks-note{color: var(--vv-color-ink-muted, #6f6253); margin-bottom: 1.4rem;}.vv-off-thanks-drawing{margin: 1rem auto 1.2rem; max-width: 480px; border: 1px solid var(--vv-color-border, #e8e0d0); border-radius: 12px; padding: .8rem; background: #fff;}.vv-off-thanks-drawing svg{max-width: 100%; height: auto;}.vv-off-thanks-actions{display: flex; flex-direction: column; gap: .6rem; max-width: 360px; margin: 0 auto 1rem;}.vv-off-thanks-actions .vv-off-btn{margin: 0; width: 100%; justify-content: center; text-align: center; font-size: 1.02rem; padding: .85rem 1rem;}.vv-off-btn-call{background: #2f6b2f; color: #fff;}.vv-off-btn-call:hover{background: #245223;}.vv-off-thanks-secondary{display: flex; flex-direction: column; gap: .5rem; margin-top: 1rem; align-items: center; padding-top: 1rem; border-top: 1px solid var(--vv-color-border, #e8e0d0);}.vv-off-thanks-link{color: var(--vv-color-oak-deep, #7a4a1f); text-decoration: none; font-weight: 600; font-size: .92rem;}.vv-off-thanks-link:hover{text-decoration: underline;}.vv-off-picker-title{font-family: var(--vv-font-serif, "Fraunces", serif); font-size: 1.6rem; text-align: center; margin: 0 0 1.4rem;}.vv-off-picker{display: grid; gap: 1.1rem; grid-template-columns: repeat(4, minmax(0, 1fr));}@media (max-width: 1100px){.vv-off-picker{grid-template-columns: repeat(3, minmax(0, 1fr));}}@media (max-width: 780px){.vv-off-picker{grid-template-columns: repeat(2, minmax(0, 1fr));}}@media (max-width: 460px){.vv-off-picker{grid-template-columns: minmax(0, 1fr);}}.vv-off-tile{display: flex; flex-direction: column; align-items: flex-start; gap: .35rem; text-align: left; border: 2px solid var(--vv-color-border, #e8e0d0); border-radius: 16px; background: #fff; padding: 0; overflow: hidden; cursor: pointer; transition: all .18s ease;}.vv-off-tile:hover{border-color: var(--vv-accent, var(--vv-color-oak, #a06020)); transform: translateY(-3px); box-shadow: 0 12px 28px rgba(122, 74, 31, 0.16);}.vv-off-tile-img{width: 100%; height: 130px; object-fit: cover;}.vv-off-tile-ph{width: 100%; height: 130px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--vv-accent, var(--vv-color-oak, #a06020)), var(--vv-color-oak-deep, #7a4a1f)); color: #fff; font-size: 2.2rem;}.vv-off-tile-name{font-weight: 700; font-size: 1.08rem; padding: .7rem .9rem 0;}.vv-off-tile-desc{color: var(--vv-color-ink-muted, #6f6253); font-size: .82rem; padding: 0 .9rem .9rem;}.vv-off-tile-desc p{margin: 0;}@media (max-width: 900px){.o_vv_offerte_root{--vv-lade: min(22rem, 88vw);}.vv-off-main{order: 1;}.vv-off-side{display: flex; flex-direction: column; gap: .8rem; position: fixed; top: 0; right: 0; bottom: 0; z-index: 1047; width: var(--vv-lade, 22rem); max-width: 88vw; margin: 0; padding: 1rem 1rem 0; background: #fff; border-left: 1px solid var(--vv-color-border, #e8e0d0); overflow-y: auto; overscroll-behavior: contain; box-shadow: -12px 0 30px rgba(61, 34, 24, 0.18); transform: translateX(100%); transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1); visibility: hidden;}.vv-off-side.is-open{transform: translateX(0); visibility: visible;}}@media (max-width: 900px) and (prefers-reduced-motion: reduce){.vv-off-side{transition: none;}}@media (max-width: 900px){.vv-off-preview{order: 1; min-height: 200px; padding: .8rem; flex: 0 0 auto;}.vv-off-keuzeblok{order: 2; flex: 1 0 auto; border: 0; border-radius: 0; padding: 0; background: transparent;}.vv-off-ladetotaal{display: block; order: 3; position: sticky; bottom: 0; z-index: 2; margin: 0 -1rem; padding: .7rem 1rem; background: linear-gradient(135deg, var(--vv-color-oak, #a06020), var(--vv-color-oak-deep, #7a4a1f)); color: #fff; box-shadow: 0 -6px 18px rgba(61, 34, 24, 0.16);}.vv-off-ladetotaal:empty{display: none;}.vv-off-ladetotaal-rij{display: flex; align-items: baseline; justify-content: space-between; gap: .6rem; font-size: .9rem;}.vv-off-ladetotaal-rij strong{font-size: 1.25rem; font-weight: 800; font-family: var(--vv-font-serif, "Fraunces", Georgia, serif);}.vv-off-ladetotaal-excl{font-size: .75rem; opacity: .85; text-align: right;}.vv-off-keuzetab{display: flex; position: fixed; top: 50%; right: 0; z-index: 1048; transform: translateY(-50%); display: flex; flex-direction: column; align-items: center; gap: .15rem; padding: .7rem .5rem; border: 0; border-radius: 12px 0 0 12px; background: var(--vv-color-oak-deep, #7a4a1f); color: #fff; cursor: pointer; box-shadow: -3px 0 12px rgba(61, 34, 24, 0.25); transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);}.vv-off-keuzetab.is-leeg{display: none;}.vv-off-keuzetab.is-open{transform: translateY(-50%) translateX(calc(-1 * var(--vv-lade, 22rem)));}.vv-off-keuzetab .fa{font-size: .95rem;}.vv-off-keuzetab-n{font-size: .72rem; font-weight: 800; line-height: 1; background: rgba(255, 255, 255, 0.22); border-radius: 99px; padding: .12rem .35rem;}.vv-off-keuzescrim{display: block; position: fixed; inset: 0; z-index: 1046; background: rgba(26, 26, 26, 0.28); opacity: 0; visibility: hidden; transition: opacity .28s ease;}.vv-off-keuzescrim.is-open{opacity: 1; visibility: visible;}.vv-off-bottombar{margin-left: -.75rem; margin-right: -.75rem; border-radius: 14px 14px 0 0; padding: .55rem .75rem;}.vv-off-bottombar .vv-off-price-big{font-size: 1.3rem;}.vv-off-bottombar .vv-off-price-note{display: none;}.vv-off-bottombar .vv-off-btn{padding: .7rem 1.1rem;}}