/* Gamezone's existing tokens drive the interface; each edition has original artwork. */
.gzc-wrap{max-width:1480px;margin:52px auto;padding:0 32px;color:var(--dark,#111);font-family:var(--font,"Fredoka",Arial,sans-serif)}
.gzc-wrap,.gzc-wrap *{box-sizing:border-box}.gzc-wrap h2{max-width:850px;margin:10px 0 18px;font-size:clamp(38px,5vw,70px);font-weight:600;line-height:1.02;letter-spacing:-.055em}.gzc-wrap>p:not(.gzc-eyebrow):not(.gzc-terms){max-width:650px;font-size:18px;line-height:1.65}.gzc-eyebrow{color:var(--blue-text,#00718f);font-size:13px;font-weight:600;letter-spacing:normal}.gzc-gift-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:38px 0}.gzc-gift{min-width:0;padding:10px;background:var(--white,#fff);border-radius:var(--radius-lg,22px);border:1px solid #e3e9eb;box-shadow:0 6px 20px #11111105}.gzc-gift-picture{display:block;overflow:hidden;border-radius:14px;background:#e9f7fa}.gzc-gift-picture img{display:block;width:100%;height:auto;aspect-ratio:86/54;transition:transform .35s ease}.gzc-gift-picture:hover img{transform:scale(1.025)}.gzc-gift-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 4px 10px}.gzc-edition{margin:0 0 5px;color:var(--blue-text,#00718f);font-size:12px;font-weight:600;text-transform:none;letter-spacing:normal}.gzc-gift h3{font-size:22px;font-weight:500;letter-spacing:-.025em;line-height:1.1;margin:0}.gzc-gift-value{flex-shrink:0;padding:8px 12px;border-radius:99px;background:var(--paper,#f3f7f8);font-size:17px;font-weight:500}.gzc-gift-value .woocommerce-Price-amount{white-space:nowrap}.gzc-button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:48px;padding:13px 24px;margin-top:14px;color:white!important;background:var(--blue,#0089b2);border-radius:99px;font-weight:500;font-size:16px;text-decoration:none!important;transition:background .18s,color .18s}.gzc-button:hover{background:var(--yellow,#ffd84d);color:var(--dark,#111)!important}.gzc-gift .gzc-button{display:flex;width:100%;justify-content:space-between}.gzc-button:focus-visible,.gzc-gift-picture:focus-visible{outline:3px solid var(--yellow,#ffd84d);outline-offset:4px}.gzc-terms{max-width:850px;margin:30px 0;color:var(--muted,#536268);font-size:14px;line-height:1.75}
/* Loyalty card: collectible game tokens, with live state rendered as HTML. */
.gzc-loyalty{position:relative;isolation:isolate;overflow:hidden;max-width:640px;margin:32px 0 16px;padding:32px;background:var(--blue,#0089b2);border:2px solid #111;border-radius:24px;color:white;box-shadow:8px 8px 0 var(--yellow,#ffd84d)}.gzc-loyalty-art{position:absolute;z-index:-1;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.gzc-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;letter-spacing:normal}.gzc-card-top strong{font-size:24px;letter-spacing:-.035em;font-weight:700}.gzc-card-top>span{padding:7px 12px;border:1px solid #ffffff90;border-radius:99px;white-space:nowrap}.gzc-loyalty h3{position:relative;margin:36px 0 14px;max-width:500px;color:white;font-size:clamp(38px,5vw,62px);line-height:.98;letter-spacing:-.045em;font-weight:600}.gzc-loyalty .gzc-card-caption{margin:0;font-size:11px;font-weight:500;letter-spacing:normal}.gzc-stamps{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none!important;padding:24px 0 18px!important;margin:0!important}.gzc-stamps:before{content:"";position:absolute;z-index:-1;left:30px;right:30px;top:50%;border-top:2px dashed #ffffff60}.gzc-stamps li{display:grid;place-items:center;flex:0 0 72px;height:72px;border:2px dashed #ffffff80;border-radius:50%;color:white;background:#00718f;font-size:24px}.gzc-stamps .is-earned{border:2px solid #111;background:var(--yellow,#ffd84d);color:#111;box-shadow:3px 3px 0 #111}.gzc-token{display:grid;place-items:center;width:100%;height:100%}.gzc-pips{display:grid;grid-template-columns:repeat(2,8px);gap:8px;transform:rotate(-10deg)}.gzc-pips i{display:block;width:8px;height:8px;background:#111;border-radius:50%}.gzc-pips-1{grid-template-columns:8px}.gzc-pips-2 i:last-child{grid-column:2}.gzc-pips-3 i:last-child{grid-column:2}.gzc-stamps .gzc-reward{flex-basis:106px;height:86px;display:flex;flex-direction:column;justify-content:center;border:2px solid #111;border-radius:16px;background:white;color:#111;transform:rotate(5deg);box-shadow:3px 3px 0 #111}.gzc-reward strong{font-size:36px;font-weight:600;letter-spacing:-.04em;line-height:1.1}.gzc-reward small{font-size:10px;font-weight:500;letter-spacing:normal}.gzc-loyalty>p:last-child{margin:12px 0 0;padding-top:16px;border-top:1px solid #ffffff60;font-size:15px;line-height:1.55;max-width:600px;color:white}.gzc-loyalty.is-ready .gzc-reward{background:var(--yellow,#ffd84d)}.gzc-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:680px){.gzc-wrap{padding:0 20px;margin:32px auto}.gzc-gift-grid{grid-template-columns:1fr;gap:24px}.gzc-gift-heading{gap:8px}.gzc-gift h3{font-size:20px}.gzc-loyalty{padding:22px;margin-right:8px}.gzc-card-top{font-size:10px}.gzc-card-top strong{font-size:20px}.gzc-card-top>span{padding:6px 8px}.gzc-loyalty h3{font-size:42px;margin-top:32px;max-width:230px}.gzc-stamps{gap:7px}.gzc-stamps li{flex-basis:44px;height:44px;font-size:19px}.gzc-stamps .gzc-reward{flex-basis:68px;height:65px}.gzc-reward strong{font-size:27px}.gzc-reward small{font-size:8px}.gzc-pips{gap:4px;grid-template-columns:repeat(2,6px)}.gzc-pips i{width:6px;height:6px}.gzc-pips-1{grid-template-columns:6px}.gzc-loyalty-art{object-position:center;opacity:.75}.gzc-gift-value{font-size:14px;padding:8px}.gzc-loyalty .gzc-card-caption{font-size:9px}.gzc-wrap>p:not(.gzc-eyebrow):not(.gzc-terms){font-size:16px}}
@media(prefers-reduced-motion:reduce){.gzc-gift-picture img,.gzc-button{transition:none}}

/* Compact five-card collection; swipe the row on smaller screens. */
.gzc-gift-heading{display:block;padding:14px 2px 4px}.gzc-edition{font-size:12px;margin-bottom:6px}.gzc-gift h3{font-size:18px}.gzc-gift-value{display:inline-block;margin-top:10px;padding:6px 10px;font-size:14px}.gzc-gift .gzc-button{font-size:13px;min-height:44px;padding:10px 14px;gap:8px}.gzc-gift-picture{border-radius:10px}.gzc-wrap:has(.gzc-loyalty){padding-top:34px;border-top:1px solid #dce5e7}.gzc-wrap:has(.gzc-loyalty)>h2{font-size:clamp(32px,4vw,48px)}
@media(max-width:1050px){.gzc-gift-grid{grid-template-columns:repeat(5,210px);overflow-x:auto;gap:14px;padding:4px 4px 16px;scroll-snap-type:x mandatory}.gzc-gift{scroll-snap-align:start}}

.gzc-gift .gzc-button img{display:block;width:18px;height:18px;flex:0 0 18px}

/* Purchase form and account cards */
.gzc-purchase-fields{display:grid;gap:14px;margin:22px 0;padding:20px;background:#e9f7fa;border:1px solid #c5e8ef;border-radius:18px}
.gzc-purchase-fields label,.gzc-redeem label{display:grid;gap:6px;font-size:15px;font-weight:600;letter-spacing:normal;text-transform:none}
.gzc-purchase-fields input,.gzc-purchase-fields select,.gzc-purchase-fields textarea,.gzc-redeem input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #bfcdd1;border-radius:10px;background:#fff;color:#111;font:inherit}
.gzc-purchase-fields textarea{min-height:84px;resize:vertical}
.gzc-purchase-fields label span{font-weight:400}.gzc-purchase-fields p{margin:2px 0 0;font-size:13px;color:#536268}
.gzc-redeem{max-width:780px;margin:30px 0;padding:24px;border:1px solid #c5e8ef;border-radius:20px;background:#e9f7fa}
.gzc-redeem h2{margin:0 0 8px;font-size:30px;letter-spacing:-.03em}.gzc-redeem p{margin:0 0 18px}.gzc-redeem form{display:flex;align-items:end;gap:12px}.gzc-redeem label{flex:1}.gzc-redeem .gzc-button{margin:0;border:0;cursor:pointer;white-space:nowrap}
.gzc-account-gifts article{display:flex;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid #dce5e7}.gzc-account-gifts article img{width:170px;max-width:35%;height:auto;border-radius:10px}.gzc-account-gifts article h3{margin:0 0 6px;font-size:20px}.gzc-account-gifts article p{margin:3px 0;overflow-wrap:anywhere}
@media(max-width:680px){.gzc-redeem{padding:18px}.gzc-redeem form{display:grid}.gzc-redeem .gzc-button{width:100%}.gzc-account-gifts article{align-items:start}.gzc-account-gifts article img{width:110px}}
/* Keep the mobile loyalty artwork at a physical card proportion; details sit below it. */
.gzc-loyalty-status{max-width:640px;margin:14px 0 0;color:#34464d;font-size:15px;line-height:1.5}
@media(max-width:680px){.gzc-loyalty{display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:1.58/1;min-height:0;margin:20px 8px 12px 0;padding:16px;border-radius:17px}.gzc-card-top strong{font-size:16px}.gzc-card-top>span{font-size:8px;padding:4px 7px}.gzc-loyalty h3{font-size:clamp(26px,8vw,36px);margin:4px 0 0;max-width:90%}.gzc-loyalty .gzc-card-caption{display:none}.gzc-stamps{gap:4px;padding:3px 0 0!important}.gzc-stamps li{flex:0 1 34px;width:34px;height:34px;font-size:14px}.gzc-stamps .gzc-reward{flex:0 1 55px;width:55px;height:43px;border-radius:9px;transform:rotate(3deg)}.gzc-reward strong{font-size:20px}.gzc-reward small{font-size:7px}.gzc-stamps:before{left:18px;right:20px}.gzc-pips{gap:3px;grid-template-columns:repeat(2,5px)}.gzc-pips i{width:5px;height:5px}.gzc-pips-1{grid-template-columns:5px}}
.gzc-redeem{position:relative;isolation:isolate;overflow:hidden}.gzc-redeem:before{content:"";position:absolute;right:-30px;top:-35px;width:190px;aspect-ratio:86/54;background:url("art/birthday.svg") center/contain no-repeat;opacity:.16;transform:rotate(12deg);z-index:-1}

/* Checkout gift codes sit beside the coupon option as a quiet disclosure. */
.gzc-redeem{max-width:none;margin:8px 0 18px;padding:0;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}
.gzc-redeem::before{content:none}
.gzc-redeem summary{display:list-item;width:max-content;max-width:100%;padding:4px 0;color:#34464d;font-size:14px;font-weight:500;cursor:pointer}
.gzc-redeem summary span{color:var(--blue-text,#00718f);text-decoration:underline;text-underline-offset:3px}
.gzc-redeem summary:focus-visible{outline:3px solid var(--yellow,#ffd84d);outline-offset:3px}
.gzc-redeem__body{max-width:560px;margin-top:11px;padding:16px;background:#fff;border:1px solid #dce5e7;border-radius:12px}
.gzc-redeem__body>p{margin:0 0 12px;color:#536268;font-size:13px;line-height:1.5}
.gzc-redeem form{align-items:end;gap:10px}
.gzc-redeem label{font-size:13px;font-weight:500}
.gzc-redeem .gzc-button{min-height:44px;padding:10px 16px;font-size:13px}
.gzc-redeem .gzc-terms{margin:10px 0 0;font-size:12px}
@media(max-width:680px){.gzc-redeem{padding:0}.gzc-redeem__body{padding:14px}.gzc-redeem form{display:flex;flex-wrap:wrap}.gzc-redeem label{flex:1 1 180px}.gzc-redeem .gzc-button{width:auto;flex:0 0 auto}}

/* External SVG images do not inherit text color. Match the button background. */
.gzc-button img{filter:brightness(0) invert(1)}
.gzc-button:hover img{filter:none}

/* WooCommerce uses the same notice shell for the coupon and gift card prompts. */
.gzc-gift-toggle .woocommerce-info{margin-bottom:0}
.gzc-redeem[hidden]{display:none!important}
.gzc-redeem{max-width:none;margin:0 0 22px;padding:18px 22px;background:#fff;border:1px solid #dce5e7;border-top:0;border-radius:0 0 8px 8px}
.gzc-redeem>p:first-child{margin:0 0 14px;color:#536268;font-size:14px}
.gzc-redeem form{max-width:600px}
.gzc-redeem .gzc-terms{margin:12px 0 0}
