/* Gift card selection and scoped header refinements. */
.kp-gift-selector{margin:22px 0;padding:20px;background:linear-gradient(135deg,#111c29,#090f18);border:1px solid #304156;border-radius:14px}
.kp-gift-selector__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.kp-gift-selector__head label{font-weight:700;color:#fff;font-size:14px}
.kp-gift-selector__head>span{color:#a1b0c3;font-size:12px}
.kp-gift-selector__region{display:flex;gap:10px}
.kp-gift-selector select{width:100%;min-width:0;height:46px;background:#0a121d;color:#fff;border:1px solid #42536a;border-radius:8px;padding:0 12px;font-size:14px}
.kp-gift-selector select option{background:#111b29;color:#fff}
.kp-gift-selector__region button{flex:none;padding:8px 16px;background:#ff8c00;color:#111;border:0;border-radius:8px;font-size:13px;font-weight:700}
.kp-gift-selector__hint{font-size:12px;line-height:1.6;color:#a9b8cb;margin:10px 0 18px}
.kp-gift-selector h3{font-size:14px;margin:0 0 12px;color:#fff}
.kp-gift-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:9px;max-height:360px;overflow-y:auto;padding:3px}
.kp-gift-value{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:78px;padding:12px 7px;border:1px solid #344257;border-radius:9px;background:#0b141f;color:#f0f4fa;text-align:center;transition:border-color .15s,background .15s}
.kp-gift-value strong{font-size:14px;line-height:1.35}
.kp-gift-value>span{font-size:12px;color:#acbed2}
.kp-gift-value:hover{border-color:#ff9500;color:#fff;background:#191b20}
.kp-gift-value.is-selected{border-color:#ff9200;background:linear-gradient(130deg,#342313,#17191c);box-shadow:0 0 10px #ff880030}
.kp-gift-value.is-selected>span{color:#ffb562}
.kp-gift-value small{font-size:10px;color:#a2adbb}
.kp-gift-value.is-outofstock{opacity:.65}
.single-product .kp-product-facts>div{min-width:0;gap:8px}
.single-product .kp-product-facts small{line-height:1.4}
.single-product .kp-product-facts>div>small{display:block}
.single-product .kp-product-facts>div>strong{line-height:1.4}
.single-product .kp-product-media-gallery:has(.kp-reference-rail>button:only-child){grid-template-columns:1fr}
.single-product .kp-product-media-gallery:has(.kp-reference-rail>button:only-child)>.kp-reference-rail{display:none}
.single-product .kp-product-media-main{aspect-ratio:1/1;min-height:0;width:100%;border-radius:16px;overflow:hidden;padding:0}
.single-product .kp-product-media-main .kp-product-media-view{position:absolute;inset:0;display:grid;place-items:center}
.single-product .kp-product-media-main img{width:100%;height:100%;max-height:none;object-fit:contain}
.kp-site .kp-account-flyout{box-sizing:border-box;width:350px;max-width:calc(100vw - 32px);padding:24px}
.kp-site .kp-account-flyout .form-row-first,.kp-site .kp-account-flyout .form-row-last{float:none!important;width:100%!important;clear:both!important;display:block!important}
.kp-site .kp-account-flyout .form-row{box-sizing:border-box;float:none!important;width:100%!important;clear:both!important;margin-bottom:14px!important}
.kp-site .kp-account-flyout .password-input{display:block;width:100%;position:relative}
.kp-site .kp-account-flyout input:is([type=text],[type=password],[type=email]){height:44px;font-size:14px;background:#0a121d}
.kp-site .kp-account-flyout label{display:block;margin-bottom:5px;font-size:12px}
.kp-site .kp-account-flyout label.woocommerce-form-login__rememberme{display:flex;margin:4px 0 10px;gap:8px}
.kp-site .kp-account-flyout .woocommerce-form-login__submit{float:none!important;width:100%!important;margin:8px 0 0!important;min-height:44px!important}
.kp-site .kp-account-flyout .nsl-container,.kp-site .kp-account-flyout .nsl-container-buttons{width:100%;padding:0!important}
.kp-site .kp-account-flyout .nsl-button{width:100%;box-sizing:border-box}
.kp-site .kp-account-flyout .show-password-input{right:10px;top:50%;transform:translateY(-50%)}
.kp-site .kp-action--cart .kp-action__icon{display:inline-flex;align-items:center;justify-content:center;position:relative;width:40px;height:40px;padding:0;line-height:1;flex-shrink:0;border-color:transparent}
.kp-site .kp-action--cart .kp-action__icon>.kp-icon{display:block;width:28px;height:28px;margin:0;transform:none}
.kp-site .kp-action--cart .kp-cart-count{position:absolute;top:-4px;right:-3px;min-width:19px;height:19px;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1;padding:0 4px}
@media(min-width:1101px){.single-product .kp-product-detail .kp-product-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) minmax(0,.78fr);gap:26px}.single-product .kp-product-gallery{align-self:start}}
@media(max-width:700px){.kp-gift-selector{padding:16px;margin-top:18px}.kp-gift-values{grid-template-columns:repeat(3,minmax(0,1fr));max-height:340px}.kp-gift-value strong{font-size:13px}.single-product .kp-product-media-main{max-width:440px;margin-inline:auto}.kp-site .kp-mainbar .kp-action--cart .kp-action__icon{width:36px;height:36px}}

/* PlayStation's supplied landscape artwork is a centred logo on a plain blue field. */
.single-product .kp-gift-art-playstation .kp-product-media-main img{object-fit:cover}
@media(min-width:768px){.kp-site .kp-account-menu:focus-within .kp-account-flyout{visibility:visible;opacity:1;transform:translateY(0)}}

/* Compact gift-card value choices. */
.kp-gift-values{grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:6px;max-height:260px;padding:2px}
.kp-gift-value{min-height:54px;padding:8px 5px;gap:4px;border-radius:7px}
.kp-gift-value strong{font-size:12px;line-height:1.25}
.kp-gift-value>span{font-size:10px;line-height:1.25}
.kp-gift-value small{font-size:9px}
@media(max-width:700px){.kp-gift-values{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-height:260px}.kp-gift-value{min-height:50px;padding:7px 4px}.kp-gift-value strong{font-size:11px}}

/* Centre related-product cart icons independently of WooCommerce line-height. */
.woocommerce .kp-product-bottom .related ul.products li.product a.button{display:grid;place-items:center;width:28px;height:28px;min-height:28px;padding:0;line-height:1;box-sizing:border-box;border-radius:8px}
.woocommerce .kp-product-bottom .related ul.products li.product a.button:not(.loading)::before{content:none}
.woocommerce .kp-product-bottom .related ul.products li.product a.button:not(.loading)::after{content:"";position:absolute;top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);display:block;width:18px;height:18px;margin:0;line-height:1;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M3%204h2l2.5%2011h11L21%207H6%22%2F%3E%3Ccircle%20cx%3D%229%22%20cy%3D%2220%22%20r%3D%221%22%20fill%3D%22black%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%2220%22%20r%3D%221%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat}

/* Plain, readable gift-card details instead of oversized fact boxes. */
.single-product .kp-gift-intro{font-size:13px;line-height:1.65;color:#a5b4c7;margin:14px 0 18px;max-width:48ch}
.kp-gift-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 22px;padding:14px 0;border-top:1px solid #253343;border-bottom:1px solid #253343}
.kp-gift-specs>div{min-width:0;padding:0;background:none;border:0;box-shadow:none}
.kp-gift-specs>div+div{border-left:1px solid #253343;padding-left:16px}
.kp-gift-specs dt{font-size:11px;line-height:1.4;color:#8799af;margin:0 0 5px;font-weight:500}
.kp-gift-specs dd{font-size:13px;line-height:1.45;color:#e9eef6;font-weight:650;margin:0;overflow-wrap:anywhere}
@media(max-width:700px){.kp-gift-specs{gap:10px;padding:12px 0;margin-bottom:18px}.kp-gift-specs>div+div{padding-left:10px}.kp-gift-specs dd{font-size:12px}.single-product .kp-gift-intro{font-size:12px}}

/* Refined icon-led gift-card specifications. */
.kp-gift-specs{gap:0;padding:18px 0;margin:0 0 22px;border-color:#2b3747;background:linear-gradient(90deg,#ff8c0005,transparent)}
.kp-gift-specs>.kp-gift-spec{display:flex;align-items:center;gap:11px;padding:0 14px 0 0}
.kp-gift-specs>.kp-gift-spec+.kp-gift-spec{padding-left:16px;border-color:#2c3848}
.kp-gift-spec__icon{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;border:1px solid #ff98002b;background:linear-gradient(145deg,#ff980014,#ff980003);color:#ffad4a;box-shadow:inset 0 1px 0 #ffffff06}
.kp-gift-spec__icon .kp-detail-icon{width:20px;height:20px;stroke-width:1.6;filter:none}
.kp-gift-spec__text{min-width:0}
.kp-gift-specs dt{font-size:10px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;color:#9bacbf}
.kp-gift-specs dd{font-size:12px;line-height:1.4;font-weight:650;color:#f2f5fa}
@media(max-width:1100px){.kp-gift-specs>.kp-gift-spec{gap:8px;padding-right:8px}.kp-gift-specs>.kp-gift-spec+.kp-gift-spec{padding-left:10px}.kp-gift-spec__icon{flex-basis:28px;width:28px;height:28px;border-radius:8px}.kp-gift-spec__icon .kp-detail-icon{width:17px;height:17px}}
@media(max-width:420px){.kp-gift-specs>.kp-gift-spec{flex-direction:column;align-items:flex-start;gap:7px}.kp-gift-specs dd{font-size:11px}.kp-gift-specs dt{font-size:9px}}

/* Payment logos in the product panel; unavailable denominations cannot be selected. */
.single-product .stock,.single-product .kp-center-stock{display:none!important}
.kp-gift-value.is-outofstock,.kp-gift-value.is-outofstock.is-selected{opacity:.32;cursor:not-allowed;background:#0b141f;border:1px solid #344257;box-shadow:none;pointer-events:none}
.kp-gift-value.is-outofstock>span{color:#acbed2}
.kp-product-payments{margin-top:16px;padding-top:16px;border-top:1px solid #283646}
.kp-product-payments__heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.kp-product-payments__heading strong{font-size:11px;color:#c8d4e3;font-weight:600}
.kp-product-payments__heading small{font-size:9px;color:#91a0b2}
.kp-product-payments__logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.kp-product-payment-logo{display:flex;align-items:center;justify-content:center;min-width:0;height:34px;padding:6px;border:1px solid #2a3646;border-radius:6px;background:#111924;box-sizing:border-box}
.kp-product-payment-logo>svg{width:36px;height:23px;display:block}
.kp-product-payment-logo .kp-global-payment-logo{display:flex;align-items:center;justify-content:center;gap:3px;padding:0;margin:0;min-height:0}
.kp-product-payment-logo .kp-global-payment-logo>svg{max-width:37px;max-height:21px;width:37px;height:21px;display:block}
.kp-product-payment-logo .kp-global-payment-visa>svg{height:12px;width:37px}
.kp-product-payment-logo .kp-global-payment-wordmark{font-size:8px;line-height:1}
.kp-product-payment-logo .kp-global-payment-master>svg{width:22px;height:16px}
.kp-product-payment-logo .kp-global-payment-bitcoin>svg{width:18px;height:18px}
.kp-product-payment-logo .kp-payment-bank-logo{max-width:100%;width:auto;height:19px;object-fit:contain}

/* Five compact payment marks on a single line. */
.kp-product-payments__logos{display:flex;flex-wrap:nowrap;gap:5px;align-items:center}
.kp-product-payment-logo{flex:1 1 0;height:28px;padding:4px 3px;border-radius:5px;overflow:hidden}
.kp-product-payment-logo .kp-global-payment-logo{gap:2px;width:100%;min-width:0}
.kp-product-payment-logo .kp-global-payment-logo>svg{width:29px;height:18px;max-width:100%;max-height:18px;flex-shrink:0}
.kp-product-payment-logo .kp-global-payment-visa>svg{width:30px;height:10px}
.kp-product-payment-logo .kp-global-payment-master>svg{width:20px;height:14px}
.kp-product-payment-logo .kp-global-payment-bitcoin>svg{width:16px;height:16px}
.kp-product-payment-logo .kp-global-payment-wordmark{display:none}
.kp-product-payment-logo>svg{max-width:100%;width:30px;height:19px}
.kp-product-payment-logo .kp-payment-bank-logo{max-width:100%;height:16px}
.kp-global-payment-amex,.kp-payment:has(svg[aria-label="American Express"]){display:none!important}

/* Moroccan bank marks need a light surface for their dark lettering. */
.kp-product-payments--ma .kp-product-payment-logo{background:#f7f9fc;border-color:#d9e1eb;padding:5px 4px;box-shadow:inset 0 1px 0 #fff}
.kp-product-payments--ma .kp-product-payment-logo .kp-payment-bank-logo{width:100%;max-width:100%;height:17px;object-fit:contain;display:block}
.kp-product-payments--ma .kp-product-payment-logo>svg{display:block;width:30px;height:19px}
.kp-footer .kp-payment-bank-logo{background:#f7f9fc;border-radius:4px;padding:4px 6px;box-sizing:content-box;object-fit:contain}

.kp-gift-specs .kp-gift-spec:last-child dd{font-size:11px;white-space:nowrap;overflow-wrap:normal}
.kp-footer .kp-payment-bank-logo{box-sizing:border-box}
