/* bof gijs@cyle.nl — winkelwagen-popup */
.tz-pop { position: fixed; inset: 0; z-index: 2000; background: rgba(10,10,15,.55); display: flex; align-items: center; justify-content: center; padding: 16px; opacity: 0; transition: opacity .15s; }
.tz-pop.tz-open { opacity: 1; }
.tz-pop-box { position: relative; width: 100%; max-width: 460px; background: #fff; color: #1b1b1f; border-radius: 20px; padding: 28px; box-shadow: 0 24px 60px rgba(0,0,0,.3); font-family: var(--tz-font); }
.tz-pop-x { position: absolute; top: 10px; right: 10px; width: 44px; height: 44px; border: 0; background: none; font-size: 28px; line-height: 1; color: #5c6070; }
.tz-pop-t { display: flex; align-items: center; gap: 8px; margin: 0 0 18px; font-weight: 700; font-size: 18px; color: #0b7a3e; }
.tz-pop-p { display: flex; gap: 16px; align-items: center; margin-bottom: 22px; }
.tz-pop-p img { border-radius: 12px; object-fit: cover; flex: none; }
.tz-pop-p strong { display: block; font-size: 17px; line-height: 1.3; margin-bottom: 6px; }
.tz-pop-p span { font-family: var(--tz-display); font-weight: 700; font-size: 22px; }
.tz-pop-a { display: flex; flex-wrap: wrap; gap: 10px; }
.tz-pop-a > * { flex: 1 1 160px; display: inline-flex; align-items: center; justify-content: center; height: 50px; border-radius: var(--tz-btn-radius); font-weight: 700; font-size: 16px; font-family: inherit; text-decoration: none; }
.tz-pop-on { border: 2px solid #1b1b1f; background: #fff; color: #1b1b1f; }
.tz .tz-pop-go, .tz .tz-pop-go:hover { background: var(--tz-accent); color: var(--tz-on-accent); }
.tz .tz-pop-cart { display: block; text-align: center; margin-top: 14px; font-size: 14px; color: #5c6070; text-decoration: underline; }
/* eof gijs@cyle.nl */
