/* Main Phase cadeaubonnen: gedeelde kaart en openbare module. */
.mp-gift-card{position:relative;isolation:isolate;display:flex;flex-direction:column;min-width:0;width:100%;border:1px solid #ffffff26;border-radius:22px;overflow:hidden;background:var(--gift-bg,#301947);color:var(--gift-text,#fff);box-shadow:0 16px 36px #21132a1a;text-align:left;container-type:inline-size}
.mp-gift-card::after{content:"";position:absolute;right:-70px;top:-90px;width:290px;height:290px;border:45px solid var(--gift-accent,#96FF42);border-radius:50%;opacity:.09;z-index:-1;pointer-events:none}
.mp-gift-card [hidden]{display:none!important}.mp-gift-card *{box-sizing:border-box}
.mp-gift-card-image{display:block;width:100%;height:180px;object-fit:cover;margin:0;max-width:100%;border-radius:0}
.mp-gift-card-content{padding:28px;display:flex;flex-direction:column;min-height:270px;gap:20px;min-width:0}
.mp-gift-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.mp-gift-card-brand{font-family:system-ui,sans-serif;font-size:23px;font-weight:900;letter-spacing:-1.1px;color:var(--gift-text,#fff)}
.mp-gift-card-brand>span{color:var(--gift-accent,#96FF42)}.mp-gift-card-kind{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:750;opacity:.85}
.mp-gift-card-center{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:18px;min-width:0;margin:auto 0}
.mp-gift-card-center>div{flex:1 1 190px;min-width:0}.mp-gift-card .mp-gift-card-title{font-family:inherit;font-size:clamp(23px,6.3cqw,38px);line-height:1.14;letter-spacing:-.035em;font-weight:800;margin:0;color:var(--gift-text,#fff);overflow-wrap:anywhere}
.mp-gift-card .mp-gift-card-subtitle{font-size:13px;line-height:1.55;color:var(--gift-text,#fff);opacity:.85;margin:10px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}
.mp-gift-card-amount{font-size:clamp(26px,7cqw,42px);letter-spacing:-.04em;line-height:1;white-space:nowrap;color:var(--gift-accent,#96FF42)}
.mp-gift-card-personal{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.mp-gift-card-personal:has(>[hidden]:first-child):not(:has(>p:not([hidden]))){display:none}
.mp-gift-card-personal p{margin:3px 0;color:inherit}.mp-gift-card-to span,.mp-gift-card-from span{opacity:.75}.mp-gift-card-message{white-space:pre-wrap;margin-top:10px!important}
.mp-gift-card .mp-gift-card-footer{border-top:1px solid #ffffff2e;padding-top:14px;margin:0;font-size:10px;line-height:1.5;letter-spacing:.04em;color:var(--gift-text,#fff);opacity:.8;overflow-wrap:anywhere}
.mp-gifts{--gift-primary:#965FD4;--gift-hover:#7544ad;--gift-surface:var(--surface,#fff);--gift-page:var(--bg,#f7f4fb);--gift-ink:var(--text,#282238);--gift-muted:var(--muted,#70687d);--gift-border:var(--border,#e7dfef);min-width:0;color:var(--gift-ink)}
html[data-theme=dark] .mp-gifts{--gift-surface:var(--surface,#241d30);--gift-page:var(--bg,#15121d);--gift-ink:var(--text,#f8f4ff);--gift-muted:var(--muted,#bdb0cc);--gift-border:var(--border,#41374e)}
.mp-gifts *{box-sizing:border-box}.mp-gifts [hidden]{display:none!important}.mp-gifts a{color:var(--gift-primary);text-decoration:none}
.mp-gifts .mp-gift-button,.mp-gift-button{display:inline-flex;justify-content:center;align-items:center;gap:9px;padding:13px 19px;min-height:46px;border:1px solid transparent;border-radius:11px;background:#965FD4;color:#fff;font:700 14px/1.4 system-ui,sans-serif;text-decoration:none;cursor:pointer;transition:background .15s;max-width:100%;white-space:normal;text-align:center}
.mp-gift-button:hover,.mp-gift-button:focus-visible{background:#7544ad;color:#fff}.mp-gift-button:disabled{opacity:.55;cursor:not-allowed}.mp-gifts :is(a,button,input,textarea,select):focus-visible{outline:3px solid #96FF42;outline-offset:3px}
.mp-gift-button-secondary{background:transparent!important;color:var(--gift-primary,#965FD4)!important;border-color:var(--gift-border,#d8c8e8)!important}
.mp-gift-eyebrow{font-size:11px;letter-spacing:.18em;font-weight:800;color:var(--gift-primary);margin:0 0 15px}
.mp-gift-heading{padding:5px 0 30px;max-width:750px}.mp-gift-heading h1{font-size:clamp(32px,4.8vw,56px);font-weight:850;letter-spacing:-.045em;line-height:1.08;margin:0 0 18px;overflow-wrap:anywhere}
.mp-gift-heading>p:not(.mp-gift-eyebrow){max-width:650px;font-size:16px;color:var(--gift-muted);margin:0 0 14px;line-height:1.7}.mp-gift-service-note{display:inline-flex;align-items:center;gap:8px;color:var(--gift-muted);font-size:13px;margin:3px 0 0}
.mp-gift-service-note>span:first-child{color:var(--gift-primary);font-weight:900}.mp-gift-steps{display:flex;flex-wrap:wrap;gap:16px 30px;margin:8px 0 30px;font-size:12px;color:var(--gift-muted)}
.mp-gift-steps b{display:inline-grid;place-items:center;width:24px;height:24px;background:var(--gift-surface);border:1px solid var(--gift-border);border-radius:50%;color:var(--gift-primary);margin-right:6px}
.mp-gift-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.mp-gift-design{min-width:0;background:var(--gift-surface);border:1px solid var(--gift-border);border-radius:24px;padding:12px}
.mp-gift-design .mp-gift-card-content{min-height:265px}.mp-gift-design .mp-gift-card-image{height:160px}.mp-gift-design-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:20px 10px 10px;font-size:14px}
.mp-gift-design-footer strong{display:block;font-size:18px;color:var(--gift-ink)}.mp-gift-design-footer small{color:var(--gift-muted)}
.mp-gift-buy-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:35px;align-items:start}.mp-gift-preview-panel{position:sticky;top:22px;min-width:0}.mp-gift-preview-caption{font-size:12px;text-align:center;color:var(--gift-muted);margin:14px 10px 0;line-height:1.5}
.mp-gift-form{background:var(--gift-surface);border:1px solid var(--gift-border);border-radius:22px;padding:28px;min-width:0}.mp-gift-form h2{font-size:20px;margin:0 0 17px;letter-spacing:-.02em}.mp-gift-form fieldset{padding:0;border:0;margin:0 0 25px;min-width:0}.mp-gift-form legend{font-size:16px;font-weight:750;margin:0 0 12px;float:none}
.mp-gift-form label{display:block;margin:0 0 6px;font-size:13px;font-weight:650}.mp-gift-form label small{font-weight:400;color:var(--gift-muted)}
.mp-gift-form :is(input[type=text],input[type=number],textarea,select){display:block;box-sizing:border-box;width:100%;min-width:0;border:1px solid var(--gift-border);background:var(--gift-page);color:var(--gift-ink);border-radius:10px;padding:11px 12px;font:inherit;font-size:14px;line-height:1.5;margin:0 0 16px;resize:vertical}
.mp-gift-amounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.mp-gift-form .mp-gift-amount-option{position:relative;margin:0;min-width:0;cursor:pointer}.mp-gift-amount-option input{position:absolute;opacity:0;width:1px;height:1px}.mp-gift-amount-option span{display:flex;align-items:center;justify-content:center;min-height:45px;border:1px solid var(--gift-border);border-radius:10px;background:var(--gift-page);font-size:14px;font-weight:750;padding:9px 5px;overflow-wrap:anywhere;transition:background .15s,color .15s}
.mp-gift-amount-option input:checked+span{background:#965FD4;color:white;border-color:#965FD4}.mp-gift-amount-option input:focus-visible+span{outline:3px solid #96FF42;outline-offset:3px}
.mp-gift-personal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mp-gift-form-bottom{display:grid;grid-template-columns:90px minmax(0,1fr);gap:15px;align-items:end}.mp-gift-form-bottom input{margin-bottom:0!important;height:46px}.mp-gift-form-bottom .mp-gift-button{width:100%;min-height:46px}.mp-gift-delivery{font-size:12px;line-height:1.65;color:var(--gift-muted);margin:18px 0 0;padding-top:15px;border-top:1px solid var(--gift-border)}
.mp-gift-back{display:inline-block;font-size:13px;margin:0 0 25px;font-weight:650}.mp-gift-notice{border:1px solid var(--gift-border);border-radius:14px;padding:22px;background:var(--gift-surface);color:var(--gift-ink);margin:18px 0}.mp-gift-notice[role=alert]{border-color:#ce5c7c;color:var(--gift-ink)}
.mp-gift-home{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;align-items:center;margin:35px 0;padding:28px 32px;border:1px solid var(--gift-border);border-radius:20px;background:var(--gift-surface)}.mp-gift-home h2{font-size:24px;margin:0 0 7px;letter-spacing:-.03em}.mp-gift-home p{font-size:14px;margin:0;color:var(--gift-muted)}
.mp-cart-gift-icon{display:grid;place-items:center;flex:0 0 78px;height:78px;border-radius:14px;background:#965FD422;color:#965FD4;font-size:32px}.mp-cart-gift-error{color:#ba3a5c!important}.mp-cart-gift-badge{display:inline-block;color:#965FD4;font-size:11px;font-weight:700}.mp-gift-order-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.mp-gift-order-links a{font-size:12px;padding:7px 10px!important;border-radius:7px;text-decoration:none;background:#965FD41b;color:var(--text,#5f348a)}
@media(max-width:850px){.mp-gift-buy-layout{grid-template-columns:minmax(0,1fr);gap:24px}.mp-gift-preview-panel{position:static;max-width:640px;width:100%;margin:auto}.mp-gift-gallery{gap:15px}.mp-gift-design .mp-gift-card-content{padding:20px}.mp-gift-design-footer{padding:15px 5px 5px}}
@media(max-width:600px){.mp-gift-heading{padding-bottom:20px}.mp-gift-gallery{grid-template-columns:minmax(0,1fr)}.mp-gift-form{padding:20px}.mp-gift-personal-grid{grid-template-columns:minmax(0,1fr);gap:0}.mp-gift-card-content{padding:23px;gap:16px}.mp-gift-card-image{height:160px}.mp-gift-home{grid-template-columns:minmax(0,1fr);padding:24px}.mp-gift-steps{gap:10px 16px}.mp-gift-form-bottom{grid-template-columns:75px minmax(0,1fr);gap:12px}.mp-gift-form-bottom .mp-gift-button{padding:12px 9px}.mp-gift-amounts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.mp-gifts *{transition:none!important}}
@media print{.mp-gift-card{box-shadow:none;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.mp-gift-card-content{min-height:260px}}
