/* Novi Refer Us v1.0.0 */
:root{--nr:#0a1a3a;--nr-acc:#0a1a3a;--nr-gold:#c9a84c;--nr-green:#166534;--nr-radius:12px;}
.nr-page{font-family:'Poppins',sans-serif;color:#1a1a1a;max-width:1100px;margin:0 auto;overflow-x:hidden;}
.nr-page *{box-sizing:border-box;}
.nr-page h1,.nr-page h2,.nr-page h3{word-break:break-word;}

/* ── Referred banner ─────────────────────────────────────── */
.nr-referred-banner{display:flex;align-items:center;gap:12px;background:#eef2ff;border:1.5px solid #c7d2fe;border-radius:10px;padding:13px 18px;margin-bottom:24px;font-size:.87em;line-height:1.5;}
.nr-ref-icon{font-size:1.4em;flex-shrink:0;}

/* ── Hero ─────────────────────────────────────────────────── */
.nr-hero{background:var(--nr-acc);border-radius:18px;padding:64px 52px;margin-bottom:40px;}
.nr-hero-eyebrow{display:inline-block;padding:5px 16px;border-radius:999px;border:1.5px solid rgba(255,255,255,.25);color:rgba(255,255,255,.7);font-size:.72em;font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-bottom:22px;}
.nr-hero-h1{margin:0 0 20px;font-size:clamp(2em,5vw,3.2em);font-weight:800;color:#fff;line-height:1.1;}
.nr-hero-accent{color:var(--nr-gold);}
.nr-hero-lead{margin:0 0 28px;color:rgba(255,255,255,.82);font-size:1.08em;line-height:1.75;max-width:580px;}
.nr-hero-lead strong{color:#fff;}
.nr-hero-pills{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:32px;}
.nr-pill{display:inline-block;padding:6px 15px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.85);font-size:.78em;font-weight:600;}

/* ── Buttons ──────────────────────────────────────────────── */
.nr-btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 28px;border-radius:10px;font-family:'Poppins',sans-serif;font-size:.92em;font-weight:700;cursor:pointer;border:none;text-decoration:none;transition:opacity .15s,transform .12s;line-height:1.3;}
.nr-btn:active{transform:scale(.97);}
.nr-btn-hero{background:var(--nr-gold);color:#0a1a3a!important;}
.nr-btn-hero:hover{opacity:.88;}
.nr-btn-submit{background:var(--nr-acc);color:#fff!important;width:100%;margin-top:4px;padding:14px;font-size:.95em;}
.nr-btn-submit:hover{opacity:.85;}

/* ── Section common ───────────────────────────────────────── */
.nr-sec-h2{font-size:clamp(1.35em,3vw,1.9em);font-weight:800;color:var(--nr);margin:0 0 8px;}
.nr-sec-sub{color:#666;font-size:.92em;margin:0 0 32px;line-height:1.65;}

/* ── Numbers / calculator ─────────────────────────────────── */
.nr-numbers{padding:52px 0;border-bottom:1px solid #f0f0f0;}
.nr-numbers-inner{max-width:860px;margin:0 auto;}
.nr-calc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px;}
.nr-calc-card{background:#f8f9fb;border:1.5px solid #e0e3e8;border-radius:var(--nr-radius);padding:24px 20px;text-align:center;}
.nr-calc-card--mid{background:var(--nr);border-color:var(--nr);}
.nr-calc-card--mid .nr-calc-label,.nr-calc-card--mid .nr-calc-annual{color:rgba(255,255,255,.65);}
.nr-calc-card--mid .nr-calc-value,.nr-calc-card--mid .nr-calc-earn,.nr-calc-card--mid .nr-calc-arrow{color:#fff;}
.nr-calc-label{font-size:.74em;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;}
.nr-calc-value{font-size:1.7em;font-weight:800;color:var(--nr);line-height:1;}
.nr-calc-value span{font-size:.45em;font-weight:600;color:#888;}
.nr-calc-arrow{font-size:1.3em;color:#888;margin:8px 0;}
.nr-calc-earn{font-size:2em;font-weight:800;color:var(--nr-green);line-height:1;}
.nr-calc-earn span{font-size:.42em;font-weight:600;}
.nr-calc-annual{font-size:.78em;color:#666;margin-top:5px;font-weight:600;}
.nr-calc-note{text-align:center;font-size:.83em;color:#888;font-style:italic;}

/* ── How it works ─────────────────────────────────────────── */
.nr-how{padding:52px 0;border-bottom:1px solid #f0f0f0;}
.nr-how-inner{max-width:860px;margin:0 auto;}
.nr-steps{display:flex;align-items:flex-start;gap:0;}
.nr-step{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;}
.nr-step-n{width:48px;height:48px;border-radius:50%;background:var(--nr-acc);color:#fff;font-size:1.1em;font-weight:800;display:flex;align-items:center;justify-content:center;margin-bottom:14px;flex-shrink:0;}
.nr-step-body h3{margin:0 0 8px;font-size:.95em;font-weight:700;color:var(--nr);}
.nr-step-body p{margin:0;font-size:.82em;color:#666;line-height:1.65;}
.nr-step-connector{flex:0 0 40px;height:2px;background:#e0e3e8;margin-top:23px;align-self:flex-start;}

/* ── Terms ────────────────────────────────────────────────── */
.nr-terms-sec{padding:52px 0;border-bottom:1px solid #f0f0f0;background:#fafafa;}
.nr-terms-inner{max-width:960px;margin:0 auto;}
.nr-terms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px;}
.nr-term-card{background:#fff;border:1.5px solid #e8eaed;border-radius:var(--nr-radius);padding:22px 20px;}
.nr-term-icon{width:40px;height:40px;border-radius:10px;background:var(--nr-acc);color:#fff;font-size:1.1em;font-weight:800;display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-family:Georgia,serif;}
.nr-term-card h3{margin:0 0 8px;font-size:.92em;font-weight:700;color:var(--nr);}
.nr-term-card p{margin:0;font-size:.81em;color:#555;line-height:1.65;}
.nr-terms-extra{background:#fff;border:1px solid #e0e3e8;border-radius:8px;padding:14px 18px;font-size:.83em;color:#555;line-height:1.65;}

/* ── FAQ ──────────────────────────────────────────────────── */
.nr-faq-sec{padding:52px 0;border-bottom:1px solid #f0f0f0;}
.nr-faq-inner{max-width:720px;margin:0 auto;}
.nr-faq-item{border-bottom:1px solid #e8eaed;}
.nr-faq-item:first-child{border-top:1px solid #e8eaed;}
.nr-faq-q{-webkit-appearance:none;appearance:none;width:100%;background:none;border:none;padding:17px 0;display:flex;justify-content:space-between;align-items:center;font-family:'Poppins',sans-serif;font-size:.92em;font-weight:600;color:var(--nr);cursor:pointer;text-align:left;gap:12px;}
.nr-faq-icon{font-size:1.2em;color:#aaa;flex-shrink:0;transition:transform .2s;}
.nr-faq-item.is-open .nr-faq-icon{transform:rotate(45deg);}
.nr-faq-a{padding:0 0 16px;}
.nr-faq-a p{margin:0;font-size:.86em;color:#555;line-height:1.75;}

/* ── Register section ─────────────────────────────────────── */
.nr-register-sec{padding:60px 0;}
.nr-register-inner{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:flex-start;}
.nr-register-lhs h2{font-size:clamp(1.4em,3vw,2em);font-weight:800;color:var(--nr);margin:0 0 14px;}
.nr-register-lhs p{color:#555;line-height:1.7;margin:0 0 22px;font-size:.93em;}
.nr-register-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}
.nr-register-list li{display:flex;align-items:center;gap:10px;font-size:.87em;color:#444;}
.nr-register-list li::before{content:'✓';width:22px;height:22px;border-radius:50%;background:var(--nr-acc);color:#fff;font-size:.72em;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.nr-register-sec--standalone .nr-register-inner--full{grid-template-columns:1fr;max-width:640px;margin:0 auto;}

/* ── Form ─────────────────────────────────────────────────── */
.nr-form-card{background:#fff;border:1.5px solid #e0e3e8;border-radius:var(--nr-radius);padding:28px;box-shadow:0 4px 20px rgba(0,0,0,.06);}
.nr-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;}
.nr-form-group{display:flex;flex-direction:column;gap:5px;margin-bottom:14px;}
.nr-form-row .nr-form-group{margin-bottom:0;}
.nr-label{font-size:.78em;font-weight:700;color:#444;}
.nr-label span:not(.nr-optional){color:#c0392b;}
.nr-optional{color:#aaa;font-weight:400;}
.nr-input{width:100%;padding:10px 13px;border:1.5px solid #d0d5dd;border-radius:8px;font-family:'Poppins',sans-serif;font-size:.88em;color:#333;background:#fff;outline:none;transition:.14s;-webkit-appearance:none;appearance:none;}
.nr-input:focus{border-color:var(--nr-acc);box-shadow:0 0 0 3px rgba(10,26,58,.08);}
.nr-textarea{resize:vertical;min-height:76px;}
.nr-form-err{background:#fff0f0;border:1px solid #f5c6cb;border-radius:8px;padding:9px 13px;font-size:.82em;color:#c0392b;margin-bottom:10px;}
.nr-form-note{margin:10px 0 0;font-size:.72em;color:#bbb;text-align:center;}

/* ── Success card ─────────────────────────────────────────── */
.nr-success-card{background:#f0faf5;border:1.5px solid #a8d5be;border-radius:var(--nr-radius);padding:32px;text-align:center;}
.nr-success-icon{width:56px;height:56px;border-radius:50%;background:var(--nr-green);color:#fff;font-size:1.4em;font-weight:800;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;}
.nr-success-card h3{margin:0 0 8px;font-size:1.1em;font-weight:700;color:var(--nr-green);}
.nr-success-card p{margin:0;font-size:.87em;color:#555;}

/* ── Client section ───────────────────────────────────────── */
.nr-client-sec{background:#f8f9fb;border-radius:var(--nr-radius);padding:44px;margin-top:32px;}
.nr-client-inner h2{font-size:1.35em;font-weight:700;color:var(--nr);margin:0 0 8px;}
.nr-client-inner p{color:#555;font-size:.9em;margin:0 0 20px;line-height:1.65;}

/* ── Responsive ───────────────────────────────────────────── */
@media(max-width:768px){
	.nr-hero{padding:40px 24px;}
	.nr-calc-grid{grid-template-columns:1fr;}
	.nr-terms-grid{grid-template-columns:1fr 1fr;}
	.nr-steps{flex-direction:column;gap:0;}
	.nr-step-connector{width:2px;height:28px;flex:0 0 28px;margin:0 0 0 23px;align-self:auto;}
	.nr-register-inner{grid-template-columns:1fr;}
	.nr-form-row{grid-template-columns:1fr;}
	.nr-numbers-inner,.nr-how-inner,.nr-terms-inner,.nr-faq-inner{padding:0 4px;}
}
@media(max-width:480px){
	.nr-terms-grid{grid-template-columns:1fr;}
	.nr-hero-h1{font-size:1.7em;}
	.nr-form-card{padding:20px 16px;}
	.nr-client-sec{padding:28px 18px;}
}

/* ── Section divider ──────────────────────────────────────── */
.nr-section-divider{display:flex;align-items:center;gap:12px;margin:20px 0 16px;color:#888;font-size:.75em;font-weight:700;text-transform:uppercase;letter-spacing:.07em;}
.nr-section-divider::before,.nr-section-divider::after{content:'';flex:1;height:1px;background:#e8eaed;}

/* ── Button — extra force against theme resets ──────────────── */
.nr-btn-submit,
button.nr-btn-submit {
	display:block !important;
	width:100% !important;
	padding:14px 24px !important;
	background:#0a1a3a !important;
	background-color:#0a1a3a !important;
	color:#fff !important;
	font-family:'Poppins',sans-serif !important;
	font-size:.95em !important;
	font-weight:700 !important;
	border:none !important;
	border-radius:10px !important;
	cursor:pointer !important;
	text-align:center !important;
	margin-top:8px !important;
	line-height:1.4 !important;
	-webkit-appearance:none !important;
	appearance:none !important;
}
.nr-btn-submit:hover{opacity:.85 !important;}

/* ── Platform checkbox grid ───────────────────────────────── */
.nr-checkbox-grid{
	display:grid;
	grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));
	gap:8px;
	margin-top:6px;
}
.nr-check-lbl{
	display:flex;
	align-items:center;
	gap:9px;
	padding:9px 13px;
	border:1.5px solid #e0e3e8;
	border-radius:8px;
	font-size:.84em;
	color:#444;
	cursor:pointer;
	transition:border-color .14s, background .14s;
	user-select:none;
}
.nr-check-lbl:hover{border-color:var(--nr-acc);background:#f5f7ff;}
.nr-check-lbl input[type="checkbox"]{
	width:16px;height:16px;min-width:16px;
	accent-color:var(--nr-acc);
	cursor:pointer;
}
.nr-check-lbl:has(input:checked){
	border-color:var(--nr-acc);
	background:#eef2ff;
	color:var(--nr-acc);
	font-weight:600;
}
@media(max-width:480px){
	.nr-checkbox-grid{grid-template-columns:1fr 1fr;}
}
