/* KCU Loja: catálogo (index.html), páginas de produto e páginas de resultado.
   Mesma linguagem do resto do site: preto, cromado, Oswald + Inter + JetBrains Mono, menta como acento. */
:root{--bg:#cbd9f0;--p1:#e6eefa;--p2:#e6eefa;--line:rgba(0,0,0,.09);--line2:rgba(0,0,0,.18);
  --txt:#0a1a3a;--mute:#33476b;--steel:#0a1a3a;--mint:#066630;
  --disp:"Oswald",sans-serif;--sans:"Inter",system-ui,sans-serif;--mono:"JetBrains Mono",monospace}

/* ================= catálogo na página inicial ================= */
.k-cat .k-card{display:flex;flex-direction:column;margin-bottom:12px;border-radius:18px;overflow:hidden;position:relative;
  background:linear-gradient(180deg,var(--p2),var(--p1));border:1px solid var(--line);transition:transform .25s,border-color .25s,box-shadow .25s}
.k-cat .k-card:hover{transform:translateY(-3px);border-color:rgba(10,26,58,.5);box-shadow:0 18px 44px -22px rgba(10,26,58,.55)}
.k-card-capa{position:relative;height:118px;display:grid;place-items:center;overflow:hidden;
  background:radial-gradient(260px 120px at 30% 0%,rgba(6,102,48,.22),transparent 70%),radial-gradient(300px 160px at 90% 120%,rgba(10,26,58,.18),transparent 70%),
  repeating-linear-gradient(90deg,rgba(0,0,0,.03) 0 1px,transparent 1px 7px),#e6eefa;border-bottom:1px solid var(--line)}
.k-card-capa>i{font-size:44px;background:linear-gradient(180deg,#0a1a3a,#1d4ed8 55%,#0a1a3a);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 18px rgba(6,102,48,.35));animation:kfloat 4s ease-in-out infinite}
.k-card-capa img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.k-card-tag{position:absolute;top:12px;left:12px;font-size:10px;letter-spacing:.12em;padding:5px 9px;border-radius:6px;background:#0a1a3a;color:#cbd9f0;font-weight:700}
.k-card-corpo{display:flex;flex-direction:column;gap:7px;padding:16px 18px 18px}
.k-card-cat{color:var(--mute);font-size:10px!important}
.k-card-nome{font-family:var(--disp);font-size:24px;text-transform:uppercase;letter-spacing:.03em;font-weight:600;line-height:1.1}
.k-card-nome .badge{font-family:var(--mono);font-size:10px;letter-spacing:.1em;vertical-align:4px}
.k-card-desc{color:var(--mute);font-size:14px;line-height:1.5}
.k-card-ben{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;color:#0a1a3a;line-height:1.45;padding:9px 11px;border-radius:10px;
  background:rgba(6,102,48,.06);border:1px solid rgba(6,102,48,.18)}
.k-card-ben i{color:var(--mint);margin-top:3px;font-size:12px}
.k-card-pe{display:flex;align-items:center;justify-content:space-between;margin-top:6px}
.k-card-preco{font-family:var(--disp);font-size:28px;line-height:1}
.k-card-ver{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:99px;background:#0a1a3a;color:#cbd9f0;font-weight:600;font-size:14px;transition:.2s}
.k-card:hover .k-card-ver{background:var(--steel)}
.k-card-ver i{transition:transform .2s}.k-card:hover .k-card-ver i{transform:translateX(3px)}
@keyframes kfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

/* ================= página de produto ================= */
.k-prod{margin:0;background:var(--bg);color:var(--txt);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}
.k-prod *,.k-res *{box-sizing:border-box}
.k-prod h1,.k-prod h2,.k-prod h3,.k-prod p,.k-prod ul,.k-prod ol{margin:0;padding:0}
.k-prod a{color:inherit;text-decoration:none}
.k-prod ::selection{background:var(--steel);color:#cbd9f0}
.k-prod .mono{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.k-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(800px 520px at 50% -10%,rgba(10,26,58,.16),transparent 70%),repeating-linear-gradient(90deg,rgba(0,0,0,.018) 0 1px,transparent 1px 6px)}
.k-orb{position:fixed;z-index:0;pointer-events:none;width:520px;height:520px;border-radius:50%;filter:blur(90px);opacity:.2}
.k-orb.a{background:#0a1a3a;top:-200px;left:-180px;animation:kdrift 18s ease-in-out infinite alternate}
.k-orb.b{background:var(--mint);bottom:-240px;right:-200px;opacity:.11;animation:kdrift 22s ease-in-out infinite alternate-reverse}
@keyframes kdrift{to{transform:translate(120px,80px) scale(1.15)}}
.k-page{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:24px 18px 120px}
.k-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.k-back{display:inline-flex;align-items:center;gap:8px;color:var(--mute);padding:8px 12px;border-radius:10px;border:1px solid var(--line);background:var(--p1);transition:.2s}
.k-back:hover{color:var(--txt);border-color:var(--line2)}
.k-crumb{color:var(--mute)}
.k-kick{color:var(--mute)}
.k-kick .spark{display:inline-block;animation:kspin 6s linear infinite}
@keyframes kspin{to{transform:rotate(360deg)}}

.k-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;margin-top:46px}
.k-hero h1{font-family:var(--disp);font-weight:700;font-size:clamp(40px,6.4vw,70px);line-height:1;text-transform:uppercase;letter-spacing:.01em;margin-top:14px;
  background:linear-gradient(180deg,#0a1a3a 0%,#1e3fae 55%,#0a1a3a 100%);background-size:100% 220%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:kmetal 6s ease-in-out infinite}
@keyframes kmetal{0%,100%{background-position:0 0}50%{background-position:0 100%}}
.k-sub{color:#33476b;font-size:17px;line-height:1.6;margin-top:16px!important;max-width:560px}
.k-ben{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:12px 14px;border-radius:12px;background:rgba(6,102,48,.06);border:1px solid rgba(6,102,48,.2);color:#0a1a3a;font-size:15px;line-height:1.5;max-width:560px}
.k-ben i{color:var(--mint);margin-top:4px}
.k-preco{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:22px}
.k-preco b{font-family:var(--disp);font-size:46px;line-height:1}
.k-preco small{color:var(--mute);font-size:13px}
.k-preco.c{justify-content:center}
.k-form{margin:16px 0 0}
.k-buy{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 22px;border-radius:14px;border:0;font:600 16px var(--sans);cursor:pointer;
  background:#0a1a3a;color:#cbd9f0;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s,background .2s;min-width:240px}
.k-buy::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(0,0,0,.8) 50%,transparent 65%);transform:translateX(-120%);animation:kshine 3.2s ease-in-out 1.2s infinite;pointer-events:none}
@keyframes kshine{0%{transform:translateX(-120%)}45%,100%{transform:translateX(120%)}}
.k-buy:hover{background:var(--steel);transform:translateY(-1px);box-shadow:0 12px 34px -12px rgba(10,26,58,.7)}
.k-buy:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.k-buy-preco{font-family:var(--mono);font-size:12px;padding:3px 7px;border-radius:6px;background:rgba(244,244,245,.1)}
.k-buy.off{background:transparent;color:var(--txt);border:1px solid var(--line2);cursor:pointer}
.k-buy.off::after{display:none}
.k-buy.sm{min-width:0;padding:11px 16px;font-size:15px}
.k-trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.k-trust span{font-family:var(--mono);font-size:11px;letter-spacing:.05em;padding:7px 11px;border-radius:99px;border:1px solid var(--line);background:var(--p1);color:var(--steel)}
.k-trust i{margin-right:6px}

.k-term{border-radius:18px;border:1px solid var(--line2);background:linear-gradient(180deg,#dbe6f7,#e6eefa);box-shadow:0 30px 70px -30px rgba(6,102,48,.35);overflow:hidden}
.k-term-top{display:flex;align-items:center;gap:7px;padding:12px 14px;border-bottom:1px solid var(--line)}
.k-term-top i{width:10px;height:10px;border-radius:50%;background:#8fa7cf}
.k-term-top i:first-child{background:#a80800}.k-term-top i:nth-child(2){background:#d18f01}.k-term-top i:nth-child(3){background:#37d74f}
.k-term-top span{margin-left:8px;color:var(--mute)}
.k-term-body{padding:20px 22px;font-family:var(--mono);font-size:14.5px;line-height:1.95;color:#0a1a3a;white-space:pre}
.k-term-body .ln{opacity:0;transform:translateX(-6px);animation:kln .5s ease forwards}
.k-term-body .ln:first-child,.k-term-body .ln:nth-last-child(2){color:var(--mint)}
.k-term-body .ln:nth-child(1){animation-delay:.3s}.k-term-body .ln:nth-child(2){animation-delay:.55s}.k-term-body .ln:nth-child(3){animation-delay:.8s}
.k-term-body .ln:nth-child(4){animation-delay:1.05s}.k-term-body .ln:nth-child(5){animation-delay:1.3s}.k-term-body .ln:nth-child(6){animation-delay:1.55s}
.k-term-body .ln:nth-child(7){animation-delay:1.8s}.k-term-body .ln:nth-child(8){animation-delay:2.05s}
.k-term-body .cur{color:var(--mint);animation:kln .3s ease 2.2s forwards,kblink 1s steps(1) 2.5s infinite}
@keyframes kln{to{opacity:1;transform:none}}
@keyframes kblink{50%{opacity:0}}
.k-prod .k-term-nota{padding:0 22px 18px;color:var(--mute);font-size:13px;line-height:1.5}

.k-sec{margin-top:84px}
.k-sec h2,.k-final h2{font-family:var(--disp);font-size:clamp(30px,4.4vw,44px);text-transform:uppercase;line-height:1.05;margin-top:10px!important;max-width:760px}
.k-lead{color:#33476b;font-size:16.5px;line-height:1.65;margin-top:14px!important;max-width:720px}
.k-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin-top:20px!important}
.k-list li{display:flex;gap:12px;line-height:1.5;color:#0a1a3a;font-size:15.5px}
.k-list li i{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;margin-top:1px;background:rgba(6,102,48,.12);color:var(--mint)}
.k-list.x li i{background:rgba(168,8,0,.12);color:#7f0a00}
.k-duo{display:grid;grid-template-columns:1.3fr 1fr;gap:14px;margin-top:22px}
.k-box{padding:22px;border-radius:18px;background:var(--p1);border:1px solid var(--line)}
.k-box.ok{border-color:rgba(6,102,48,.28);background:linear-gradient(180deg,rgba(6,102,48,.05),var(--p1))}
.k-box h3{font-family:var(--disp);text-transform:uppercase;font-size:20px;letter-spacing:.03em}
.k-box .k-list{margin-top:14px!important}
.k-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:24px}
.k-tile{padding:20px;border-radius:16px;background:linear-gradient(180deg,var(--p2),var(--p1));border:1px solid var(--line);transition:transform .25s,border-color .25s}
.k-tile:hover{transform:translateY(-3px);border-color:var(--line2)}
.k-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:18px;background:#e6eefa;border:1px solid var(--line);color:var(--mint);margin-bottom:14px}
.k-tile b{display:block;font-weight:600;font-size:16px}
.k-tile p{color:var(--mute);font-size:14px;line-height:1.55;margin-top:6px!important}
.k-cont{position:relative;margin-top:22px;padding:22px;border-radius:18px;background:var(--p1);border:1px solid var(--line)}
.k-cont ol{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.k-cont li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:15px}
.k-cont li .mono{color:var(--mute);font-size:12px;letter-spacing:.06em}
.k-cont li.lock span:nth-child(2){filter:blur(5px);user-select:none;color:var(--mute)}
.k-cont li.lock i{margin-left:auto;color:var(--mute);font-size:12px}
.k-spoiler{margin-top:16px;text-align:center;color:var(--mint);padding:11px;border-radius:12px;background:rgba(6,102,48,.06);border:1px dashed rgba(6,102,48,.3)}
.k-band{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:84px;padding:22px 24px;border-radius:20px;
  border:1px solid rgba(29,78,216,.35);background:linear-gradient(120deg,#c3d3ee,#e6eefa);box-shadow:0 18px 50px -24px rgba(10,26,58,.5)}
.k-band b{display:block;font-family:var(--disp);font-size:26px;text-transform:uppercase}
.k-band span{color:var(--mute);font-size:14px}
.k-band-dir{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.k-band-dir .k-form{margin:0}
.k-band .k-band-preco{font-family:var(--disp);font-size:34px;color:var(--txt)}
.k-steps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:24px!important}
.k-steps li{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:16px;background:var(--p1);border:1px solid var(--line);color:#0a1a3a;line-height:1.5;font-size:15px}
.k-n{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-family:var(--mono);font-weight:700;background:var(--mint);color:#cbd9f0}
.k-lic{display:flex;gap:16px;padding:20px 22px;border-radius:16px;border:1px solid var(--line);border-left:3px solid var(--steel);background:var(--p1)}
.k-lic>i{color:var(--steel);font-size:20px;margin-top:2px}
.k-lic p{color:var(--mute);margin-top:6px!important;line-height:1.6;font-size:14.5px}
.k-lic a{text-decoration:underline}
.k-faq-lista{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:12px;margin-top:22px}
.k-faq details{border:1px solid var(--line);background:var(--p1);border-radius:14px;padding:15px 18px;transition:border-color .25s,background .25s}
.k-faq details[open]{border-color:var(--line2);background:var(--p2)}
.k-faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}
.k-faq summary::-webkit-details-marker{display:none}
.k-faq summary::after{content:"+";color:var(--mute)}
.k-faq details[open] summary::after{content:"–"}
.k-faq details p{color:var(--mute);margin-top:10px!important;line-height:1.6;font-size:14.5px}
.k-final{margin-top:84px;text-align:center;padding:40px 22px;border-radius:22px;border:1px dashed var(--line2);background:radial-gradient(500px 220px at 50% 0%,rgba(6,102,48,.08),transparent 70%)}
.k-final h2{margin-inline:auto}
.k-final>p{color:var(--mute);max-width:540px;margin:12px auto 0!important;line-height:1.6}
.k-fino{font-size:13px!important;margin-top:14px!important}
.k-fino a{text-decoration:underline}
.k-foot{text-align:center;color:var(--mute);margin-top:44px;line-height:1.9;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.k-foot a:hover{color:var(--txt)}
.k-sticky{position:fixed;left:10px;right:10px;bottom:10px;z-index:20;display:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 16px;border-radius:16px;
  background:rgba(230,238,250,.94);backdrop-filter:blur(10px);border:1px solid var(--line2);box-shadow:0 18px 40px -10px rgba(10,26,58,.45);transform:translateY(140%);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.k-sticky.on{transform:none}
.k-sticky b{display:block;font-size:14px}.k-sticky small{color:var(--mute);font-family:var(--mono);font-size:12px}
.k-sticky .k-form{margin:0}
.rv{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}
.rv.in{opacity:1;transform:none}
@media (max-width:860px){
  .k-hero{grid-template-columns:1fr;gap:28px;margin-top:30px}
  .k-duo{grid-template-columns:1fr}
  .k-cont ol,.k-faq-lista{grid-template-columns:1fr}
  .k-sec,.k-band,.k-final{margin-top:60px}
  .k-sticky{display:flex}
  .k-buy{width:100%}.k-buy.sm{width:auto}
  .k-band-dir{width:100%}.k-band-dir .k-form{flex:1}
  .k-crumb{display:none}
}
@media (max-width:420px){.k-term-body{font-size:12.5px;padding:16px}.k-preco b{font-size:40px}}
@media (prefers-reduced-motion:reduce){.k-prod *,.k-cat *{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}.k-term-body .ln{opacity:1;transform:none}.k-orb{display:none}}

/* ================= páginas de resultado (sucesso, pendente, cancelado, erro) ================= */
.k-res{margin:0;background:var(--bg);color:var(--txt);font-family:Inter,system-ui,sans-serif;min-height:100vh}
.k-res::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(700px 480px at 50% -10%,rgba(6,102,48,.14),transparent 70%)}
.k-res a{color:inherit;text-decoration:none}
.k-res h1,.k-res h2,.k-res p,.k-res ol{margin:0;padding:0}
.k-rpage{position:relative;max-width:560px;margin:0 auto;padding:64px 18px 40px;text-align:center}
.k-res .ok{width:72px;height:72px;margin:0 auto;border-radius:50%;display:grid;place-items:center;font-size:34px;font-weight:700;color:#cbd9f0;background:var(--mint);box-shadow:0 0 40px rgba(6,102,48,.45);position:relative;animation:okpop .7s cubic-bezier(.3,1.6,.5,1) both}
.k-res .ok::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--mint);animation:ring 2.2s ease-out .6s infinite}
.k-res .ok.no{background:#8fa7cf;color:#0a1a3a;box-shadow:none;animation:shake .5s ease .2s both}.k-res .ok.no::after{display:none}
.k-res .ok.wait{background:#c3d3ee;color:var(--mint);box-shadow:0 0 30px rgba(6,102,48,.2)}
@keyframes okpop{0%{transform:scale(0) rotate(-90deg);opacity:0}100%{transform:none;opacity:1}}
@keyframes ring{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.9);opacity:0}}
@keyframes shake{0%,100%{transform:none}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.k-res .mono{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-top:22px}
.k-res h1{font-family:Oswald,sans-serif;font-size:clamp(38px,10vw,56px);text-transform:uppercase;line-height:1;margin-top:10px}
.k-res p.lead{color:var(--mute);margin:14px auto 0;line-height:1.6;max-width:440px}
.k-res .dl{display:flex;flex-direction:column;gap:10px;margin-top:30px;text-align:left}
.k-res .btn{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:linear-gradient(180deg,var(--p2),var(--p1));border:1px solid var(--line);transition:transform .25s,border-color .25s}
.k-res .btn:hover{border-color:var(--line2);transform:translateY(-3px)}
.k-res .btn.main{border-color:rgba(6,102,48,.5);box-shadow:0 14px 40px -20px rgba(6,102,48,.6)}
.k-res .btn .ic{width:46px;height:46px;flex:none;border-radius:12px;display:grid;place-items:center;font-family:"JetBrains Mono",monospace;font-size:12px;font-weight:700;background:#e6eefa;border:1px solid var(--line)}
.k-res .btn.main .ic{background:var(--mint);color:#cbd9f0;border-color:var(--mint)}
.k-res .btn b{display:block;font-weight:600}.k-res .btn small{color:var(--mute);font-size:13px}.k-res .btn .ar{margin-left:auto;color:var(--mute)}
.k-res .steps{margin-top:30px;text-align:left;border:1px dashed var(--line2);border-radius:16px;padding:18px 20px}
.k-res .steps h2{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:20px;margin-bottom:10px}
.k-res .steps li{color:#0a1a3a;margin:8px 0 8px 18px;line-height:1.5;font-size:14.5px}
.k-res .steps code{font-family:"JetBrains Mono",monospace;font-size:12.5px;background:var(--p2);padding:1px 6px;border-radius:5px}
.k-res footer{margin-top:30px;color:var(--mute);font-size:13px;line-height:1.8}.k-res footer a{color:var(--txt)}
@media (prefers-reduced-motion:reduce){.k-res *{animation:none!important;transition:none!important}}

/* ================= O OURO: o botão na página inicial ================= */
.btn.main.k-ouro{border:1px solid transparent;background:linear-gradient(120deg,#ebe5d5,#f6f4ed) padding-box,conic-gradient(from var(--ang,0deg),rgba(200,163,43,.25),#574100,rgba(235,205,135,.55),rgba(200,163,43,.3),#3b2f00,rgba(200,163,43,.25)) border-box;box-shadow:0 14px 44px -18px rgba(153,112,0,.55)}
.btn.main.k-ouro .ic{color:#997000;background:#f4f1e9;border-color:rgba(153,112,0,.32)}
.btn.main.k-ouro b{font-family:var(--disp);font-size:21px;letter-spacing:.08em;background:linear-gradient(180deg,#292000,#997000 55%,#e0ae36);-webkit-background-clip:text;background-clip:text;color:transparent}
.btn.main.k-ouro:hover .ar{color:#997000}

/* ================= página O OURO ================= */
.k-orb.b.ouro{background:#997000;opacity:.12}
.k-o-hero{text-align:center;margin-top:56px}
.k-o-hero h1{font-family:var(--disp);font-weight:700;font-size:clamp(72px,14vw,156px);line-height:.92;letter-spacing:.03em;margin-top:14px!important;
  background:linear-gradient(180deg,#231c00 0%,#997000 42%,#f4c247 72%,#5f4900 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 18px 44px rgba(153,112,0,.28))}
.k-o-hero .k-sub{max-width:620px;margin:16px auto 0!important;color:#33476b;font-size:17px;line-height:1.6}
.k-o-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px}
.k-o-stats span{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:99px;border:1px solid var(--line);background:var(--p1);font-size:13px;color:#0a1a3a}
.k-o-stats i{color:#997000}
.k-o-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;margin-top:26px}
.k-o-card{display:flex;flex-direction:column;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:linear-gradient(180deg,var(--p2),var(--p1));
  transition:transform .25s,border-color .25s,box-shadow .25s}
.k-o-card:hover{transform:translateY(-4px);border-color:rgba(153,112,0,.45);box-shadow:0 26px 60px -30px rgba(153,112,0,.5)}
/* entrada dos cartões (02/11): a transition do .k-o-card anulava a do .rv e a opacidade saltava de 0 para 1; agora entram com animação própria, em cascata pelo --i (máximo 2 passos) */
.k-o-card.rv.in{animation:korise .6s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(min(var(--i,0),2)*90ms)}
@keyframes korise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
/* 02/11: nos browsers com animações ligadas ao scroll (Chrome, Edge, Android, Safari 26) a entrada de cada bloco segue o dedo: aparece à medida que entra no ecrã, em vez de saltar quando o observador dispara. `translate` em vez de `transform` para o hover dos cartões continuar a funcionar. */
@supports (animation-timeline:view()){
  .k-prod .rv,.k-prod .rv.in{opacity:1;transform:none;transition:none;animation:kview linear both;animation-timeline:view();animation-range:entry 0% entry 45%;animation-delay:0s}
  .k-prod .k-o-card.rv,.k-prod .k-o-card.rv.in{transition:transform .25s,border-color .25s,box-shadow .25s}
  @keyframes kview{from{opacity:0;translate:0 26px}to{opacity:1;translate:0 0}}
}
.k-o-capa{position:relative;aspect-ratio:16/9;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 40%,#c3d3ee,#e6eefa);border-bottom:1px solid var(--line)}
.k-o-capa img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left;transition:transform .5s}
.k-o-card:hover .k-o-capa img{transform:scale(1.04)}
.k-o-capa>i{font-size:62px;background:linear-gradient(180deg,#0a1a3a,#1d4ed8 55%,#0a1a3a);-webkit-background-clip:text;background-clip:text;color:transparent}
.k-o-corpo{display:flex;flex-direction:column;gap:9px;padding:20px 22px 22px;flex:1}
.k-o-nome{font-family:var(--disp);font-size:28px;text-transform:uppercase;letter-spacing:.03em;font-weight:600;line-height:1.05}
.k-o-nome .badge{font-family:var(--mono);font-size:10px;letter-spacing:.1em;vertical-align:5px}
.k-o-desc{color:var(--mute);font-size:14.5px;line-height:1.55}
.k-o-inc{list-style:none;display:flex;flex-direction:column;gap:6px;margin:4px 0 0!important;padding:0}
.k-o-inc li{display:flex;gap:9px;align-items:flex-start;font-size:14px;color:#0a1a3a;line-height:1.45}
.k-o-inc i{color:var(--mint);font-size:12px;margin-top:4px}
.k-o-pe{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}
.k-o-preco{font-family:var(--disp);font-size:36px;font-weight:600;line-height:1}
.k-o-preco small{display:block;font-family:var(--sans);font-size:11.5px;color:var(--mute);font-weight:400;margin-top:6px;max-width:190px;line-height:1.35}
.k-o-preco.breve{font-size:22px;color:var(--mute)}
.k-o-ver{display:inline-flex;align-items:center;gap:8px;padding:11px 15px;border-radius:12px;background:#0a1a3a;color:#cbd9f0;font-weight:600;font-size:14px;white-space:nowrap;transition:background .2s}
.k-o-card:hover .k-o-ver{background:#997000}
.k-o-ver.off{background:transparent;color:var(--mute);border:1px solid var(--line2)}
.k-o-card.breve{opacity:.75}
.k-o-final{text-align:center}
.k-o-final p{max-width:560px;margin:12px auto 0!important;color:#33476b;line-height:1.6}
.k-o-ig{display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:13px 20px;border-radius:14px;background:#0a1a3a;color:#cbd9f0!important;font-weight:600}
.k-o-ig:hover{background:#997000}

/* ================= prints reais na página de produto ================= */
.k-gal-grupo{margin-top:36px!important;display:flex;align-items:center;gap:12px}
.k-gal-grupo span{color:var(--mint)}
.k-gal-grupo::after{content:"";flex:1;height:1px;background:var(--line)}
.k-gal{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.k-shot{margin:0;display:flex;flex-direction:column;gap:10px}
.k-shot.grande{grid-column:1/-1}
.k-shot-img{display:block;width:100%;padding:0;font:inherit;color:inherit;text-align:left;border:1px solid var(--line2);border-radius:14px;overflow:hidden;background:#e6eefa;cursor:zoom-in;
  transition:transform .25s,box-shadow .25s,border-color .25s;box-shadow:0 30px 70px -40px rgba(10,26,58,.45)}
.k-shot-img:hover{transform:translateY(-3px);border-color:rgba(6,102,48,.4);box-shadow:0 30px 70px -30px rgba(6,102,48,.28)}
.k-shot-top{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);background:#e6eefa}
.k-shot-top i{width:9px;height:9px;border-radius:50%;background:#8fa7cf;display:block}
.k-shot-top i:first-child{background:#a80800}.k-shot-top i:nth-child(2){background:#d18f01}.k-shot-top i:nth-child(3){background:#37d74f}
.k-shot-top .mono{margin-left:8px;color:var(--mute);font-size:10px!important;text-transform:none!important;letter-spacing:.06em!important}
.k-shot-img img{display:block;width:100%;height:auto}
.k-shot figcaption{display:flex;flex-direction:column;gap:3px;padding:0 4px}
.k-shot figcaption b{font-size:15px;font-weight:600}
.k-shot.grande figcaption b{font-size:17px}
.k-shot figcaption span{font-size:13.5px;color:var(--mute);line-height:1.5}
.k-lb{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:4vh 3vw;background:rgba(230,238,250,.94);backdrop-filter:blur(6px);cursor:zoom-out}
.k-lb[hidden]{display:none}
.k-lb img{max-width:100%;max-height:92vh;border-radius:12px;border:1px solid var(--line2);box-shadow:0 40px 100px -30px rgba(10,26,58,.45)}
.k-lb-x{position:absolute;top:16px;right:16px;width:44px;height:44px;border-radius:50%;border:1px solid var(--line2);background:#e6eefa;color:#0a1a3a;font-size:18px;cursor:pointer}
@media (max-width:760px){.k-gal{grid-template-columns:1fr 1fr;gap:12px}.k-o-grid{grid-template-columns:1fr}.k-o-pe{flex-wrap:wrap}}
@media (max-width:480px){.k-gal{grid-template-columns:1fr}}
/* contraste: o preço dentro do botão claro herda a cor do botão (a regra .k-band span punha-o cinzento) */
.k-buy .k-buy-preco{color:inherit}
/* foco visível em tudo o que se usa com o teclado */
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--mint,#066630);outline-offset:3px}

/* ===== tema claro (MON-290): cores fortes nos botões de compra ===== */
:root{--acc:#1d4ed8;--acc2:#1e3fae;--ok:#066630;--bg:#cbd9f0;--p1:#ffffff;--p2:#cbd9f0}
.k-bg{background:radial-gradient(800px 520px at 50% -10%,rgba(29,78,216,.10),transparent 70%)!important}
.k-orb.a{background:#1d4ed8!important;opacity:.14!important}.k-orb.b{background:#16a34a!important;opacity:.12!important}
.k-buy,.k-card-ver,.k-o-ver,.k-o-ig,.pill,.tab.on{background:var(--acc)!important;color:#fff!important;border-color:var(--acc)!important}
.k-buy:hover,.k-card:hover .k-card-ver,.k-o-ver:hover,.k-o-ig:hover,.pill:hover{background:var(--acc2)!important;color:#fff!important}
.k-buy .k-buy-preco{background:rgba(255,255,255,.2)!important;color:#fff!important}
.k-card-tag{background:var(--acc)!important;color:#fff!important}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--acc)!important}

/* paleta A */
:root{--bg:#cbd9f0;--p1:#e6eefa;--p2:#e6eefa;--txt:#0a1a3a;--mute:#33476b;--steel:#0a1a3a;--mint:#066630;--acc:#1d4ed8;--acc2:#1e3fae;--ok:#066630;--line:#8fa7cf;--line2:#8fa7cf}
html,body{background:#cbd9f0!important;color:#0a1a3a!important}
.k-bg{background:radial-gradient(800px 520px at 50% -10%,#1d4ed833,transparent 70%)!important}
.k-orb.a{background:#1d4ed8!important;opacity:.18!important}.k-orb.b{background:#3b82f6!important;opacity:.14!important}

/* faixa de novidade, topo de / e /ouro (MON-300, paleta A) */
.k-faixa{position:relative;z-index:30;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 44px;background:#1d4ed8;color:#fff;font-size:14px;line-height:1.35;text-align:center}
.k-faixa a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.k-faixa a:hover{color:#e6eefa}
.k-faixa-fechar{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:30px;height:30px;display:grid;place-items:center;border-radius:8px;cursor:pointer;font-size:20px;line-height:1;color:#fff}
.k-faixa-fechar:hover{background:#1e3fae}
.k-faixa-x:checked+.k-faixa{display:none}
/* MON-366: imagens da página de vendas (capas, hero da /ouro, 3 passos, prova) */
.k-o-capa img{object-position:center}
.k-o-hero-img{display:block;width:100%;max-width:1100px;height:auto;margin:32px auto 0;border-radius:22px;border:1px solid var(--line);box-shadow:0 30px 70px -30px rgba(10,26,58,.35)}
.k-passos li{flex-direction:column;align-items:center;text-align:center}
.k-passo-img{display:block;width:100%;max-width:220px;height:auto;border-radius:14px}
.k-gal.k-prova{grid-template-columns:repeat(2,1fr)}
.k-hero-media{display:flex;flex-direction:column;gap:18px}
.k-capa{display:block;width:100%;height:auto;border-radius:18px;border:1px solid var(--line);box-shadow:0 30px 70px -30px rgba(10,26,58,.35)}
@media (max-width:480px){.k-gal.k-prova{grid-template-columns:1fr}}/* MON-395: rodapé dos cartões da /ouro à mesma altura (preço + botão numa linha, nota por baixo com 2 linhas reservadas) */
.k-o-pe{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px;row-gap:6px}
.k-o-preco{display:contents}
.k-o-preco small{grid-column:1/-1;grid-row:2;max-width:none;margin-top:0;min-height:2.7em}
.k-o-ver{grid-column:2;grid-row:1}
/* MON-395: molduras iguais por secção, imagem inteira (contain), sem esticar nem cortar */
.k-o-capa{aspect-ratio:3/2}
.k-capa{aspect-ratio:3/2;object-fit:cover}
.k-prova .k-shot-img img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#e6eefa}
.k-gal-sec .k-shot-img img{width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;background:#e6eefa}
/* MON-395: com background-clip:text e line-height:1 o til e o cedilha da 1.a/última linha ficavam fora da caixa pintada */
.k-hero h1{padding:.14em 0 .1em;margin-top:4px}
/* MON-395: Oswald estática nos pesos 600/700 (a variável perde o til do Ã/Õ acima de ~70 px no Chrome). Igual ao /fontes/fontes.css; aqui porque o loja.css leva ?v= e passa a cache. */
@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url(/fontes/oswald-latin-600-estatica.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;src:url(/fontes/oswald-latin-700-estatica.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* ===== tema Ouro, só na página /ouro (Gabriel, 07/11). Gerado por tema.py a partir das regras de cima. ===== */
body.k-ouro-pag{--bg:#efe6cf;--p1:#f8f3e6;--p2:#f8f3e6;--txt:#2a1f00;--mute:#5a4719;--steel:#2a1f00}
body.k-ouro-pag .k-cat .k-card:hover{border-color:rgba(42,31,0,.5);box-shadow:0 18px 44px -22px rgba(42,31,0,.55)}
body.k-ouro-pag .k-card-capa{background:radial-gradient(260px 120px at 30% 0%,rgba(6,102,48,.22),transparent 70%),radial-gradient(300px 160px at 90% 120%,rgba(42,31,0,.18),transparent 70%),
  repeating-linear-gradient(90deg,rgba(0,0,0,.03) 0 1px,transparent 1px 7px),#f8f3e6}
body.k-ouro-pag .k-card-capa>i{background:linear-gradient(180deg,#2a1f00,#7a5900 55%,#2a1f00)}
body.k-ouro-pag .k-card-tag{background:#2a1f00;color:#efe6cf}
body.k-ouro-pag .k-card-ben{color:#2a1f00}
body.k-ouro-pag .k-card-ver{background:#2a1f00;color:#efe6cf}
body.k-ouro-pag.k-prod ::selection{color:#efe6cf}
body.k-ouro-pag .k-bg{background:radial-gradient(800px 520px at 50% -10%,rgba(42,31,0,.16),transparent 70%),repeating-linear-gradient(90deg,rgba(0,0,0,.018) 0 1px,transparent 1px 6px)}
body.k-ouro-pag .k-orb.a{background:#2a1f00}
body.k-ouro-pag .k-hero h1{background:linear-gradient(180deg,#2a1f00 0%,#5e4400 55%,#2a1f00 100%)}
body.k-ouro-pag .k-sub{color:#5a4719}
body.k-ouro-pag .k-ben{color:#2a1f00}
body.k-ouro-pag .k-buy{background:#2a1f00;color:#efe6cf}
body.k-ouro-pag .k-buy:hover{box-shadow:0 12px 34px -12px rgba(42,31,0,.7)}
body.k-ouro-pag .k-term{background:linear-gradient(180deg,#dbe6f7,#f8f3e6)}
body.k-ouro-pag .k-term-top i{background:#cdb67a}
body.k-ouro-pag .k-term-body{color:#2a1f00}
body.k-ouro-pag .k-lead{color:#5a4719}
body.k-ouro-pag .k-list li{color:#2a1f00}
body.k-ouro-pag .k-ic{background:#f8f3e6}
body.k-ouro-pag .k-band{border:1px solid rgba(122,89,0,.35);background:linear-gradient(120deg,#e6d9b6,#f8f3e6);box-shadow:0 18px 50px -24px rgba(42,31,0,.5)}
body.k-ouro-pag .k-steps li{color:#2a1f00}
body.k-ouro-pag .k-n{color:#efe6cf}
body.k-ouro-pag .k-sticky{background:rgba(248,243,230,.94);box-shadow:0 18px 40px -10px rgba(42,31,0,.45)}
body.k-ouro-pag .k-res .ok{color:#efe6cf}
body.k-ouro-pag .k-res .ok.no{background:#cdb67a;color:#2a1f00}
body.k-ouro-pag .k-res .ok.wait{background:#e6d9b6}
body.k-ouro-pag .k-res .btn .ic{background:#f8f3e6}
body.k-ouro-pag .k-res .btn.main .ic{color:#efe6cf}
body.k-ouro-pag .k-res .steps li{color:#2a1f00}
body.k-ouro-pag .k-o-hero .k-sub{color:#5a4719}
body.k-ouro-pag .k-o-stats span{color:#2a1f00}
body.k-ouro-pag .k-o-capa{background:radial-gradient(circle at 50% 40%,#e6d9b6,#f8f3e6)}
body.k-ouro-pag .k-o-capa>i{background:linear-gradient(180deg,#2a1f00,#7a5900 55%,#2a1f00)}
body.k-ouro-pag .k-o-inc li{color:#2a1f00}
body.k-ouro-pag .k-o-ver{background:#2a1f00;color:#efe6cf}
body.k-ouro-pag .k-o-final p{color:#5a4719}
body.k-ouro-pag .k-o-ig{background:#2a1f00;color:#efe6cf!important}
body.k-ouro-pag .k-shot-img{background:#f8f3e6;box-shadow:0 30px 70px -40px rgba(42,31,0,.45)}
body.k-ouro-pag .k-shot-top{background:#f8f3e6}
body.k-ouro-pag .k-shot-top i{background:#cdb67a}
body.k-ouro-pag .k-lb{background:rgba(248,243,230,.94)}
body.k-ouro-pag .k-lb img{box-shadow:0 40px 100px -30px rgba(42,31,0,.45)}
body.k-ouro-pag .k-lb-x{background:#f8f3e6;color:#2a1f00}
body.k-ouro-pag{--acc:#7a5900;--acc2:#5e4400;--bg:#efe6cf;--p2:#efe6cf}
body.k-ouro-pag .k-bg{background:radial-gradient(800px 520px at 50% -10%,rgba(122,89,0,.10),transparent 70%)!important}
body.k-ouro-pag .k-orb.a{background:#7a5900!important}
body.k-ouro-pag .k-orb.b{background:#e0ae36!important}
body.k-ouro-pag{--bg:#efe6cf;--p1:#f8f3e6;--p2:#f8f3e6;--txt:#2a1f00;--mute:#5a4719;--steel:#2a1f00;--acc:#7a5900;--acc2:#5e4400;--line:#cdb67a;--line2:#cdb67a}
html:has(>body.k-ouro-pag),body.k-ouro-pag{background:#efe6cf!important;color:#2a1f00!important}
body.k-ouro-pag .k-bg{background:radial-gradient(800px 520px at 50% -10%,#7a590033,transparent 70%)!important}
body.k-ouro-pag .k-orb.a{background:#7a5900!important}
body.k-ouro-pag .k-orb.b{background:#c8a32b!important}
body.k-ouro-pag .k-faixa{background:#7a5900}
body.k-ouro-pag .k-faixa a:hover{color:#f8f3e6}
body.k-ouro-pag .k-faixa-fechar:hover{background:#5e4400}
body.k-ouro-pag .k-o-hero-img{box-shadow:0 30px 70px -30px rgba(42,31,0,.35)}
body.k-ouro-pag .k-capa{box-shadow:0 30px 70px -30px rgba(42,31,0,.35)}
body.k-ouro-pag .k-prova .k-shot-img img{background:#f8f3e6}
body.k-ouro-pag .k-gal-sec .k-shot-img img{background:#f8f3e6}

/* ===== /ouro: entrada ao abrir a página (Gabriel, 07/11: "está sem motion quando abre") =====
   O topo já está no ecrã ao abrir, por isso a animação de scroll (kview) não se via. Aqui entra em cascata ao carregar. */
body.k-ouro-pag .k-o-hero.rv,body.k-ouro-pag .k-o-hero.rv.in{animation:none!important;opacity:1;transform:none;translate:none}
body.k-ouro-pag .k-o-hero>*{animation:kouro-in .9s cubic-bezier(.2,.8,.2,1) both}
body.k-ouro-pag .k-o-hero>.k-kick{animation-delay:.05s}
body.k-ouro-pag .k-o-hero>h1{animation:kouro-in 1s cubic-bezier(.2,.8,.2,1) .15s both,kouro-brilho 2.6s ease-in-out 1.1s 1 both}
body.k-ouro-pag .k-o-hero>.k-sub{animation-delay:.35s}
body.k-ouro-pag .k-o-hero>.k-o-stats{animation-delay:.5s}
body.k-ouro-pag .k-o-hero>.k-o-hero-img{animation:kouro-img 1.2s cubic-bezier(.2,.8,.2,1) .6s both}
body.k-ouro-pag .k-nav{animation:kouro-in .7s cubic-bezier(.2,.8,.2,1) both}
@keyframes kouro-in{from{opacity:0;transform:translateY(22px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes kouro-img{from{opacity:0;transform:translateY(30px) scale(.96);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}
@keyframes kouro-brilho{0%{filter:none}40%{filter:drop-shadow(0 0 18px rgba(224,174,54,.55)) brightness(1.12)}100%{filter:none}}
@media (prefers-reduced-motion:reduce){body.k-ouro-pag .k-o-hero>*,body.k-ouro-pag .k-nav{animation:none!important;opacity:1;transform:none;filter:none}}
