:root{
  --bg:#020813;
  --bg2:#071a33;
  --card:#0a1627;
  --text:#f5f7fb;
  --muted:#aebcd0;
  --blue:#1672ff;
  --blue2:#00c9ff;
  --line:rgba(255,255,255,.12);
  --shadow:0 20px 80px rgba(0,136,255,.15);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(circle at 70% 18%,rgba(20,155,255,.24),transparent 26%),
    radial-gradient(circle at 18% 25%,rgba(0,209,255,.12),transparent 24%),
    linear-gradient(180deg,#02050d 0%,#051224 44%,#030811 100%);
  color:var(--text);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.network-canvas{
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  z-index:0;
  pointer-events:none;
  opacity:1;
}
.site-header,main,.footer,.legal{
  position:relative;
  z-index:1;
}
.site-header{
  min-height:100vh;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(2,8,22,.72),rgba(6,19,40,.62));
}
.nav{
  position:fixed;
  top:0;left:0;right:0;
  z-index:20;
  height:74px;
  padding:0 clamp(18px,5vw,82px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:rgba(2,5,13,.84);
  backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line);
}
.brand img{
  width:130px;
  height:auto;
  max-height:58px;
  object-fit:contain;
}
.nav-links{
  display:flex;
  align-items:center;
  gap:25px;
  font-size:14px;
  color:#dce7f7;
}
.nav-links a{position:relative}
.nav-links a:not(.nav-cta):after{
  content:"";
  position:absolute;
  height:2px;
  left:0;
  right:100%;
  bottom:-8px;
  background:var(--blue2);
  transition:.25s;
}
.nav-links a:hover:after{right:0}
.nav-cta{
  background:linear-gradient(135deg,var(--blue),var(--blue2));
  color:white;
  padding:12px 20px;
  border-radius:10px;
  font-weight:800;
  box-shadow:0 10px 30px rgba(17,140,255,.28);
}
.menu-toggle{
  display:none;
  background:none;
  border:0;
  color:white;
  font-size:28px;
}
.hero{
  min-height:100vh;
  display:grid;
  grid-template-columns:1fr .9fr;
  align-items:center;
  gap:40px;
  padding:122px clamp(18px,6vw,92px) 70px;
}
.eyebrow{
  color:var(--blue2);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:850;
  font-size:13px;
}
h1,h2,h3,p{margin-top:0}
h1{
  font-size:clamp(42px,6vw,82px);
  line-height:.96;
  letter-spacing:-.055em;
  margin-bottom:24px;
  max-width:800px;
}
h1 span{color:var(--blue)}
.hero-text{
  font-size:19px;
  line-height:1.75;
  color:#d7e2f3;
  max-width:720px;
}
.hero-actions{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin:30px 0 36px;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:14px 22px;
  border-radius:12px;
  font-weight:850;
  transition:.25s;
  border:1px solid transparent;
  cursor:pointer;
}
.btn.primary{
  background:linear-gradient(135deg,var(--blue),var(--blue2));
  box-shadow:0 18px 45px rgba(17,140,255,.28);
}
.btn.secondary{
  border-color:rgba(255,255,255,.24);
  background:rgba(255,255,255,.05);
  color:#fff;
}
.btn:hover{transform:translateY(-2px)}
.full{width:100%}
.trust-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  max-width:650px;
}
.trust-row div{
  border:1px solid var(--line);
  background:rgba(255,255,255,.045);
  padding:16px;
  border-radius:16px;
  backdrop-filter:blur(8px);
}
.trust-row strong{
  display:block;
  color:#fff;
  margin-bottom:4px;
}
.trust-row span{
  color:var(--muted);
  font-size:14px;
}
.hero-visual{
  position:relative;
  min-height:420px;
  display:grid;
  place-items:center;
}
.hero-visual img{
  width:min(430px,84%);
  height:auto;
  filter:drop-shadow(0 0 45px rgba(17,140,255,.35));
  position:relative;
  z-index:2;
}
.orb-glow{
  position:absolute;
  width:min(520px,82vw);
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(18,176,255,.36),rgba(17,140,255,.2) 38%,transparent 72%);
  filter:blur(2px);
  opacity:.92;
}
.section{padding:90px clamp(18px,6vw,92px)}
.section-title{
  text-align:center;
  max-width:840px;
  margin:0 auto 48px;
}
.section-title h2{
  font-size:clamp(32px,4vw,54px);
  line-height:1.08;
  margin-bottom:16px;
  letter-spacing:-.035em;
}
.section-title p{
  color:var(--muted);
  line-height:1.7;
}
.service-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.card,.step,.qr-card,.contact-action,.stats-panel{
  background:linear-gradient(180deg,rgba(14,29,52,.88),rgba(7,20,38,.78));
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  backdrop-filter:blur(8px);
}
.card{
  border-radius:22px;
  padding:28px;
  min-height:320px;
  transition:.25s;
}
.card:hover,.contact-action:hover{
  transform:translateY(-6px);
  border-color:rgba(17,140,255,.45);
}
.icon{
  width:56px;
  height:56px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:rgba(17,140,255,.14);
  font-size:28px;
  margin-bottom:18px;
}
.card h3{font-size:22px;margin-bottom:12px}
.card p,.card li{color:#c7d4e6;line-height:1.6}
.card ul{padding-left:18px;margin:18px 0 0}
.process{
  background:rgba(255,255,255,.025);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}
.step{
  padding:26px;
  border-radius:22px;
}
.step span{
  display:inline-flex;
  color:var(--blue2);
  font-weight:900;
  margin-bottom:18px;
  font-size:22px;
}
.step p{color:var(--muted);line-height:1.7}
.about{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:32px;
  align-items:center;
}
.about-content h2{
  font-size:clamp(32px,4vw,56px);
  letter-spacing:-.04em;
  line-height:1.08;
}
.about-content p{
  color:#d5e0f0;
  line-height:1.8;
  font-size:18px;
}
.about-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  margin-top:24px;
}
.about-list span{
  background:rgba(17,140,255,.1);
  border:1px solid rgba(17,140,255,.25);
  padding:14px;
  border-radius:14px;
}
.stats-panel{
  border-radius:28px;
  min-height:430px;
  padding:28px;
  display:grid;
  gap:18px;
  align-content:end;
}
.stats-panel img{
  width:250px;
  margin:auto auto 30px;
}
.stats-panel div{
  background:rgba(0,0,0,.5);
  border:1px solid var(--line);
  padding:18px;
  border-radius:18px;
  backdrop-filter:blur(8px);
}
.stats-panel strong{font-size:38px;color:#fff;display:block}
.stats-panel span{color:#c8d6ea}
.qr-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  max-width:1100px;
  margin:auto;
}
.qr-card{
  border-radius:24px;
  padding:28px;
}
.qr-card img{
  width:100%;
  max-height:460px;
  object-fit:contain;
  border-radius:18px;
  background:rgba(255,255,255,.04);
  padding:10px;
  margin:18px 0;
}
.qr-card p{
  color:#d0ddef;
  line-height:1.7;
}
.contact-grid-simple{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  max-width:1160px;
  margin:auto;
}
.contact-action{
  border-radius:22px;
  padding:26px;
  min-height:190px;
  transition:.25s;
}
.contact-action span{
  display:inline-flex;
  color:var(--blue2);
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:900;
  margin-bottom:16px;
}
.contact-action strong{
  display:block;
  font-size:22px;
  line-height:1.2;
  margin-bottom:14px;
}
.contact-action small{
  color:var(--muted);
  line-height:1.6;
}
.primary-action{
  background:linear-gradient(135deg,rgba(17,140,255,.35),rgba(0,209,255,.12));
}
.floating-whatsapp{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:30;
  background:#13c25a;
  color:white;
  padding:14px 18px;
  border-radius:999px;
  font-weight:900;
  box-shadow:0 16px 45px rgba(19,194,90,.35);
}
.footer{
  padding:55px clamp(18px,6vw,92px);
  display:grid;
  grid-template-columns:1.4fr .8fr .8fr;
  gap:30px;
  border-top:1px solid var(--line);
  background:rgba(3,6,13,.92);
}
.footer-logo{
  width:250px;
  max-width:100%;
  margin-bottom:18px;
}
.footer p,.footer span{
  color:#d7e6fa;
  line-height:1.7;
}
.footer a{
  display:block;
  color:var(--muted);
  margin:10px 0;
}
.footer a:hover{color:var(--blue2)}
.legal{
  text-align:center;
  color:#8495ac;
  background:#02040a;
  padding:18px;
  font-size:13px;
  border-top:1px solid rgba(255,255,255,.08);
}
@media(max-width:1120px){
  .contact-grid-simple{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:980px){
  .hero,.about,.qr-grid{grid-template-columns:1fr}
  .hero-visual{min-height:300px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .nav{height:auto;min-height:72px}
  .brand img{width:105px}
  .menu-toggle{display:block}
  .nav-links{
    display:none;
    position:absolute;
    left:16px;
    right:16px;
    top:78px;
    flex-direction:column;
    align-items:stretch;
    background:rgba(3,6,13,.96);
    border:1px solid var(--line);
    border-radius:18px;
    padding:18px;
  }
  .nav-links.open{display:flex}
  .hero{padding-top:110px}
  .trust-row,.service-grid,.steps,.about-list,.footer,.contact-grid-simple{grid-template-columns:1fr}
  h1{font-size:43px}
  .card{min-height:auto}
  .floating-whatsapp{left:18px;text-align:center}
}


/* ===== QR premium section v5 ===== */
.qr-showcase{
  max-width: 1380px;
  margin: 0 auto;
}
.qr-title h2{margin-bottom:14px}
.qr-premium-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
  align-items:stretch;
}
.qr-premium-card{
  position:relative;
  border-radius:28px;
  padding:28px 28px 22px;
  border:1px solid rgba(52,140,255,.38);
  background:linear-gradient(180deg,rgba(6,18,38,.92),rgba(5,14,30,.88));
  box-shadow:0 22px 70px rgba(0,105,255,.16), inset 0 0 0 1px rgba(255,255,255,.02);
  overflow:hidden;
}
.qr-premium-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right,rgba(24,132,255,.14),transparent 38%);
  pointer-events:none;
}
.qr-card-pay{
  border-color:rgba(140,90,255,.42);
  background:linear-gradient(180deg,rgba(16,17,48,.94),rgba(11,10,34,.90));
  box-shadow:0 22px 70px rgba(127,66,255,.16), inset 0 0 0 1px rgba(255,255,255,.02);
}
.qr-card-pay:before{
  background:radial-gradient(circle at top right,rgba(152,84,255,.18),transparent 38%);
}
.qr-premium-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
}
.qr-heading-block{
  display:flex;
  gap:16px;
  align-items:flex-start;
}
.qr-heading-block h3{
  margin:0 0 8px;
  font-size:27px;
  line-height:1.1;
}
.qr-heading-block p{
  margin:0;
  max-width:320px;
  color:#d3def0;
  line-height:1.5;
  font-size:16px;
}
.qr-icon-badge{
  width:64px;
  height:64px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:29px;
  flex:0 0 64px;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.08),0 0 24px rgba(0,0,0,.16);
}
.qr-icon-wa{background:rgba(22,214,125,.14); color:#14e48a; border:2px solid rgba(20,228,138,.72)}
.qr-icon-pay{background:rgba(166,108,255,.14); color:#c58cff; border:2px solid rgba(197,140,255,.72)}
.qr-jf-badge{
  width:92px;
  height:92px;
  border-radius:50%;
  padding:10px;
  background:radial-gradient(circle at center,#071321 0%,#000814 100%);
  border:3px solid rgba(35,162,255,.72);
  box-shadow:0 0 24px rgba(35,162,255,.42);
  display:grid;
  place-items:center;
  flex:0 0 92px;
}
.qr-jf-badge img{width:100%; height:auto}
.qr-code-shell{
  display:flex;
  justify-content:center;
  align-items:center;
  border-radius:24px;
  padding:16px;
  margin-bottom:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));
}
.qr-shell-wa{border:2px solid rgba(0,210,255,.66); box-shadow:0 0 0 2px rgba(255,255,255,.03) inset, 0 0 34px rgba(0,173,255,.12)}
.qr-shell-pay{border:2px solid rgba(175,112,255,.72); box-shadow:0 0 0 2px rgba(255,255,255,.03) inset, 0 0 34px rgba(149,92,255,.14)}
.qr-code-shell img{
  width:100%;
  max-width:430px;
  height:auto;
  border-radius:20px;
  display:block;
}
.qr-btn-wa{
  background:linear-gradient(135deg,#18b682,#2edc8e);
  box-shadow:0 16px 42px rgba(31,196,124,.26);
}
.qr-btn-pay{
  background:linear-gradient(135deg,#7d47ff,#b64eff);
  box-shadow:0 16px 42px rgba(136,74,255,.28);
}
.qr-footnote{
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#cfe2f5;
  font-size:16px;
}
.qr-footnote span{font-size:18px}
.qr-pay-brands{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  min-width:150px;
}
.brand-deuna{
  color:#32e0b2;
  font-weight:900;
  font-size:38px;
  line-height:1;
  letter-spacing:-.04em;
  font-style:italic;
}
.brand-pichincha{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
  font-weight:900;
  line-height:1;
  font-size:18px;
}
.brand-square{
  width:26px;
  height:26px;
  border-radius:2px;
  background:#ffdd00;
  position:relative;
  flex:0 0 26px;
}
.brand-square:after{
  content:"";
  position:absolute;
  width:10px;height:10px;
  top:5px; right:5px;
  background:#281e7c;
}
.qr-pay-body{
  display:grid;
  grid-template-columns:minmax(290px,420px) 1fr;
  gap:28px;
  align-items:center;
  margin-bottom:22px;
}
.qr-steps-list{
  display:grid;
  gap:18px;
}
.qr-step-item{
  display:grid;
  grid-template-columns:50px 1fr;
  gap:18px;
  align-items:flex-start;
  padding:8px 0 18px;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.qr-step-item:last-child{border-bottom:0; padding-bottom:0}
.step-num{
  width:50px;height:50px;border-radius:50%;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#7a43ff,#a952ff);
  color:#fff;font-size:28px;font-weight:900;
  box-shadow:0 10px 24px rgba(120,67,255,.32);
}
.qr-step-item strong{display:block; font-size:18px; margin-bottom:6px}
.qr-step-item p{margin:0; color:#d6dcf0; line-height:1.45; font-size:16px}

@media (max-width: 1100px){
  .qr-premium-grid{grid-template-columns:1fr}
  .qr-pay-body{grid-template-columns:1fr}
}
@media (max-width: 720px){
  .qr-premium-card{padding:22px 18px 18px}
  .qr-premium-top{flex-direction:column}
  .qr-heading-block h3{font-size:24px}
  .brand-deuna{font-size:32px}
  .brand-pichincha{font-size:16px}
  .qr-footnote{font-size:14px}
}


/* ===== QR premium section v6 - final commercial layout ===== */
.qr-section{
  padding-top:96px;
  padding-bottom:96px;
  overflow:hidden;
}
.qr-showcase.v6{
  width:min(1680px, calc(100vw - 96px));
  margin:0 auto;
}
.qr-title{
  margin-bottom:46px;
}
.qr-title .title-line{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  margin-bottom:12px;
}
.qr-title .title-line span{
  display:block;
  width:130px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, #1fbaff, transparent);
  box-shadow:0 0 18px rgba(31,186,255,.65);
}
.qr-title .eyebrow{
  margin:0;
  font-size:20px;
  letter-spacing:.12em;
  color:#29aaff;
}
.qr-title h2{
  font-size:clamp(52px, 5.4vw, 84px);
  line-height:1;
  margin-bottom:22px;
  letter-spacing:-.045em;
}
.qr-title p{
  font-size:clamp(18px,1.6vw,24px);
  color:#d5dcea;
}
.qr-premium-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:38px;
  align-items:stretch;
}
.qr-premium-card{
  position:relative;
  border-radius:30px;
  padding:42px 42px 30px;
  min-height:760px;
  border:1px solid rgba(52,140,255,.46);
  background:
    radial-gradient(circle at 86% 12%,rgba(20,137,255,.22),transparent 22%),
    linear-gradient(180deg,rgba(7,23,48,.96),rgba(4,13,29,.93));
  box-shadow:
    0 28px 90px rgba(0,105,255,.22),
    inset 0 0 0 1px rgba(255,255,255,.03);
  overflow:hidden;
}
.qr-premium-card:before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(135deg,rgba(255,255,255,.08),transparent 28%),
    radial-gradient(circle at 4% 0%,rgba(0,210,255,.16),transparent 28%);
}
.qr-card-pay{
  border-color:rgba(144,86,255,.58);
  background:
    radial-gradient(circle at 90% 10%,rgba(139,76,255,.2),transparent 24%),
    linear-gradient(180deg,rgba(17,17,52,.97),rgba(10,9,33,.94));
  box-shadow:
    0 28px 90px rgba(126,69,255,.23),
    inset 0 0 0 1px rgba(255,255,255,.03);
}
.qr-premium-top{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:34px;
}
.qr-heading-block{
  display:flex;
  gap:22px;
  align-items:flex-start;
}
.qr-heading-block h3{
  margin:0 0 12px;
  font-size:clamp(28px,2.2vw,38px);
  line-height:1.05;
  letter-spacing:-.025em;
}
.qr-heading-block p{
  margin:0;
  max-width:420px;
  color:#d3def0;
  line-height:1.55;
  font-size:clamp(17px,1.25vw,22px);
}
.qr-icon-badge{
  width:82px;
  height:82px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:42px;
  line-height:1;
  flex:0 0 82px;
  box-shadow:
    inset 0 0 0 2px rgba(255,255,255,.08),
    0 0 34px rgba(0,0,0,.22);
}
.qr-icon-wa{
  background:rgba(22,214,125,.14);
  color:#14e48a;
  border:3px solid rgba(20,228,138,.8);
}
.qr-icon-pay{
  background:rgba(166,108,255,.14);
  color:#c58cff;
  border:3px solid rgba(197,140,255,.82);
}
.qr-jf-badge{
  width:120px;
  height:120px;
  border-radius:50%;
  padding:12px;
  background:radial-gradient(circle at center,#071321 0%,#000814 100%);
  border:4px solid rgba(35,162,255,.78);
  box-shadow:0 0 32px rgba(35,162,255,.48);
  display:grid;
  place-items:center;
  flex:0 0 120px;
}
.qr-jf-badge img{
  width:100%;
  height:auto;
}
.qr-code-shell{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  align-items:center;
  border-radius:26px;
  padding:20px;
  margin-bottom:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
}
.qr-shell-wa{
  border:3px solid rgba(0,210,255,.78);
  box-shadow:
    0 0 0 2px rgba(255,255,255,.04) inset,
    0 0 42px rgba(0,173,255,.2);
}
.qr-shell-pay{
  border:3px solid rgba(175,112,255,.82);
  box-shadow:
    0 0 0 2px rgba(255,255,255,.04) inset,
    0 0 42px rgba(149,92,255,.2);
}
.qr-code-shell img{
  width:100%;
  max-width:520px;
  height:auto;
  max-height:none;
  object-fit:contain;
  border-radius:20px;
  display:block;
}
.qr-card-wa .qr-code-shell{
  min-height:430px;
}
.qr-card-pay .qr-code-shell{
  min-height:390px;
  margin-bottom:0;
}
.qr-pay-brands{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
  min-width:190px;
  padding-top:4px;
}
.brand-deuna{
  color:#32e0b2;
  font-weight:900;
  font-size:clamp(42px,3vw,58px);
  line-height:1;
  letter-spacing:-.055em;
  font-style:italic;
}
.brand-pichincha{
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
  font-weight:950;
  line-height:.92;
  font-size:clamp(18px,1.4vw,26px);
  letter-spacing:.02em;
}
.brand-square{
  width:34px;
  height:34px;
  border-radius:3px;
  background:#ffdd00;
  position:relative;
  flex:0 0 34px;
}
.brand-square:after{
  content:"";
  position:absolute;
  width:13px;height:13px;
  top:7px;right:7px;
  background:#281e7c;
}
.qr-pay-body{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(380px,520px) minmax(220px,1fr);
  gap:42px;
  align-items:center;
  margin-bottom:30px;
}
.qr-steps-list{
  display:grid;
  gap:24px;
}
.qr-step-item{
  display:grid;
  grid-template-columns:62px 1fr;
  gap:22px;
  align-items:flex-start;
  padding:8px 0 26px;
  border-bottom:1px solid rgba(255,255,255,.16);
}
.qr-step-item:last-child{
  border-bottom:0;
  padding-bottom:0;
}
.step-num{
  width:62px;
  height:62px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#7a43ff,#a952ff);
  color:#fff;
  font-size:32px;
  font-weight:950;
  box-shadow:0 12px 30px rgba(120,67,255,.38);
}
.qr-step-item strong{
  display:block;
  font-size:clamp(18px,1.35vw,24px);
  margin-bottom:9px;
}
.qr-step-item p{
  margin:0;
  color:#d6dcf0;
  line-height:1.45;
  font-size:clamp(15px,1.1vw,19px);
}
.qr-btn-wa,
.qr-btn-pay{
  position:relative;
  z-index:2;
  min-height:78px;
  font-size:clamp(20px,1.6vw,28px);
  border-radius:18px;
}
.qr-btn-wa{
  background:linear-gradient(135deg,#18b682,#2edc8e);
  box-shadow:0 18px 46px rgba(31,196,124,.28);
}
.qr-btn-pay{
  background:linear-gradient(135deg,#7d47ff,#b64eff);
  box-shadow:0 18px 46px rgba(136,74,255,.30);
}
.btn-icon{
  display:inline-flex;
  margin-right:12px;
  font-size:1.18em;
}
.qr-footnote{
  position:relative;
  z-index:2;
  margin-top:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:#cfe2f5;
  font-size:clamp(15px,1.15vw,20px);
}
.qr-footnote span{
  font-size:20px;
}
@media (max-width: 1300px){
  .qr-showcase.v6{
    width:min(1180px, calc(100vw - 48px));
  }
  .qr-premium-grid{
    grid-template-columns:1fr;
  }
  .qr-premium-card{
    min-height:auto;
  }
}
@media (max-width: 840px){
  .qr-showcase.v6{
    width:min(100%, calc(100vw - 32px));
  }
  .qr-title .title-line span{
    width:56px;
  }
  .qr-title .eyebrow{
    font-size:14px;
  }
  .qr-title h2{
    font-size:40px;
  }
  .qr-premium-card{
    padding:24px 18px 20px;
    border-radius:22px;
  }
  .qr-premium-top{
    flex-direction:column;
    gap:18px;
  }
  .qr-heading-block{
    gap:14px;
  }
  .qr-icon-badge{
    width:58px;
    height:58px;
    flex-basis:58px;
    font-size:28px;
  }
  .qr-jf-badge{
    width:86px;
    height:86px;
    flex-basis:86px;
  }
  .qr-pay-body{
    grid-template-columns:1fr;
    gap:26px;
  }
  .qr-card-wa .qr-code-shell,
  .qr-card-pay .qr-code-shell{
    min-height:0;
  }
  .qr-btn-wa,
  .qr-btn-pay{
    min-height:58px;
    font-size:18px;
  }
}


/* ===== v7 QR payment visibility fix ===== */
.qr-card-pay .qr-code-shell{
  min-height:460px !important;
  padding:26px !important;
  overflow:visible !important;
  align-items:center !important;
}
.qr-card-pay .qr-code-shell img{
  width:100% !important;
  max-width:500px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  display:block !important;
  border-radius:18px !important;
}
.qr-pay-body{
  grid-template-columns:minmax(430px,560px) minmax(250px,1fr) !important;
  align-items:center !important;
}
@media (max-width: 1300px){
  .qr-pay-body{
    grid-template-columns:1fr !important;
  }
  .qr-card-pay .qr-code-shell img{
    max-width:560px !important;
  }
}
@media (max-width: 720px){
  .qr-card-pay .qr-code-shell{
    min-height:0 !important;
    padding:16px !important;
  }
}


/* ===== v8 final QR payment clean image fix ===== */
.qr-card-pay .qr-code-shell{
  background:#ffffff !important;
  padding:18px !important;
  overflow:visible !important;
  border-radius:22px !important;
  min-height:auto !important;
}
.qr-card-pay .qr-code-shell img[src*="qr-pago-limpio"]{
  width:100% !important;
  max-width:520px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  display:block !important;
  border-radius:12px !important;
  background:#ffffff !important;
}
.qr-pay-body{
  grid-template-columns:minmax(430px,560px) minmax(250px,1fr) !important;
}
@media (max-width:1300px){
  .qr-pay-body{grid-template-columns:1fr !important;}
  .qr-card-pay .qr-code-shell img[src*="qr-pago-limpio"]{max-width:580px !important;}
}
@media (max-width:720px){
  .qr-card-pay .qr-code-shell{padding:12px !important;}
}


/* ===== v9 QR de pago reorganizado ===== */
.qr-card-pay .qr-pay-body{
  display:block !important;
}
.qr-card-pay .qr-code-shell{
  margin: 10px auto 28px !important;
  max-width: 620px !important;
}
.qr-card-pay .qr-code-shell img{
  max-width: 100% !important;
}
.qr-card-pay .qr-steps-list{
  display:grid !important;
  gap:18px !important;
  max-width: 760px;
  margin: 0 auto 26px !important;
}
.qr-card-pay .qr-step-item{
  grid-template-columns:72px 1fr !important;
  gap:20px !important;
  align-items:start !important;
  padding:18px 0 22px !important;
  border-bottom:1px solid rgba(255,255,255,.16) !important;
}
.qr-card-pay .qr-step-item:last-child{
  border-bottom:0 !important;
  padding-bottom:8px !important;
}
.qr-card-pay .step-num{
  width:72px !important;
  height:72px !important;
  font-size:34px !important;
}
.qr-card-pay .qr-step-item strong{
  font-size:clamp(20px,1.55vw,28px) !important;
  margin-bottom:8px !important;
}
.qr-card-pay .qr-step-item p{
  font-size:clamp(16px,1.22vw,21px) !important;
  line-height:1.55 !important;
}
.qr-card-pay .qr-btn-pay{
  max-width:760px;
  margin:0 auto;
}
.qr-card-pay .qr-footnote-pay{
  margin-top:16px !important;
}
@media (max-width: 840px){
  .qr-card-pay .qr-code-shell{
    max-width:100% !important;
    margin-bottom:22px !important;
  }
  .qr-card-pay .qr-steps-list{
    gap:14px !important;
    margin-bottom:22px !important;
  }
  .qr-card-pay .qr-step-item{
    grid-template-columns:56px 1fr !important;
    gap:14px !important;
    padding:14px 0 16px !important;
  }
  .qr-card-pay .step-num{
    width:56px !important;
    height:56px !important;
    font-size:26px !important;
  }
  .qr-card-pay .qr-step-item strong{
    font-size:20px !important;
  }
  .qr-card-pay .qr-step-item p{
    font-size:16px !important;
  }
}
