/* Customizable loyalty cards: every business can compose its own recognizable identity. */
.card-editor-grid{grid-template-columns:minmax(0,1.08fr) minmax(310px,.72fr);align-items:start;gap:24px}
.card-editor-grid .form-panel>h2{font-family:Georgia,'Times New Roman',serif;font-size:25px;letter-spacing:-.5px}
.card-editor-grid .form-grid label small{display:block;margin-top:6px;color:var(--muted,#74736e);font-size:12px;line-height:1.5}
.card-editor-grid input[type=color]{min-height:46px;padding:6px}
.loyalty-card{--card-accent:#d2bd91;isolation:isolate;overflow:hidden;position:relative;transition:background .25s ease,color .25s ease,box-shadow .25s ease,border-radius .25s ease}
.loyalty-card:before{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:0;transition:opacity .25s ease}
.loyalty-card .loyalty-card-top{position:relative;z-index:1}
.loyalty-card .card-star{color:var(--card-accent,#d2bd91);transition:transform .25s ease}
.loyalty-card .stamp{transition:border-radius .25s ease,background .25s ease,color .25s ease,transform .25s ease}
.loyalty-card .stamp.filled{background:var(--card-accent,#d2bd91)!important;border-color:var(--card-accent,#d2bd91)!important}
.loyalty-card .loyalty-meta,.loyalty-card .card-qr{transition:border-color .25s ease}
.card-layout-classic .card-star{transform:rotate(-8deg)}
.card-layout-editorial{border-radius:5px!important;font-family:Georgia,'Times New Roman',serif}
.card-layout-editorial .loyalty-card-top>span:nth-child(2){font-family:Georgia,'Times New Roman',serif;letter-spacing:.2px}
.card-layout-editorial .loyalty-card-top small{font-family:Arial,sans-serif;letter-spacing:1.2px}
.card-layout-editorial .card-star{font-size:30px}
.card-layout-minimal{border-radius:12px!important;box-shadow:0 12px 32px #12171328!important}
.card-layout-minimal .card-star{font-size:17px;opacity:.72}
.card-layout-minimal .loyalty-meta{border-style:solid!important}
.card-layout-minimal .card-qr{border-style:solid!important}
.card-layout-bold{border-radius:7px!important}
.card-layout-bold .loyalty-card-top>span:nth-child(2){font-weight:850;letter-spacing:.5px}
.card-layout-bold .loyalty-card-top small{font-weight:800;letter-spacing:1.5px}
.card-layout-bold .card-star{transform:rotate(-13deg) scale(1.18)}
.card-finish-soft{box-shadow:0 14px 36px #253b2e2b!important}
.card-finish-soft:before{opacity:.2;background:radial-gradient(ellipse at 86% 4%,var(--card-accent),transparent 52%)}
.card-finish-gradient:before{opacity:.36;background:linear-gradient(138deg,transparent 22%,var(--card-accent) 160%)}
.card-finish-grain:before{opacity:.12;background-image:repeating-linear-gradient(0deg,#fff 0,#fff 1px,transparent 1px,transparent 4px),repeating-linear-gradient(90deg,#000 0,#000 1px,transparent 1px,transparent 5px);mix-blend-mode:soft-light}
.stamp-style-square .stamp{border-radius:5px!important}
.stamp-style-diamond .stamp{border-radius:5px!important;transform:rotate(45deg) scale(.78)}
.stamp-style-diamond .stamp>*{transform:rotate(-45deg)}
.stamp-style-outline .stamp{border:1.5px dashed currentColor!important;background:transparent!important;border-radius:50%!important}
.stamp-style-outline .stamp.filled{background:var(--card-accent,#d2bd91)!important;border:1px solid var(--card-accent,#d2bd91)!important}
.card-layout-editorial.card-finish-soft:before{background:radial-gradient(ellipse at 80% 10%,var(--card-accent),transparent 54%)}
.card-layout-bold .stamp.filled{box-shadow:0 2px 7px color-mix(in srgb,var(--card-accent) 35%,transparent)}
.card-layout-minimal .loyalty-card-top>span:nth-child(2) small{opacity:.7}
.card-preview-caption{margin-top:18px;text-align:center;color:var(--muted,#74736e);font-size:13px;line-height:1.55}
.wallet-mockup{position:absolute;z-index:2;left:50%;top:48%;width:275px;height:370px;transform:translate(-50%,-50%) rotate(5deg);filter:drop-shadow(0 30px 35px #18251f35)}
.marketing-hero-visual:has(.wallet-mockup) .marketing-glow{display:none}
.marketing-hero-visual:has(.wallet-mockup) .orbit-a{width:355px;height:355px;border-color:#56695420;transform:translate(-50%,-50%) rotate(20deg)}
.marketing-hero-visual:has(.wallet-mockup) .orbit-b{width:415px;height:260px;border-color:#876b4925;transform:translate(-50%,-50%) rotate(-31deg)}
.wallet-device{position:absolute;inset:0;border:8px solid #17211d;border-radius:34px;padding:37px 13px 17px;background:linear-gradient(155deg,#fcfaf3,#e9e5da);box-shadow:inset 0 0 0 1px #ffffffa6}
.wallet-device:before{content:'';position:absolute;top:10px;left:50%;width:76px;height:15px;border-radius:12px;background:#101713;transform:translateX(-50%)}
.wallet-device-top{position:absolute;top:13px;left:25px;font:800 7px 'Manrope',sans-serif;letter-spacing:2px;color:#738075}
.wallet-device-top i{display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:#75916f}
.wallet-pass{position:relative;overflow:hidden;height:265px;padding:23px 18px 16px;background:linear-gradient(142deg,#6e806b,#405c4b 73%,#324c3e);color:#fff;border-radius:3px;box-shadow:0 7px 15px #16251d30}
.wallet-pass:before{content:'✳';position:absolute;right:-12px;top:-21px;color:#ffffff12;font-size:126px;line-height:1}
.wallet-pass>*{position:relative}
.wallet-pass small{display:block;font:750 7px 'Manrope',sans-serif;letter-spacing:1.45px;color:#e1e6d8}
.wallet-pass>b{display:block;margin-top:16px;font:750 29px/.99 'Manrope',sans-serif;letter-spacing:-1.8px}
.wallet-stamps{display:grid;grid-template-columns:repeat(4,29px);gap:8px;margin-top:21px}
.wallet-stamps i{display:grid;place-items:center;width:27px;height:27px;border:1px solid #ffffff8a;border-radius:50%;font-size:11px;font-style:normal;color:#3a523f;background:#d6c39c}
.wallet-stamps i:nth-child(n+4){background:#ffffff0b;color:transparent}
.wallet-pass>span{display:block;margin-top:11px;font:750 7px 'Manrope',sans-serif;letter-spacing:1.6px;color:#e4e8dc}
.wallet-pass>strong{display:block;margin-top:14px;padding-top:11px;border-top:1px solid #ffffff40;font:600 9px 'Manrope',sans-serif;color:#fff}
.wallet-device-footer{position:absolute;bottom:11px;left:0;right:0;text-align:center;font:700 6px 'Manrope',sans-serif;letter-spacing:1.25px;color:#8a9187}
.wallet-halo{position:absolute;right:-16px;top:86px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #d5c49e;background:#f8f4e8;border-radius:50%;color:#486454;font:600 18px 'DM Sans',sans-serif}
.marketing-hero-visual .marketing-card-note{position:absolute;right:4px;bottom:51px;font-size:7px;letter-spacing:1px;color:#677466;z-index:3}
@media(max-width:850px){.wallet-mockup{transform:translate(-50%,-50%) rotate(4deg) scale(.9)}.marketing-hero-visual .marketing-card-note{right:2px;bottom:8px;font-size:6px}}
@media(max-width:600px){.card-editor-grid{grid-template-columns:1fr}.wallet-mockup{transform:translate(-50%,-50%) rotate(4deg) scale(.82)}.marketing-hero-visual .marketing-card-note{bottom:1px;right:0}.stamp-style-diamond .stamp{transform:rotate(45deg) scale(.72)}}
