/* Shared KEYPLO appearance: owner-approved city backdrop and roomy navigation. */
.kp-site{background:#050b12}
.kp-site::before,.kp-site::after{content:"";position:fixed;top:0;bottom:0;width:5vw;pointer-events:none;z-index:0;display:block;background-size:100% auto;background-repeat:repeat-y}
.kp-site::before{left:0;background-image:url('../img/city-edge-left.svg');background-position:left top;mask-image:none}
.kp-site::after{right:0;background-image:url('../img/city-edge-right.svg');background-position:right top;mask-image:none}
.kp-site #kp-main{position:relative;z-index:1;background:linear-gradient(90deg,transparent,#050b12 5%,#050b12 95%,transparent)}
.kp-site .kp-home__bg{display:none}
.kp-site .kp-container{width:90%;max-width:1520px;margin-inline:auto;padding-inline:0}
.kp-site .kp-footer{position:relative;z-index:1;background:#0a0f17}
@media(min-width:1101px){
 .kp-site .kp-header .kp-container{width:92%;max-width:1680px;padding-inline:0}
 .kp-site .kp-topbar__inner{min-height:32px}
 .kp-site .kp-topbar__features{gap:clamp(20px,2.5vw,42px)}
 .kp-site .kp-feature__text strong{font-size:11px}
 .kp-site .kp-feature__text small{font-size:10px}
 .kp-site .kp-feature__icon{width:22px;height:22px;filter:drop-shadow(0 0 5px #ff790055)}
 .kp-site .kp-topbar__meta{gap:16px}
 .kp-site .kp-topbar__operator{display:inline-flex!important;align-items:center;font-size:10px;white-space:nowrap}
 .kp-site .kp-topbar__operator:before{content:"🇺🇸";font-size:16px;margin-right:7px}
 .kp-site .kp-langs--top{display:block}
 .kp-site .kp-mainbar__inner{min-height:72px;gap:clamp(18px,2vw,32px)}
 .kp-site .kp-mainbar__logo{flex:0 0 clamp(210px,17vw,270px)}
 .kp-site .kp-logo__img{width:100%;height:auto;max-height:70px;max-width:270px}
 .kp-site .kp-search{height:44px;max-width:none;border-radius:7px;padding:0 0 0 12px;box-shadow:none;border-color:#2b3d51;background:linear-gradient(#101825,#0b121c)}
 .kp-site .kp-search__input{font-size:13px}
 .kp-site .kp-search__select{height:42px;min-width:140px;font-size:12px}
 .kp-site .kp-search__submit{height:42px;min-width:106px;border-radius:6px;font-size:13px;box-shadow:0 0 15px #ff790035}
 .kp-site .kp-action__icon{width:34px;height:34px}
 .kp-site .kp-action__text strong{font-size:12px}
 .kp-site .kp-action__text small{font-size:10px}
 .kp-site .kp-navbar{position:relative;background:linear-gradient(#070e16,#040a0f);border-bottom:0;box-shadow:none}
 .kp-site .kp-navbar:before{content:none}
 .kp-site .kp-navbar:after{content:"";position:absolute;inset:0;width:100%;height:100%;opacity:1;pointer-events:none;z-index:2;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201672%2046%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%201%2036%2040Q40%2044%2050%2044H1622Q1632%2044%201636%2040L1672%201%22%20fill%3D%22none%22%20stroke%3D%22%23ff8500%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E") center bottom/100% 100% no-repeat;filter:drop-shadow(0 0 4px #ff7900) drop-shadow(0 0 11px #ff790088)}
 .kp-site .kp-navbar>.kp-container{position:relative;z-index:3}
 .kp-site .kp-navbar .kp-nav{width:100%;justify-content:center;gap:clamp(12px,2vw,32px)}
 .kp-site .kp-navbar .kp-nav>li{background:transparent!important;flex:0 1 auto}
 .kp-site .kp-navbar .kp-nav__link{min-height:46px;padding:0 clamp(8px,.9vw,16px);font-size:clamp(12px,.85vw,15px);font-weight:700;white-space:nowrap;background:transparent!important}
 .kp-site .kp-navbar .kp-nav__icon{width:20px;height:20px}
 .kp-site .kp-navbar .kp-nav__item--mega>.kp-nav__link{padding-right:3px}
 .kp-site .kp-nav__toggle{height:44px;margin-right:0}
 .kp-site .kp-nav__link.is-active,.kp-site .kp-nav__link[aria-current="page"],.kp-site .kp-nav__link:hover{color:#ff9700}
 .kp-site .kp-nav>li:has(>a[href*="/software/"]){display:none}
 .kp-site .kp-mega{border:1px solid #304258;border-top-color:#ff790065;border-radius:0 0 12px 12px;background:linear-gradient(#0d1723,#070d16);box-shadow:0 20px 36px #000b,0 0 14px #ff79000d}
 .kp-site .kp-mega__inner{padding-block:24px}
}
@media(min-width:1101px) and (max-width:1350px){
 .kp-site .kp-topbar__operator{font-size:9px}
 .kp-site .kp-topbar__meta{gap:11px}
 .kp-site .kp-topbar__features{gap:18px}
 .kp-site .kp-mainbar__logo{flex-basis:210px}
 .kp-site .kp-mainbar__inner{gap:18px}
 .kp-site .kp-action--account .kp-action__text{display:block}
 .kp-site .kp-navbar .kp-nav{gap:18px}
}
@media(max-width:1100px){
 .kp-site .kp-container{width:calc(100% - 32px);padding-inline:0}
 .kp-site::before,.kp-site::after{width:16px;background-size:100% auto;mask-image:none}
 .kp-site #kp-main{background:linear-gradient(90deg,transparent,#050b12 16px,#050b12 calc(100% - 16px),transparent)}
}
@media(max-width:700px){
 .kp-site::before,.kp-site::after{width:12px}
 .kp-site .kp-container{width:calc(100% - 28px)}
 .kp-site #kp-main{background:linear-gradient(90deg,transparent,#050b12 12px,#050b12 calc(100% - 12px),transparent)}
}

/* Align the final homepage banner with the surrounding content. */
.kp-site .kp-home-final-cta{width:90%;max-width:1520px;margin-inline:auto;border-radius:12px;overflow:hidden}
.kp-site .kp-home-final-cta>.kp-container{width:100%;max-width:none;box-sizing:border-box;padding-inline:32px}
@media(max-width:1100px){.kp-site .kp-home-final-cta{width:calc(100% - 32px)}}
@media(max-width:700px){.kp-site .kp-home-final-cta{width:calc(100% - 28px)}.kp-site .kp-home-final-cta>.kp-container{padding-inline:20px}}

/* Consistent neon treatment for buttons across KEYPLO. */
.kp-site :is(button,.button,.kp-btn,[role="button"],input[type="submit"],input[type="button"],.kp-denomination){
 --kp-button-neon:255,136,0;
 box-shadow:0 0 7px rgba(var(--kp-button-neon),.38),0 0 17px rgba(var(--kp-button-neon),.18),inset 0 0 7px rgba(var(--kp-button-neon),.08)!important;
 transition:box-shadow .18s ease,border-color .18s ease,background-color .18s ease;
}
.kp-site button.kp-buy-now{--kp-button-neon:255,205,0}
.kp-site :is(button,.button,.kp-btn,[role="button"],input[type="submit"],input[type="button"],.kp-denomination):is(:hover,:focus-visible){
 box-shadow:0 0 10px rgba(var(--kp-button-neon),.65),0 0 26px rgba(var(--kp-button-neon),.3),inset 0 0 10px rgba(var(--kp-button-neon),.12)!important;
}
.kp-site :is(button,.button,.kp-btn,[role="button"],input[type="submit"],input[type="button"],.kp-denomination):is(:disabled,[aria-disabled="true"],.disabled,.is-unavailable){
 box-shadow:none!important;
}
@media(prefers-reduced-motion:reduce){
 .kp-site :is(button,.button,.kp-btn,[role="button"],input[type="submit"],input[type="button"],.kp-denomination){transition:none}
}

/* Keep menu chevrons plain; the category opens its panel on hover. */
.kp-site .kp-navbar button.kp-nav__toggle,
.kp-site .kp-navbar button.kp-nav__toggle:hover,
.kp-site .kp-navbar button.kp-nav__toggle:focus-visible{
 box-shadow:none!important;
 background:transparent!important;
 border:0!important;
 border-radius:0;
}
.single-product .kp-denomination.is-selected::before{content:none!important;display:none!important}
.kp-site .kp-discount{
 box-shadow:0 0 9px rgba(255,20,65,.5),0 0 22px rgba(255,20,65,.25);
 text-shadow:0 0 6px rgba(255,255,255,.25);
}
.kp-site .kp-saving{
 box-shadow:0 0 9px rgba(0,210,120,.38),0 0 20px rgba(0,210,120,.18);
 text-shadow:0 0 7px rgba(80,255,170,.4);
}

/* First-visit privacy choices. */
html.kp-privacy-open{overflow:hidden}
.kp-privacy-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:30px;border:1px solid #ff8b0066;border-radius:14px;background:linear-gradient(135deg,#121c29,#080f18);color:#e9eef5;box-shadow:0 0 24px #ff85002b,0 24px 80px #0009}
.kp-privacy-dialog::backdrop{background:rgba(0,5,12,.76);backdrop-filter:blur(3px)}
.kp-privacy-dialog [hidden]{display:none!important}
.kp-privacy-eyebrow{color:#ff9700;font-size:12px;font-weight:800;letter-spacing:.15em}
.kp-privacy-dialog h2{font-size:24px;line-height:1.3;margin:12px 0 16px;color:#fff}
.kp-privacy-dialog p{font-size:14px;line-height:1.8;color:#b7c6d9;margin:0 0 16px}
.kp-privacy-dialog a{color:#ffa333;text-decoration:underline}
.kp-privacy-links{font-size:12px!important}
.kp-privacy-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.kp-privacy-actions .kp-btn{flex:1 1 130px;min-height:46px;padding:10px 12px;justify-content:center;font-size:13px;white-space:normal;text-align:center;cursor:pointer}
.kp-privacy-actions [data-kp-privacy-all]{background:#ff8b00;color:#080c11;border:1px solid #ff9c22;font-weight:800}
.kp-privacy-option{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid #ffffff15}
.kp-privacy-option strong{display:block;font-size:14px;color:#fff}
.kp-privacy-option small{display:block;font-size:12px;line-height:1.6;color:#a8b9cd;margin-top:5px}
.kp-privacy-option input{width:20px;height:20px;flex:0 0 20px;accent-color:#ff8b00}
.kp-cookie-settings-link{position:relative;z-index:1;background:#0a0f17;padding:0 5% 20px;text-align:center}
@media(max-width:600px){.kp-privacy-dialog{padding:22px}.kp-privacy-dialog h2{font-size:22px}.kp-privacy-actions .kp-btn{flex-basis:100%}}

/* Organized global footer */
.kp-footer{background:#0a0f17!important;background-image:none!important;padding:0!important;border-top:1px solid #26303e}
.kp-footer .kp-container{padding-top:0;padding-bottom:0}
.kp-footer-payments{display:flex;align-items:center;gap:28px;flex-wrap:wrap;padding:30px 0;border-bottom:1px solid #26303e}
.kp-footer-payments h2,.kp-footer-community h2{font-size:16px;margin:0 0 5px;color:#f5f7fb}
.kp-footer-coming{font-size:11px;color:#ffb978;letter-spacing:.06em;text-transform:uppercase}
.kp-payment-badges{display:flex;flex:1;gap:10px;flex-wrap:wrap}
.kp-payment-badge{display:flex;align-items:center;justify-content:center;min-width:100px;height:52px;padding:0 16px;border:1px solid #344051;border-radius:9px;background:#151e2b;color:#eef3fb;font-size:18px;white-space:nowrap}
.kp-pay-visa{font-size:26px;font-weight:900;font-style:italic;letter-spacing:-1px;color:#e6edff}
.kp-pay-mastercard{display:flex;align-items:center;flex-direction:column;line-height:1}
.kp-pay-mastercard svg{width:40px;height:25px}.kp-pay-mastercard small{font-size:9px}
.kp-pay-apple{display:flex;align-items:center;font-size:24px;font-weight:600;gap:3px}.kp-pay-apple svg{width:22px;height:25px}
.kp-pay-google{font-size:22px}.kp-pay-google b{color:#4285f4;font-size:27px}
.kp-pay-crypto b{color:#f9a32b;font-size:26px}
.kp-footer-payments>a{font-size:12px;color:#abb7c8;white-space:nowrap}
.kp-footer__grid{display:grid!important;grid-template-columns:1.5fr repeat(4,1fr)!important;gap:36px!important;padding:42px 0!important}
.kp-footer__about{max-width:280px;color:#98a6b9;line-height:1.8;font-size:13px}
.kp-footer__title{font-size:14px!important;margin-bottom:18px!important;color:#edf2fa}
.kp-footer__col ul{display:flex;flex-direction:column;gap:11px;margin:0;padding:0;list-style:none}
.kp-footer__col li{margin:0!important}.kp-footer__col a{font-size:13px;color:#9ba9bc;line-height:1.6}
.kp-footer__col a:hover,.kp-footer-payments>a:hover{color:#ffad61}
.kp-footer-community{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-top:1px solid #26303e}
.kp-footer-community p{margin:0;color:#8d9caf;font-size:12px}
.kp-footer-networks{display:flex;gap:10px;flex-wrap:wrap}
.kp-footer-network{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #344051;border-radius:50%;background:#151e2b;color:#d4deeb}
.kp-footer-network svg{width:17px;height:17px}
a.kp-footer-network:hover{border-color:#ff9d45;color:#ffad61;box-shadow:0 0 14px #ff9d4533}
.kp-footer-network--pending{color:#8f9db0}
.kp-footer__bottom{display:flex!important;align-items:flex-start;gap:30px;border-top:1px solid #26303e;padding:22px 0!important;margin:0!important}
.kp-footer__copy{white-space:nowrap;font-size:11px!important;color:#8795a8}
.kp-footer__legal{margin:0!important;font-size:10px!important;line-height:1.7;color:#708198}
.kp-back-to-top{position:fixed;right:24px;bottom:24px;z-index:1000;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:1px solid #ffb268!important;border-radius:50%;background:#f48c26!important;color:#10151f!important;box-shadow:0 0 18px #ff982655!important;cursor:pointer;padding:0!important}
.kp-back-to-top[hidden]{display:none!important}.kp-back-to-top svg{width:23px;height:23px}
.kp-back-to-top:hover{box-shadow:0 0 26px #ff982690!important}
@media(max-width:1100px){.kp-footer__grid{grid-template-columns:repeat(4,1fr)!important;gap:28px!important}.kp-footer__brand{grid-column:1/-1;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.kp-footer__brand .kp-footer__about{max-width:440px;margin:0}.kp-footer-community{flex-wrap:wrap}.kp-footer-networks{flex:1;min-width:320px}}
@media(max-width:640px){.kp-footer-payments{gap:18px;padding:24px 0}.kp-payment-badges{flex-basis:100%;gap:8px}.kp-payment-badge{min-width:88px;height:46px;padding:0 12px}.kp-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 20px!important;padding:30px 0!important}.kp-footer__brand{display:block}.kp-footer__brand .kp-footer__about{margin:16px 0}.kp-footer-networks{min-width:0;flex-basis:100%;gap:9px}.kp-footer__bottom{flex-direction:column;gap:8px}.kp-footer__copy{white-space:normal}.kp-back-to-top{right:16px;bottom:16px;width:42px;height:42px}.kp-footer-community{gap:18px}}

/* Compact footer with payment brand assets and bottom legal navigation */
.kp-footer__grid{grid-template-columns:1.45fr repeat(3,1fr)!important;gap:56px!important;padding:38px 0 30px!important}
.kp-footer__brand .custom-logo,.kp-footer__brand img{max-width:185px!important;height:auto!important}
.kp-footer__about{font-size:12px!important;line-height:1.75!important;max-width:275px;margin:16px 0 18px!important}
.kp-footer__col ul{gap:8px!important;display:flex!important}
.kp-footer__col li{padding:0!important;margin:0!important;line-height:1.5!important}
.kp-footer__col a{padding:0!important;margin:0!important;font-size:12px!important;line-height:1.7!important;display:inline!important}
.kp-footer__title{font-size:12px!important;margin:0 0 16px!important;letter-spacing:.04em}
.kp-footer-networks{gap:8px!important;max-width:270px;min-width:0!important}
.kp-footer-network{width:25px!important;height:25px!important;background:transparent!important;border:0!important;border-radius:0!important;color:#a5b0bf}
.kp-footer-network svg{width:17px!important;height:17px!important}
.kp-footer-payments{padding:18px 0!important;border-top:1px solid #26303e;gap:22px!important}
.kp-footer-payments h2{font-size:12px;margin:0 0 4px}
.kp-footer-coming{font-size:9px}
.kp-payment-badges{flex:initial!important;gap:8px!important}
.kp-payment-badge{min-width:0!important;width:57px!important;height:36px!important;padding:0!important;border:0!important;background:transparent!important;border-radius:4px!important;overflow:hidden;font-size:10px}
.kp-payment-badge>svg{display:block;width:57px!important;height:36px!important;flex-shrink:0}
.kp-footer-payments>a{margin-left:auto;font-size:11px}
.kp-footer-legal-links{display:flex;align-items:center;justify-content:flex-start;gap:8px 19px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid #26303e}
.kp-footer-legal-links a,.kp-footer-legal-links button{font-family:inherit;font-size:10px!important;line-height:1.8!important;color:#8694a7!important;text-decoration:none}
.kp-footer-legal-links button{background:none!important;border:0!important;padding:0!important;margin:0!important;border-radius:0!important;box-shadow:none!important;cursor:pointer}
.kp-footer-legal-links a:hover,.kp-footer-legal-links button:hover{color:#ffac60!important}
.kp-footer__bottom{border-top:0!important;justify-content:space-between;padding:16px 0 22px!important;gap:32px}
.kp-footer__copy{margin:0!important;font-size:10px!important}
.kp-footer__legal{max-width:560px;font-size:9px!important;text-align:right}
.kp-back-to-top{width:36px!important;height:36px!important;right:18px!important;bottom:18px!important}
.kp-back-to-top svg{width:19px!important;height:19px!important}
@media(max-width:1100px){.kp-footer__grid{grid-template-columns:1.25fr repeat(3,1fr)!important;gap:28px!important}.kp-footer__brand{grid-column:auto;display:block}.kp-footer__about{max-width:260px!important}}
@media(max-width:700px){.kp-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px!important;padding:28px 0!important}.kp-footer__brand{grid-column:1/-1}.kp-footer__about{max-width:400px!important}.kp-footer-networks{max-width:100%}.kp-footer-payments{gap:12px!important}.kp-payment-badges{flex-basis:auto!important}.kp-footer-payments>a{margin-left:0}.kp-footer-legal-links{gap:8px 14px}.kp-footer__legal{text-align:left}.kp-footer__bottom{gap:8px}}

.kp-footer__brand .kp-footer-networks{max-width:none;gap:7px!important}.kp-footer__brand .kp-footer-network{width:23px!important;height:23px!important}

/* Payment row above links, company identity below */
.kp-footer-payments{border-top:0!important;border-bottom:1px solid #26303e}
.kp-footer__grid{padding:30px 0!important}
.kp-footer-operator{display:grid;grid-template-columns:1.4fr 1fr 1.1fr;gap:48px;padding:24px 0;border-top:1px solid #26303e;border-bottom:1px solid #26303e;color:#8d9caf}
.kp-footer-operator h2,.kp-footer-operator h3{font-size:12px;font-weight:600;line-height:1.6;color:#bdc8d7;margin:0 0 8px}
.kp-footer-operator h2 span{font-weight:400;color:#8d9caf}
.kp-footer-operator p{font-size:11px;line-height:1.75;margin:0}
.kp-footer-operator__jurisdiction{margin-top:10px!important;font-size:10px!important;color:#728399}
.kp-footer-operator__social{justify-self:end;align-self:start}
.kp-footer-operator__social .kp-footer-networks{max-width:none;gap:7px!important}
.kp-footer-operator__social .kp-footer-network{width:23px!important;height:23px!important}
.kp-footer-legal-links{border-bottom:0!important;padding:16px 0 8px!important}
.kp-footer__bottom{padding:8px 0 22px!important}
@media(max-width:900px){.kp-footer-operator{gap:24px;grid-template-columns:1.3fr 1fr}.kp-footer-operator__social{grid-column:1/-1;justify-self:start}}
@media(max-width:550px){.kp-footer-operator{grid-template-columns:1fr;gap:20px}.kp-footer-operator__social{grid-column:auto}}
