/* NR Portfolio Downloads – uses the theme fonts (no font loading). */
.nr-pf{--nr-navy:#242a56;--nr-blue:#5567d1;--nr-grad:linear-gradient(90deg,#2879fe,#db49ff);padding:20px 0}
.nr-pf-hd{text-align:center;max-width:640px;margin:0 auto 48px}
.nr-pf-hd h2{color:var(--nr-navy);margin:0 0 12px}
.nr-pf-grid{display:grid;grid-template-columns:repeat(var(--nr-pf-cols,3),minmax(0,1fr));gap:28px;max-width:1140px;margin:0 auto}
.nr-pf-card{position:relative;background:#fff;border:1px solid #e6e8f5;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}
.nr-pf-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2879fe,#db49ff);opacity:0;transition:opacity .3s;z-index:2}
.nr-pf-img{display:block;aspect-ratio:16/10;overflow:hidden;background:#f2f4fb}
.nr-pf-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.nr-pf-ph{display:block;width:100%;height:100%;background:repeating-linear-gradient(45deg,#eef0f8 0 12px,#f6f7fc 12px 24px)}
.nr-pf-body{padding:24px 24px 26px;display:flex;flex-direction:column;flex:1}
.nr-pf-lbl{display:inline-block;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#5567d1;font-weight:600;margin-bottom:8px}
.nr-pf-body h3{font-size:19px;line-height:1.35;margin:0 0 10px}
.nr-pf-body h3 a{color:#242a56;text-decoration:none}
.nr-pf-body p{color:#555a77;font-size:15px;line-height:1.6;margin:0 0 18px;flex:1}
.nr-pf a,a.nr-pf-go{text-decoration:none!important}
a.nr-pf-go{color:#5567d1;font-weight:600}
.nr-pf-body h3 a:hover,.nr-pf-body h3 a:focus{color:#5567d1}
a.nr-pf-go:hover,a.nr-pf-go:focus{color:#242a56}
@media (hover:hover){.nr-pf-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(40,121,254,.15)}.nr-pf-card:hover:before{opacity:1}.nr-pf-card:hover .nr-pf-img img{transform:scale(1.05)}}
@media (prefers-reduced-motion:reduce){.nr-pf-card,.nr-pf-img img{transition:none}.nr-pf-card:hover{transform:none}.nr-pf-card:hover .nr-pf-img img{transform:none}}
@media (max-width:1024px){.nr-pf-grid{grid-template-columns:repeat(min(2,var(--nr-pf-cols,3)),minmax(0,1fr))}}
@media (max-width:767px){.nr-pf-grid{grid-template-columns:1fr;gap:22px}}

/* Single */
.nr-pd-single{background:#fff}
.nr-pd-banner{background:#f3f4fb;padding:70px 20px 110px;text-align:center}
.nr-pd-wrap{max-width:820px;margin:0 auto}
.nr-pd-title{color:#242a56;font-size:40px;line-height:1.25;margin:4px 0 14px}
.nr-pd-intro{color:#555a77;font-size:17px;max-width:640px;margin:0 auto}
.nr-pd-facts{position:relative;max-width:1000px;margin:-60px auto 50px;background:#fff;border-radius:12px;box-shadow:0 12px 40px rgba(36,42,86,.10);display:grid;grid-template-columns:repeat(var(--nr-facts,3),1fr);overflow:hidden}
.nr-pd-facts:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2879fe,#db49ff)}
.nr-pd-facts div{padding:22px 24px;border-right:1px solid #eceef7}
.nr-pd-facts div:last-child{border-right:0}
@media (max-width:1024px){.nr-pd-facts-4,.nr-pd-facts-5{grid-template-columns:repeat(3,1fr)}}
.nr-pd-facts span{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#8a8fa8;margin-bottom:6px}
.nr-pd-facts strong{color:#242a56;font-size:15px}
.nr-pd-content{max-width:820px;margin:0 auto;padding:0 20px 40px}
.nr-pd-content h2{color:#242a56;font-size:28px;margin:40px 0 14px}
.nr-pd-content img{border-radius:10px;height:auto}
.nr-pd-changelog{border:1px solid #e6e8f5;border-radius:10px;padding:14px 20px;margin:30px 0}
.nr-pd-changelog summary{cursor:pointer;font-weight:600;color:#242a56}
.nr-pd-changelog h4{margin:16px 0 6px;color:#242a56}
.nr-pd-cta{max-width:1000px;margin:30px auto 70px;background:#f3f4fb;border-radius:14px;text-align:center;padding:50px 20px;position:relative;overflow:hidden}
.nr-pd-cta:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2879fe,#db49ff)}
.nr-pd-cta h2{color:#242a56;font-size:26px;margin:0 0 10px}
.nr-pd-cta p{color:#555a77;margin:0 0 22px}
@media (max-width:767px){.nr-pd-title{font-size:28px}.nr-pd-banner{padding:50px 20px 90px}.nr-pd-facts{grid-template-columns:1fr 1fr;margin:-60px 16px 40px}.nr-pd-facts div{border-bottom:1px solid #eceef7}}

/* Download box */
.nr-pd-box{position:relative;border:1px solid #e6e8f5;border-radius:14px;padding:28px;margin:36px 0;background:#fff;box-shadow:0 12px 40px rgba(36,42,86,.08);overflow:hidden}
.nr-pd-box:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2879fe,#db49ff)}
.nr-pd-box .nr-pd-box-title{font-size:22px;margin:0 0 6px;color:#242a56}
.nr-pd-meta{margin:0 0 16px;color:#8a8fa8;font-size:14px}
.nr-pd-meta span+span:before{content:"·";margin:0 8px}
.nr-pd-box p{margin:0 0 12px}
.nr-pd-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.nr-pd-row input{flex:1 1 220px;min-height:48px;border:1px solid #d5d9ee;border-radius:30px;padding:0 20px;font-size:16px}
.nr-pd-row input:focus{border-color:#5567d1;outline:2px solid rgba(85,103,209,.25)}
.nr-pd-code{letter-spacing:.5em;font-weight:600;max-width:220px;text-align:center}
.nr-pd-btn,a.nr-pd-btn{display:inline-block;min-height:48px;border:0;border-radius:30px;padding:0 26px;background:#5567d1;color:#fff;font-weight:600;font-size:16px;cursor:pointer;line-height:48px;text-decoration:none;transition:background .2s}
.nr-pd-btn:hover,.nr-pd-btn:focus{background:#242a56;color:#fff}
.nr-pd-btn[disabled]{opacity:.6;cursor:wait}
.nr-pd-link{background:none;border:0;padding:0;color:#5567d1;text-decoration:underline;cursor:pointer;font-size:14px;margin-left:8px}
.nr-pd-check{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:#555a77;margin:6px 0}
.nr-pd-check input{margin-top:4px}
.nr-pd-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.nr-pd-msg{min-height:1em;margin:10px 0 0!important;font-size:14px}
.nr-pd-msg.is-error{color:#b32d2e}
.nr-pd-msg.is-ok{color:#0a7d33}
.nr-pd-box [hidden]{display:none!important}
.nr-pf-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:44px auto 0;max-width:1140px}
.nr-pf-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border:1px solid #e6e8f5;border-radius:30px;color:#242a56;background:#fff;font-weight:600;text-decoration:none!important;transition:background .2s,color .2s,border-color .2s}
.nr-pf-pagination a.page-numbers:hover,.nr-pf-pagination a.page-numbers:focus{border-color:#5567d1;color:#5567d1}
.nr-pf-pagination .page-numbers.current{background:#5567d1;border-color:#5567d1;color:#fff}
.nr-pf-pagination .page-numbers.dots{border:0;min-width:auto;padding:0 4px}
