/* CG Coupon Leads — 10% edge tab + card. Everything is scoped to #cg-clp. */
#cg-clp{--cg-clp-tab:#1F3D2C;--cg-ink:#1B241E;--cg-muted:#56615A;--cg-cream:#FBFAF6;--cg-lime:#C9D9A6;--cg-forest2:#2E5A3E;--cg-line:#E3DED1;--cg-sage:#EEF2E6;font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:var(--cg-ink);line-height:1.4;-webkit-font-smoothing:antialiased}
#cg-clp *,#cg-clp *::before,#cg-clp *::after{box-sizing:border-box}
#cg-clp [hidden]{display:none!important}
#cg-clp button{font-family:inherit;letter-spacing:normal;text-transform:none;margin:0;box-shadow:none;min-height:0;min-width:0;line-height:1.2}
#cg-clp svg{display:inline-block;vertical-align:middle;flex:none}
#cg-clp :focus-visible{outline:2px solid var(--cg-forest2);outline-offset:2px}
#cg-clp .cg-clp-tab:focus-visible,#cg-clp .cg-clp-tab-x:focus-visible,#cg-clp .cg-clp-close:focus-visible{outline-color:var(--cg-lime)}
#cg-clp .cg-clp-tab:focus-visible,#cg-clp .cg-clp-tab-x:focus-visible{outline-offset:-4px}

/* Tab: the 10% button and its × share one pill on the left edge */
#cg-clp .cg-clp-dock{position:fixed;left:0;bottom:36px;z-index:99990;display:flex;align-items:stretch;height:44px;border-radius:0 22px 22px 0;background:var(--cg-clp-tab);box-shadow:0 8px 22px rgba(20,35,26,.16);transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease,visibility 0s linear 0s}
#cg-clp .cg-clp-dock:hover{box-shadow:0 10px 26px rgba(20,35,26,.24)}
#cg-clp .cg-clp-tab{display:flex;align-items:center;height:44px;padding:0 8px 0 14px;border:0;border-radius:0;background:transparent;color:#F4F1E8;font-size:13px;letter-spacing:.01em;cursor:pointer}
#cg-clp .cg-clp-tab:hover,#cg-clp .cg-clp-tab:focus,#cg-clp .cg-clp-tab:active{background:transparent;color:#F4F1E8}
#cg-clp .cg-clp-tab-x{position:relative;display:flex;align-items:center;justify-content:center;width:42px;height:44px;padding:0 6px 0 0;border:0;border-radius:0 22px 22px 0;background:transparent;color:rgba(244,241,232,.72);cursor:pointer;transition:color .15s ease,background-color .15s ease}
#cg-clp .cg-clp-tab-x::before{content:""!important;display:block!important;position:absolute;left:0;top:13px;bottom:13px;width:1px;background:rgba(244,241,232,.2)}
#cg-clp .cg-clp-tab-x::after{display:none!important}
#cg-clp .cg-clp-tab-x:hover,#cg-clp .cg-clp-tab-x:focus{background:rgba(255,255,255,.07);color:#F4F1E8}
/* Themes style every <button>; keep the × visible whatever they set */
#cg-clp .cg-clp-dock .cg-clp-tab-x{display:flex!important;visibility:inherit!important;opacity:1!important;width:42px!important;min-width:42px!important;max-width:none!important;height:44px!important;margin:0!important;font-size:12px!important;text-indent:0!important;overflow:visible!important}
#cg-clp .cg-clp-tab-x svg{display:block!important;width:13px!important;height:13px!important;fill:none!important;stroke:currentColor!important;opacity:1!important;visibility:inherit!important}
/* Parked just off the left edge: before they scroll, near the footer, or after its × */
#cg-clp.is-waiting .cg-clp-dock,#cg-clp.is-footer .cg-clp-dock,#cg-clp.is-dismissed .cg-clp-dock{transform:translateX(-110%);visibility:hidden;pointer-events:none;box-shadow:none;transition:transform .45s cubic-bezier(.5,0,.75,0),box-shadow .2s ease,visibility 0s linear .45s}
#cg-clp .cg-clp-tab-new,#cg-clp .cg-clp-tab-joined{display:flex;align-items:center}
#cg-clp .cg-clp-sprout{margin-right:9px;transform-origin:50% 100%;transition:transform .32s ease}
#cg-clp .cg-clp-dock.is-peek .cg-clp-sprout,#cg-clp .cg-clp-tab:focus-visible .cg-clp-sprout{transform:rotate(-14deg)}
#cg-clp .cg-clp-pct{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:18px;line-height:1}
#cg-clp .cg-clp-ext{display:inline-flex;align-items:center;gap:6px;max-width:0;margin-left:0;opacity:0;overflow:hidden;white-space:nowrap;color:#DDE6CC;transition:max-width .28s ease,margin-left .28s ease,opacity .22s ease}
/* Opens out once the pointer settles on the tab (is-peek, set by the script), and stays open while it's anywhere on the pill, so the × holds still */
#cg-clp .cg-clp-dock.is-peek .cg-clp-ext,#cg-clp .cg-clp-tab:focus-visible .cg-clp-ext{max-width:220px;margin-left:5px;opacity:1}
#cg-clp .cg-clp-dot{width:20px;height:20px;margin-right:9px;border-radius:999px;background:var(--cg-lime);color:#1F3D2C;display:inline-flex;align-items:center;justify-content:center;flex:none}
#cg-clp .cg-clp-joined-text{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:17px;line-height:1;white-space:nowrap}

/* Toast */
#cg-clp .cg-clp-toast{position:fixed;left:16px;bottom:92px;z-index:99989;display:flex;align-items:center;max-width:calc(100vw - 32px);padding:10px 14px;border-radius:12px;background:#1B241E;color:#EFEBDD;font-size:13px;box-shadow:0 10px 24px rgba(20,35,26,.2)}

/* Card */
#cg-clp .cg-clp-card{position:fixed;transform-origin:50% 60%;left:24px;bottom:36px;z-index:99991;width:372px;max-height:calc(100vh - 48px);overflow-x:hidden;overflow-y:auto;background:var(--cg-cream);border:1px solid var(--cg-line);border-radius:18px;box-shadow:0 24px 60px rgba(20,35,26,.22);text-align:left;animation:cg-clp-in .26s ease}
@keyframes cg-clp-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
#cg-clp .cg-clp-band{background:var(--cg-clp-tab);color:#EFEBDD;padding:6px 10px 6px 20px;display:flex;align-items:center;justify-content:space-between}
#cg-clp .cg-clp-band-label{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:600;letter-spacing:.16em}
#cg-clp .cg-clp-band-icon .cg-clp-sprout{margin:0;width:16px;height:16px}
#cg-clp .cg-clp-band-check{color:var(--cg-lime);display:inline-flex}
#cg-clp .cg-clp-band-check svg{width:15px;height:15px}
#cg-clp .cg-clp-close{width:44px;height:44px;padding:0;border:0;background:transparent;color:#EFEBDD;border-radius:999px;display:flex;align-items:center;justify-content:center;cursor:pointer}
#cg-clp .cg-clp-close:hover{background:rgba(255,255,255,.08);color:#fff}
#cg-clp .cg-clp-pane{padding:18px 22px 16px}
#cg-clp .cg-clp-head{display:flex;gap:14px;align-items:flex-start}
#cg-clp .cg-clp-head-text{flex:1 1 auto;min-width:0}
#cg-clp .cg-clp-h{margin:0;padding:0;font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:26px;line-height:1.12;letter-spacing:-.01em;color:var(--cg-ink);text-transform:none}
#cg-clp .cg-clp-h:focus{outline:none}
#cg-clp .cg-clp-h em{font-style:italic;color:var(--cg-forest2)}
#cg-clp .cg-clp-h-done{font-size:28px}
#cg-clp .cg-clp-sub{margin:6px 0 0;font-size:13.5px;line-height:1.5;color:var(--cg-muted)}
#cg-clp .cg-clp-seal{position:relative;width:76px;height:76px;flex:none;margin-top:-2px;transform:rotate(-8deg);filter:drop-shadow(0 6px 10px rgba(20,35,26,.2))}
#cg-clp .cg-clp-seal svg{position:absolute;left:0;top:0}
#cg-clp .cg-clp-seal-pct{position:absolute;left:0;right:0;top:27px;text-align:center;font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:19px;line-height:1;color:#F4F1E8}
#cg-clp .cg-clp-seal-off{position:absolute;left:0;right:0;top:46px;text-align:center;font-size:7px;font-weight:600;letter-spacing:.2em;color:var(--cg-lime)}
#cg-clp .cg-clp-perks{margin:14px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:13.5px}
#cg-clp .cg-clp-perks li{display:flex;align-items:center;gap:10px;margin:0;padding:0;list-style:none}
#cg-clp .cg-clp-perks li::before{display:none}
#cg-clp .cg-clp-perks strong,#cg-clp .cg-clp-ticks strong{font-weight:600}
#cg-clp .cg-clp-perk-icon{width:26px;height:26px;flex:none;border-radius:999px;background:var(--cg-sage);color:var(--cg-forest2);display:flex;align-items:center;justify-content:center}
#cg-clp .cg-clp-form{margin:16px 0 0;display:flex;flex-direction:column;gap:8px}
#cg-clp .cg-clp-form label{font-size:12px;font-weight:500;color:#3E4A42;margin:0}
#cg-clp .cg-clp-form input[type=email]{width:100%;height:46px;margin:0;padding:0 16px;border:1px solid #CFC8B8;border-radius:12px;background:#fff;font-family:inherit;font-size:15px;color:var(--cg-ink);box-shadow:none}
#cg-clp .cg-clp-form input[type=email]::placeholder{color:#737D75;opacity:1}
#cg-clp .cg-clp-form input[type=email][aria-invalid=true]{border-color:#A23B2A}
#cg-clp .cg-clp-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
#cg-clp .cg-clp-error{font-size:12.5px;color:#A23B2A}
#cg-clp .cg-clp-suggest{font-size:13px;color:var(--cg-ink)}
#cg-clp .cg-clp-suggest-btn{display:inline;padding:0;border:0;background:none;font:inherit;font-weight:600;color:var(--cg-forest2);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
#cg-clp .cg-clp-suggest-btn:hover,#cg-clp .cg-clp-suggest-btn:focus{background:none;color:#1F3D2C}
#cg-clp .cg-clp-error.is-info{color:var(--cg-forest2)}
#cg-clp .cg-clp-submit{margin-top:4px;height:46px;border:0;border-radius:999px;background:var(--cg-clp-tab);color:#F4F1E8;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
#cg-clp .cg-clp-submit:hover{filter:brightness(1.1);background:var(--cg-clp-tab);color:#F4F1E8}
#cg-clp .cg-clp-submit[disabled]{opacity:.75;cursor:progress}
#cg-clp .cg-clp-fine{margin:10px 0 0;font-size:12px;color:#646E67;text-align:center}

/* Joined. The default is the finished card (returning members, reduced motion).
   A reward animation adds .rw-on and a .rw-v-<name> class to the card, then
   one .rw-<step> class per beat; each step reveals its part. */
#cg-clp .cg-clp-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
#cg-clp .cg-clp-w1,#cg-clp .cg-clp-w2{display:inline-block;transition:opacity .6s ease,transform .7s cubic-bezier(.2,1.1,.3,1)}
#cg-clp .cg-clp-ticket{position:relative;margin-top:14px;display:flex;align-items:center;justify-content:space-between;padding:14px 16px 14px 18px;border-radius:14px;background:#1F3D2C;color:#F4F1E8;transition:transform .65s cubic-bezier(.2,1.2,.4,1),opacity .45s ease}
#cg-clp .cg-clp-notch{position:absolute;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:999px;background:var(--cg-cream);z-index:2}
#cg-clp .cg-clp-notch-l{left:-9px}#cg-clp .cg-clp-notch-r{right:-9px}
#cg-clp .cg-clp-ticket-label{font-size:10.5px;font-weight:600;letter-spacing:.16em;color:var(--cg-lime)}
#cg-clp .cg-clp-code-wrap{position:relative;margin-top:4px}
#cg-clp .cg-clp-code,#cg-clp .cg-clp-dots{font-size:21px;font-weight:600;letter-spacing:.12em;white-space:nowrap}
#cg-clp .cg-clp-dots{position:absolute;left:0;top:0;color:#5E8069;opacity:0;transition:opacity .3s ease;pointer-events:none}
#cg-clp .cg-clp-l{display:inline-block;transition:opacity .38s ease,transform .48s cubic-bezier(.2,1.5,.4,1)}
#cg-clp .cg-clp-ticket-pct{padding-left:14px;border-left:1.5px dashed rgba(201,217,166,.45);font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:32px;line-height:1;color:var(--cg-lime);transition:opacity .7s ease .6s}
#cg-clp .cg-clp-shine-clip{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:14px;overflow:hidden;pointer-events:none}
#cg-clp .cg-clp-shine-clip i,#cg-clp .cg-clp-cshine{position:absolute;top:0;bottom:0;left:0;width:45%;background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.3) 50%,rgba(255,255,255,0) 100%);transform:translateX(-160%) skewX(-16deg);pointer-events:none}
#cg-clp .cg-clp-cshine{top:0;bottom:0;width:40%;z-index:6;background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.38) 50%,rgba(255,255,255,0) 100%)}
@keyframes cgclpShine{0%{transform:translateX(-160%) skewX(-16deg)}100%{transform:translateX(360%) skewX(-16deg)}}
#cg-clp .cg-clp-valid{margin-top:6px;font-size:12px;color:#646E67}
#cg-clp .cg-clp-status{margin:10px 0 0;font-size:13.5px;line-height:1.45;color:var(--cg-ink)}
#cg-clp .cg-clp-status strong{display:inline-block;font-weight:600;color:var(--cg-forest2);font-variant-numeric:tabular-nums}
#cg-clp .cg-clp-status.is-warn{color:#8A3B22}
#cg-clp .cg-clp-bar{margin-top:8px;height:5px;border-radius:3px;background:var(--cg-line);overflow:hidden}
#cg-clp .cg-clp-bar-fill{width:0;height:100%;border-radius:3px;background:var(--cg-forest2);transition:width .5s ease}
#cg-clp .cg-clp-actions{margin-top:12px;display:flex;gap:8px}
#cg-clp .cg-clp-btn{flex:1 1 auto;height:46px;padding:0 16px;border:0;border-radius:999px;background:#1F3D2C;color:#F4F1E8!important;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;text-decoration:none!important;cursor:pointer}
#cg-clp .cg-clp-btn:hover{filter:brightness(1.12);background:#1F3D2C}
#cg-clp .cg-clp-ghost{height:46px;padding:0 16px;border:1px solid #1F3D2C;border-radius:999px;background:transparent;font-size:13.5px;font-weight:500;color:#1F3D2C;cursor:pointer}
#cg-clp .cg-clp-ghost:hover{background:var(--cg-sage);color:#1F3D2C}
#cg-clp .cg-clp-ticks{margin:14px 0 0;padding:12px 0 0;border-top:1px solid #ECE8DE;list-style:none;display:flex;flex-direction:column;gap:7px;font-size:13px}
#cg-clp .cg-clp-ticks li{display:flex;align-items:center;gap:10px;margin:0;padding:0;list-style:none;transition:color .3s ease}
#cg-clp .cg-clp-ticks li::before{display:none}
#cg-clp .cg-clp-tick{position:relative;width:22px;height:22px;flex:none;border-radius:999px;border:1.5px dashed #CFC8B8}
#cg-clp .cg-clp-tick-on{position:absolute;left:-1.5px;top:-1.5px;width:22px;height:22px;border-radius:999px;background:var(--cg-lime);color:#1F3D2C;display:flex;align-items:center;justify-content:center;transition:transform .42s cubic-bezier(.3,1.7,.5,1)}

/* Receipt (Savings moment, when the code is on) */
#cg-clp .cg-clp-receipt{display:none;margin-top:12px;padding:12px 14px;border-radius:12px;background:var(--cg-sage);font-size:13.5px}
#cg-clp .rw-receipt .cg-clp-receipt{display:block}
#cg-clp .cg-clp-rc-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
#cg-clp .cg-clp-rc-muted{color:#4E5A52}
#cg-clp .cg-clp-rc-disc{margin-top:6px;color:var(--cg-forest2)}
#cg-clp .cg-clp-rc-disc>span:first-child{display:flex;align-items:center;gap:6px}
#cg-clp .cg-clp-rc-line{height:1px;background:#D5DCC6;margin:8px 0}
#cg-clp .cg-clp-rc-total{font-size:15px;font-weight:600}
#cg-clp .cg-clp-rc-pay{display:flex;align-items:baseline;gap:8px}
#cg-clp .cg-clp-rc-old{position:relative;font-size:12px;font-weight:400;color:#8A938C}
#cg-clp .cg-clp-rc-old::after{content:"";position:absolute;left:0;top:52%;height:1.5px;width:100%;background:#8A938C;transition:width .38s ease}
#cg-clp .cg-clp-rc-disc-amt,#cg-clp .cg-clp-rc-new{font-variant-numeric:tabular-nums}
#cg-clp .cg-clp-rc-disc,#cg-clp .cg-clp-rc-old{transition:opacity .45s ease,transform .55s ease}
#cg-clp .cg-clp-receipt{transition:opacity .45s ease,transform .55s ease}

/* Leaves: a burst from the ticket, and leaves falling across the card */
#cg-clp .cg-clp-leaves{position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none;z-index:3;--k:1}
#cg-clp .rw-v-stamp .cg-clp-leaves,#cg-clp .rw-v-mix .cg-clp-leaves{left:auto;right:46px;--k:.55}
#cg-clp .cg-clp-leaf{position:absolute;left:-7px;top:-7px;width:14px;height:14px;opacity:0}
#cg-clp .cg-clp-leaf svg,#cg-clp .cg-clp-rain i svg{width:100%;height:100%}
#cg-clp .cg-clp-leaf:nth-child(4n+1),#cg-clp .cg-clp-rain i:nth-child(4n+2){color:#6FA37E}
#cg-clp .cg-clp-leaf:nth-child(4n+2),#cg-clp .cg-clp-rain i:nth-child(4n+1){color:#C9D9A6}
#cg-clp .cg-clp-leaf:nth-child(4n+3),#cg-clp .cg-clp-rain i:nth-child(4n){color:#4E8A5E}
#cg-clp .cg-clp-leaf:nth-child(4n),#cg-clp .cg-clp-rain i:nth-child(4n+3){color:#E2C15A}
#cg-clp .cg-clp-leaf-0{--x:-150px;--y:-48px;--r:-30deg;--i:0}
#cg-clp .cg-clp-leaf-1{--x:-112px;--y:-86px;--r:20deg;--i:1;width:12px;height:12px}
#cg-clp .cg-clp-leaf-2{--x:-58px;--y:-104px;--r:-10deg;--i:2;width:16px;height:16px}
#cg-clp .cg-clp-leaf-3{--x:4px;--y:-116px;--r:15deg;--i:3;width:11px;height:11px}
#cg-clp .cg-clp-leaf-4{--x:60px;--y:-98px;--r:40deg;--i:4;width:15px;height:15px}
#cg-clp .cg-clp-leaf-5{--x:112px;--y:-76px;--r:-25deg;--i:5;width:13px;height:13px}
#cg-clp .cg-clp-leaf-6{--x:146px;--y:-36px;--r:30deg;--i:6;width:12px;height:12px}
#cg-clp .cg-clp-leaf-7{--x:-132px;--y:30px;--r:60deg;--i:7;width:10px;height:10px}
#cg-clp .cg-clp-leaf-8{--x:132px;--y:34px;--r:-50deg;--i:8;width:11px;height:11px}
#cg-clp .cg-clp-leaf-9{--x:-20px;--y:-70px;--r:80deg;--i:9}
@keyframes cgclpBurst{0%{opacity:0;transform:translate(0,0) rotate(0deg) scale(.3)}10%{opacity:1}45%{opacity:1;transform:translate(calc(var(--x) * var(--k)),calc(var(--y) * var(--k))) rotate(var(--r)) scale(1)}100%{opacity:0;transform:translate(calc(var(--x) * var(--k) * 1.15),calc(var(--y) * var(--k) + 140px)) rotate(calc(var(--r) * 2.4)) scale(.85)}}
#cg-clp .rw-burst .cg-clp-leaf{animation:cgclpBurst 2.2s cubic-bezier(.15,.75,.3,1) both;animation-delay:calc(var(--i) * 40ms)}
#cg-clp .cg-clp-rain{position:absolute;left:0;right:0;top:0;bottom:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:5}
#cg-clp .cg-clp-rain i{position:absolute;top:56px;width:13px;height:13px;opacity:0}
#cg-clp .cg-clp-rain i:nth-child(1){left:9%}#cg-clp .cg-clp-rain i:nth-child(2){left:80%;width:11px;height:11px}#cg-clp .cg-clp-rain i:nth-child(3){left:32%;width:15px;height:15px}#cg-clp .cg-clp-rain i:nth-child(4){left:60%;width:12px;height:12px}#cg-clp .cg-clp-rain i:nth-child(5){left:18%;width:10px;height:10px}
#cg-clp .cg-clp-rain i:nth-child(6){left:89%;width:14px;height:14px}#cg-clp .cg-clp-rain i:nth-child(7){left:47%;width:12px;height:12px}#cg-clp .cg-clp-rain i:nth-child(8){left:70%}#cg-clp .cg-clp-rain i:nth-child(9){left:5%;width:11px;height:11px}#cg-clp .cg-clp-rain i:nth-child(10){left:39%;width:15px;height:15px}
@keyframes cgclpRainL{0%{opacity:0;transform:translate(0,-10px) rotate(0deg)}10%{opacity:.95}50%{transform:translate(-18px,170px) rotate(-90deg)}100%{opacity:0;transform:translate(10px,380px) rotate(-210deg)}}
@keyframes cgclpRainR{0%{opacity:0;transform:translate(0,-10px) rotate(0deg)}10%{opacity:.95}50%{transform:translate(18px,170px) rotate(100deg)}100%{opacity:0;transform:translate(-10px,380px) rotate(230deg)}}
#cg-clp .rw-rain .cg-clp-rain i:nth-child(odd){animation:cgclpRainL 2.8s cubic-bezier(.3,.2,.5,1) both}
#cg-clp .rw-rain .cg-clp-rain i:nth-child(even){animation:cgclpRainR 2.8s cubic-bezier(.3,.2,.5,1) both}
#cg-clp .rw-rain .cg-clp-rain i:nth-child(2){animation-delay:.14s}#cg-clp .rw-rain .cg-clp-rain i:nth-child(3){animation-delay:.28s}#cg-clp .rw-rain .cg-clp-rain i:nth-child(4){animation-delay:.42s}#cg-clp .rw-rain .cg-clp-rain i:nth-child(5){animation-delay:.56s}#cg-clp .rw-rain .cg-clp-rain i:nth-child(6){animation-delay:.7s}#cg-clp .rw-rain .cg-clp-rain i:nth-child(7){animation-delay:.84s}#cg-clp .rw-rain .cg-clp-rain i:nth-child(8){animation-delay:.98s}#cg-clp .rw-rain .cg-clp-rain i:nth-child(9){animation-delay:1.12s}#cg-clp .rw-rain .cg-clp-rain i:nth-child(10){animation-delay:1.26s}

/* The stamp: the seal flies off the offer and lands on the ticket */
#cg-clp .cg-clp-flyseal{position:absolute;width:76px;height:76px;z-index:7;pointer-events:none;filter:drop-shadow(0 6px 10px rgba(20,35,26,.2))}
#cg-clp .cg-clp-flyseal svg{position:absolute;left:0;top:0}
#cg-clp .cg-clp-ripple{position:absolute;left:0;top:0;width:76px;height:76px;box-sizing:border-box;border-radius:999px;border:2px solid var(--cg-lime);opacity:0;pointer-events:none;z-index:6}
#cg-clp .cg-clp-ripple+.cg-clp-ripple{border-width:1.5px;border-color:#6FA37E}
@keyframes cgclpRipple{0%{opacity:.75;transform:scale(.7)}100%{opacity:0;transform:scale(2.4)}}
#cg-clp .rw-thud .cg-clp-ripple{animation:cgclpRipple .9s cubic-bezier(.2,.7,.3,1) both}
#cg-clp .rw-thud .cg-clp-ripple+.cg-clp-ripple{animation-duration:1.1s;animation-delay:.14s}
@keyframes cgclpThud{0%{transform:translateY(0)}30%{transform:translateY(4px) scale(.994)}55%{transform:translateY(-1px)}80%{transform:translateY(1px)}100%{transform:translateY(0)}}
#cg-clp .cg-clp-card.rw-thud{animation:cgclpThud .34s ease-out}
@keyframes cgclpPulse{0%{transform:scale(1)}35%{transform:scale(1.12)}65%{transform:scale(.98)}100%{transform:scale(1)}}
#cg-clp .cg-clp-submit svg path{transition:transform .32s cubic-bezier(.3,1.7,.5,1)}
#cg-clp .cg-clp-submit.is-open svg path{transform:translateY(-3px)}

/* Step states (only while a reward animation is set up) */
#cg-clp .rw-on .cg-clp-band-check path{stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .48s ease}
#cg-clp .rw-on.rw-check .cg-clp-band-check path{stroke-dashoffset:0}
#cg-clp .rw-on .cg-clp-w1,#cg-clp .rw-on .cg-clp-w2{opacity:0;transform:translateY(14px)}
#cg-clp .rw-on.rw-h1 .cg-clp-w1,#cg-clp .rw-on.rw-h2 .cg-clp-w2{opacity:1;transform:none}
#cg-clp .rw-on .cg-clp-ticket{opacity:0;transform:translateY(10px)}
#cg-clp .rw-on.rw-v-savings .cg-clp-ticket{transform:translateY(18px)}
#cg-clp .rw-on.rw-ticket .cg-clp-ticket{opacity:1;transform:none}
#cg-clp .rw-on .cg-clp-l{opacity:0;transform:translateY(10px)}
#cg-clp .rw-on.rw-code .cg-clp-l{opacity:1;transform:none}
#cg-clp .rw-on.rw-dots .cg-clp-dots{opacity:1}
#cg-clp .rw-on.rw-code .cg-clp-dots{opacity:0}
#cg-clp .rw-on .cg-clp-ticket-pct{opacity:0}
#cg-clp .rw-on.rw-code .cg-clp-ticket-pct{opacity:1}
#cg-clp .rw-on.rw-v-stamp .cg-clp-ticket-pct,#cg-clp .rw-on.rw-v-mix .cg-clp-ticket-pct{opacity:0;transition:none}
#cg-clp .rw-on.rw-shine .cg-clp-shine-clip i{animation:cgclpShine 1.1s ease-in-out both}
#cg-clp .rw-on.rw-cshine .cg-clp-cshine{animation:cgclpShine 1.1s ease-in-out both}
#cg-clp .rw-on .cg-clp-valid,#cg-clp .rw-on .cg-clp-status,#cg-clp .rw-on .cg-clp-bar,#cg-clp .rw-on .cg-clp-receipt{opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .6s ease}
#cg-clp .rw-on.rw-info .cg-clp-valid,#cg-clp .rw-on.rw-info .cg-clp-status,#cg-clp .rw-on.rw-info .cg-clp-bar,#cg-clp .rw-on.rw-rc .cg-clp-receipt{opacity:1;transform:none}
#cg-clp .rw-on .cg-clp-rc-disc,#cg-clp .rw-on .cg-clp-rc-old{opacity:0;transform:translateX(-8px)}
#cg-clp .rw-on.rw-rc2 .cg-clp-rc-disc,#cg-clp .rw-on.rw-rc2 .cg-clp-rc-old{opacity:1;transform:none}
#cg-clp .rw-on .cg-clp-rc-old::after{width:0}
#cg-clp .rw-on.rw-strike .cg-clp-rc-old::after{width:100%}
#cg-clp .rw-on.rw-pulse .cg-clp-status strong{animation:cgclpPulse .7s ease both}
#cg-clp .rw-on .cg-clp-actions{opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .5s ease,transform .6s cubic-bezier(.2,1.2,.4,1),visibility 0s}
#cg-clp .rw-on.rw-btn .cg-clp-actions{opacity:1;visibility:visible;transform:none}
#cg-clp .rw-on .cg-clp-tick-on{transform:scale(0)}
#cg-clp .rw-on .cg-clp-ticks li{color:#8A938C}
#cg-clp .rw-on.rw-t1 .cg-clp-ticks li:nth-child(1),#cg-clp .rw-on.rw-t2 .cg-clp-ticks li:nth-child(2),#cg-clp .rw-on.rw-t3 .cg-clp-ticks li:nth-child(3),#cg-clp .rw-on.rw-t4 .cg-clp-ticks li:nth-child(4){color:var(--cg-ink)}
#cg-clp .rw-on.rw-t1 .cg-clp-ticks li:nth-child(1) .cg-clp-tick-on,#cg-clp .rw-on.rw-t2 .cg-clp-ticks li:nth-child(2) .cg-clp-tick-on,#cg-clp .rw-on.rw-t3 .cg-clp-ticks li:nth-child(3) .cg-clp-tick-on,#cg-clp .rw-on.rw-t4 .cg-clp-ticks li:nth-child(4) .cg-clp-tick-on{transform:scale(1)}

/* Phones: the card becomes a bottom sheet */
@media (max-width:480px){
	#cg-clp .cg-clp-dock{bottom:24px}
	#cg-clp .cg-clp-card{left:10px;right:10px;bottom:10px;width:auto;max-height:calc(100vh - 20px);border-radius:16px}
	#cg-clp .cg-clp-pane{padding:16px 18px 14px}
	#cg-clp .cg-clp-h{font-size:24px}
	#cg-clp .cg-clp-seal{transform:rotate(-8deg) scale(.86);margin-right:-4px}
	#cg-clp .cg-clp-code{font-size:19px;letter-spacing:.08em}
	#cg-clp .cg-clp-toast{bottom:78px;left:10px}
}

@media (prefers-reduced-motion:reduce){
	#cg-clp *,#cg-clp *::before,#cg-clp *::after{transition:none!important;animation:none!important}
	#cg-clp .cg-clp-leaf{display:none}
}

@media print{#cg-clp{display:none!important}}
