/* Acceso al pago siempre visible, incluso cuando el menú está cerrado. */
.navbar{gap:16px}
.navbar .main-nav{gap:16px}
.payment-nav{order:3;flex-shrink:0;min-height:44px;padding:0 17px;background:#ffdc45;color:#17233c;box-shadow:0 5px 16px rgba(158,115,0,.18);white-space:nowrap}
.payment-nav:hover{background:#ffce19}
.payment-nav:focus-visible,.payment-image-link:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.payment-page{padding:40px 0 100px;background:radial-gradient(ellipse at 0 15%,#e8efff,transparent 55%),#f7f9fd}
.payment-page .back-link{margin-bottom:30px}
.payment-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:70px;align-items:start}
.payment-copy{padding-top:30px;min-width:0}
.payment-copy h1{font-size:clamp(2.5rem,4.5vw,4rem);max-width:570px}
.payment-copy h1 span{color:var(--blue)}
.payment-intro{font-size:1.12rem;max-width:510px}
.payment-key{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid #d5e2fa;border-left:4px solid var(--blue);border-radius:16px;padding:20px 24px;margin:28px 0}
.payment-key>span{font-size:.85rem;color:var(--muted)}
.payment-key strong{font-size:2rem;letter-spacing:-.03em;color:var(--navy);user-select:all;overflow-wrap:anywhere}
.payment-key small{color:var(--muted)}
.payment-steps{list-style:none;counter-reset:payment;display:grid;gap:22px;padding:0;margin:32px 0}
.payment-steps li{counter-increment:payment;display:flex;gap:15px}
.payment-steps li:before{content:counter(payment,decimal-leading-zero);flex:0 0 38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#e7eeff;color:var(--blue);font-weight:800;font-size:.85rem}
.payment-steps h2{font-size:1.05rem;letter-spacing:0;margin:0 0 6px}
.payment-steps p{font-size:.93rem;margin:0}
.payment-note{display:flex;gap:12px;border-radius:14px;padding:18px;background:#eaf0fc}
.payment-note>i{color:var(--blue);font-size:1.4rem}
.payment-note p{font-size:.88rem;margin:0;color:#425371}
.payment-note strong{display:block;color:var(--navy);margin-bottom:4px}
.payment-disclaimer{font-size:.8rem;margin:18px 0 0}
.payment-card{padding:24px;background:white;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);min-width:0}
.payment-card-heading{text-align:center;margin-bottom:20px}
.payment-card-heading>span{font-size:.68rem;letter-spacing:.15em;color:var(--blue);font-weight:800}
.payment-card-heading h2{font-size:1.35rem;margin:6px 0 0}
.payment-image-link{display:block;margin-bottom:20px;border-radius:12px}
.payment-qr{display:block;width:100%;height:auto;border-radius:12px}
.payment-image-hint{font-size:.75rem;text-align:center;margin:12px 0 0}
@media(min-width:901px) and (max-width:1250px){.navbar .main-nav{gap:10px;font-size:.8rem}.navbar .brand{font-size:.9rem}.navbar .login-link{padding-left:10px}.navbar .btn-sm{padding:0 10px}.navbar{gap:10px}.payment-nav{padding:0 12px;font-size:.85rem}}
@media(max-width:900px){.payment-nav{order:0;margin-left:auto}.navbar .main-nav{gap:16px}.payment-grid{gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,380px)}}
@media(max-width:700px){.payment-grid{grid-template-columns:1fr}.payment-copy{padding-top:0}.payment-card{width:100%;max-width:480px;justify-self:center}.payment-page{padding-bottom:160px}.payment-copy h1{max-width:450px}}
@media(max-width:420px){.navbar{gap:8px}.navbar .brand{gap:6px;font-size:.8rem}.navbar .brand img{width:32px;height:32px}.payment-nav{min-height:42px;padding:0 10px;font-size:.8rem;gap:6px}.payment-card{padding:16px}.payment-key{padding:18px}}
