.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart { position: relative; display: flex; flex-direction: column; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; min-width: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart:hover { box-shadow: none; transform: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart > img, .winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .foto-leeg { order: 0; width: 100%; height: auto; aspect-ratio: 6 / 5; object-fit: cover; border-radius: var(--duin-rk, 12px); background: var(--duin-zand, var(--nova-vlak)); margin: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .kaart-tand { display: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-specs { order: 1; margin: 16px 0 0; display: block; font-size: 14px; line-height: 20px; color: var(--duin-inkt2, color-mix(in srgb, var(--nova-inkt) 74%, #fff)); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-spec { display: inline; padding: 0; border: 0; background: none; font-size: 14px; color: var(--duin-inkt2, color-mix(in srgb, var(--nova-inkt) 74%, #fff)); font-weight: 400; height: auto; border-radius: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-spec:first-child { color: var(--nova-inkt); font-weight: 700; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-spec + .nova-spec::before { content: ", "; display: inline; width: auto; height: auto; margin: 0; background: none; -webkit-mask: none; mask: none; clip-path: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-titel { order: 2; margin: 4px 0 0; font-weight: 700; font-size: 17px; line-height: 23px; color: var(--nova-inkt); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-specs + .nova-titel { margin-top: 4px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart:not(:has(.nova-specs)) .nova-titel { margin-top: 16px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-code { display: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-voet { order: 3; margin-top: 12px; display: block; padding: 0; border: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijsvak { display: block; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs { display: flex; align-items: baseline; gap: 6px; font-weight: 800; font-size: 22px; line-height: 26px; color: var(--nova-inkt); white-space: nowrap; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs .btw-inline { font-weight: 400; font-size: 14px; line-height: 20px; color: var(--duin-inkt2, color-mix(in srgb, var(--nova-inkt) 74%, #fff)); }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs .nova-vanaf { order: -1; display: inline; margin: 0; font-weight: 400; font-size: 14px; color: var(--duin-inkt2, color-mix(in srgb, var(--nova-inkt) 74%, #fff)); }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-tweedeprijs { display: block; margin-top: 2px; font-size: 13px; line-height: 18px; color: var(--duin-inkt2, color-mix(in srgb, var(--nova-inkt) 74%, #fff)); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-hartvorm, .winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-knoppen { display: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chiprij { order: 4; margin: 10px 0 0; display: flex; min-height: 20px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chip { display: inline-flex; align-items: center; gap: 8px; height: auto; padding: 0; border: 0; background: none; font-weight: 700; font-size: 14px; line-height: 20px; color: var(--winkel-accent); }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chip svg { display: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chip::before { content: ""; width: 9px; height: 9px; border-radius: 999px; background: currentColor; flex: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs { flex-wrap: wrap; row-gap: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs .nova-vanaf { flex: 0 0 100%; display: block; line-height: 20px; }
@media (max-width: 760px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-tweedeprijs { white-space: normal; overflow: visible; text-overflow: clip; }
}
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst { display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 0; border: 1px solid var(--duin-lijn, var(--nova-lijn)); border-radius: 12px; overflow: hidden; background: #fff; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart { display: grid; grid-template-columns: 200px minmax(0, 1fr) 220px 210px 40px; gap: 0 20px; align-items: center; padding: 14px 20px; margin: 0; border: 0; border-top: 1px solid var(--duin-lijn, var(--nova-lijn)); border-radius: 0; background: #fff; box-shadow: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart:first-child { border-top: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart > img, .winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .foto-leeg, .winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .kaart-labels { display: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-specs { order: 0; grid-column: 1; grid-row: 1; margin: 0; font-weight: 800; font-size: 19px; line-height: 24px; color: var(--nova-inkt); white-space: normal; overflow: visible; text-overflow: clip; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-titel { order: 0; grid-column: 2; grid-row: 1; margin: 0; font-size: 16px; -webkit-line-clamp: 2; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-voet { order: 0; grid-column: 3; grid-row: 1; margin: 0; display: block; text-align: right; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-prijs { justify-content: flex-end; font-size: 19px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-chiprij { order: 0; grid-column: 4; grid-row: 1; margin: 0; justify-content: flex-start; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart::after { content: ""; grid-column: 5; grid-row: 1; width: 34px; height: 34px; border-radius: 50%; border: 1px solid var(--duin-lijn, var(--nova-lijn)); background: no-repeat center / 14px url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e7a3a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E"); }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-specs { white-space: normal; overflow: visible; text-overflow: clip; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-titel { display: block; -webkit-line-clamp: unset; -webkit-box-orient: unset; overflow: visible; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-inwagen { display: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-specs { font-size: 16px; line-height: 21px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-specs .nova-spec { display: inline; white-space: normal; overflow-wrap: anywhere; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-titel { display: block; -webkit-line-clamp: unset; -webkit-box-orient: unset; overflow: visible; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-titel { margin-bottom: 12px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-voet { margin-top: auto; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) :is(.shop-tegels, .site-producten-in):not(.als-lijst) .shop-kaart .nova-prijsvak:not(:has(.nova-vanaf)) { padding-top: 20px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-specs .nova-spec { white-space: normal; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) :is(.shop-tegels, .site-producten-in):not(.als-lijst) .shop-kaart .nova-prijsvak { margin-top: auto; }
@media (max-width: 760px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart { grid-template-columns: minmax(0, 1fr) 150px; grid-template-rows: auto auto auto; gap: 2px 14px; align-items: start; padding: 14px 16px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-specs { grid-column: 1; grid-row: 1; font-size: 15px; line-height: 20px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-titel { grid-column: 1; grid-row: 2; font-size: 14px; line-height: 19px; margin: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-voet { grid-column: 2; grid-row: 1 / span 2; text-align: right; height: auto; min-height: 0; max-height: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-prijs { font-size: 17px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-tweedeprijs { white-space: normal; text-wrap: balance; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-chiprij { grid-column: 1 / -1; grid-row: 3; margin-top: 6px; align-self: center; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart::after { grid-column: 2; grid-row: 3; justify-self: end; width: 30px; height: 30px; margin-top: 2px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-prijsvak { margin-top: 0; padding-top: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels.als-lijst .shop-kaart .nova-knoppen { margin-top: 0; }
}
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart > img, .winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .foto-leeg { aspect-ratio: 4 / 3; border-radius: 12px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-specs, .winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .shop-kaart-spec { order: 1; margin: 14px 0 0; min-height: 19.5px; font-size: 13px; line-height: 19.5px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-spec { font-size: 13px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .shop-kaart-spec { display: block; padding: 0; border: 0; background: none; color: var(--nova-inkt); font-weight: 700; white-space: normal; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-titel, .winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-specs + .nova-titel { margin-top: 2px; font-size: 17px; line-height: 22.95px; font-weight: 700; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart:not(:has(.nova-specs, .shop-kaart-spec)) .nova-titel { margin-top: 35.5px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-titel { margin-bottom: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-voet { margin-top: auto; padding-top: 8px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) :is(.shop-tegels, .site-producten-in):not(.als-lijst) .shop-kaart .nova-prijsvak:not(:has(.nova-vanaf)) { padding-top: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs { flex-wrap: nowrap; align-items: baseline; gap: 4px; font-size: 24px; line-height: 36px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs .nova-vanaf { flex: none; display: inline; width: auto; order: -1; margin: 0 2px 0 0; font-size: 13px; line-height: 19.5px; font-weight: 400; color: var(--duin-inkt2, color-mix(in srgb, var(--nova-inkt) 74%, #fff)); }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs .btw-inline { font-size: 13px; line-height: 19.5px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-tweedeprijs { margin-top: 0; font-size: 13px; line-height: 19.5px; white-space: normal; overflow: visible; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chiprij { margin-top: 10px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chip { font-size: 15px; line-height: 22.5px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chip::before { width: 8px; height: 8px; }
@media (max-width: 639px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs { font-size: 20px; line-height: 28px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart:not(:has(.nova-specs, .shop-kaart-spec)) .nova-titel { margin-top: 33.5px; }
}
@media (max-width: 760px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels:not(.als-lijst) .shop-kaart .duin-waar { display: none; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels:not(.als-lijst) .shop-kaart .nova-chip { font-size: 13px; font-weight: 700; white-space: normal; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels:not(.als-lijst) .shop-kaart .nova-chiprij { margin-top: 4px; padding-right: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels:not(.als-lijst) .shop-kaart .nova-specs { font-weight: 400; color: #5e655f; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels:not(.als-lijst) .shop-kaart .nova-titel { font-size: 15px !important; line-height: 19.5px; font-weight: 700; margin: 2px 0 0; min-height: 40px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels:not(.als-lijst) .shop-kaart .nova-tweedeprijs { display: none; }
}
@media (max-width: 760px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels:not(.als-lijst) .shop-kaart .shop-kaart-spec { margin-top: 8px; font-size: 13px; line-height: 19.5px; font-weight: 400; color: #5e655f; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-tegels:not(.als-lijst) .shop-kaart .nova-voet { min-height: 0; padding-top: 6px; }
}
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .duin-chiptekst { min-width: 0; white-space: normal; }
@media (max-width: 760px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .duin-waar { display: none; }
}
@media (max-width: 1439px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs { flex-wrap: wrap; row-gap: 0; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs .nova-vanaf { flex: 0 0 100%; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-prijs .btw-inline { white-space: nowrap; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) :is(.shop-tegels, .site-producten-in):not(.als-lijst) .shop-kaart .nova-prijsvak:not(:has(.nova-vanaf)) { padding-top: 19.5px; }
}
@media (max-width: 639px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .kaart-label { line-height: 18px; }
}
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chip { align-items: flex-start; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .nova-chip::before { margin-top: 7.25px; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .kaart-labels { max-width: 100%; }
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .kaart-label { max-width: 100%; white-space: normal; -webkit-hyphens: auto; hyphens: auto; overflow-wrap: break-word; }
@media (max-width: 420px) {
.winkel.terra.kaart-open:is(.kaart-open, #vorm) .shop-kaart .kaart-label { padding-left: 8px; padding-right: 8px; }
}