/* =====================================================
   FRESHZEN — Clean Salesletter LP
   Style: prozikir-inspired blocks · big text · no clutter
   ===================================================== */

@font-face {
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 400 900;
	font-display: swap;
	src: url('/wp-content/themes/hello-elementor-child/assets/fonts/nunito-latin.woff2') format('woff2');
}

/* Reset & base */
.nsf-lp-html, body.nsf-lp {
	margin: 0; padding: 0;
	font-family: 'Nunito', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
	color: #0F1A2E;
	background: #fff;
	-webkit-font-smoothing: antialiased;
	font-size: 19px;
	line-height: 1.6;
}
body.nsf-lp * { box-sizing: border-box; }
body.nsf-lp img { max-width: 100%; height: auto; display: block; }
body.nsf-lp a { color: #1E5BB8; text-decoration: none; }

/* Hide WordPress chrome */
body.nsf-lp .site-header, body.nsf-lp .site-footer,
body.nsf-lp #wpadminbar, body.nsf-lp header.entry-header { display: none !important; }

/* Trust bar — sebaris bersih */
.nsf-lp .trust-bar {
	background: #0B7A4B;
	color: #fff;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	padding: 10px 16px;
	letter-spacing: 0.2px;
}

/* ─────────────────────────────────────────────────
   BLOK pattern: alternating blue / white
   ───────────────────────────────────────────────── */
.nsf-lp .blok {
	padding: 64px 0;
	width: 100%;
}
.nsf-lp .blok-white { background: #FFFFFF; color: #0F1A2E; }
.nsf-lp .blok-blue  { background: #EAF2FB; color: #0F1A2E; }
.nsf-lp .blok-final { background: #0F1A2E; color: #fff; }

.nsf-lp .container {
	max-width: 720px;
	margin: 0 auto;
	padding: 0 22px;
	text-align: center;
}
.nsf-lp .container > p,
.nsf-lp .container > .pain-list,
.nsf-lp .container > .feature-list,
.nsf-lp .container > .warning,
.nsf-lp .container > .quote,
.nsf-lp .container > .timeline,
.nsf-lp .container > .vs-row,
.nsf-lp .container > .faq {
	text-align: left;
}
.nsf-lp .container > p {
	text-align: center;
}
.nsf-lp .pain-list,
.nsf-lp .feature-list {
	display: inline-block;
	text-align: left;
	max-width: 100%;
}

/* ─────────────────────────────────────────────────
   Typography — BIG and BOLD (40+ audience)
   ───────────────────────────────────────────────── */
.nsf-lp h1 {
	font-size: 44px;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: -0.5px;
	margin: 0 0 18px;
}
.nsf-lp h2 {
	font-size: 34px;
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: -0.3px;
	margin: 0 0 16px;
}
.nsf-lp h3 {
	font-size: 22px;
	font-weight: 800;
	line-height: 1.3;
	margin: 0 0 10px;
}
.nsf-lp p {
	font-size: 19px;
	line-height: 1.65;
	margin: 0 0 16px;
}
.nsf-lp .sub {
	font-size: 22px;
	line-height: 1.4;
	margin: 0 0 28px;
	color: #2a3550;
}
.nsf-lp .lead {
	font-size: 22px;
	font-weight: 800;
	line-height: 1.4;
	margin: 24px 0;
}
.nsf-lp .lead-final {
	font-size: 26px;
	font-weight: 900;
	text-align: center;
	color: #FFD45E;
	margin: 30px 0;
}
.nsf-lp .small { font-size: 14px; color: #6b7488; margin-top: -8px; }

.nsf-lp .hi { color: #C00000; }
.nsf-lp .hi-blue { color: #1E5BB8; }
.nsf-lp .hi-yellow { color: #FFD45E; }
.nsf-lp .red { color: #C00000; }
.nsf-lp .green-text { color: #0B7A4B; }

/* Cost-box (stakes section numbered cards) */
.nsf-lp .cost-box {
	display: flex;
	gap: 18px;
	align-items: flex-start;
	background: #fff;
	border-radius: 14px;
	padding: 22px 20px;
	margin: 16px 0;
	box-shadow: 0 4px 14px rgba(15,26,46,0.08);
	text-align: left;
}
.nsf-lp .cost-num {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	background: #C00000;
	color: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	font-weight: 900;
}
.nsf-lp .cost-body strong {
	display: block;
	font-size: 19px;
	color: #0F1A2E;
	margin-bottom: 6px;
}
.nsf-lp .cost-body p {
	font-size: 17px;
	color: #2a3550;
	margin: 0;
	line-height: 1.55;
}

/* Value anchor (offer section comparison) */
.nsf-lp .value-anchor {
	background: #FFF4D6;
	border: 2px dashed #FFB400;
	border-radius: 14px;
	padding: 22px 20px;
	margin: 28px 0;
	text-align: center;
	font-size: 18px;
	line-height: 1.5;
	color: #5a4500;
	font-weight: 600;
}
.nsf-lp .value-anchor strong { color: #0F1A2E; }

/* Close line in final push */
.nsf-lp .close-line {
	font-size: 19px;
	line-height: 1.55;
	color: #e8ecf4;
	font-style: italic;
	margin: 24px 0 18px;
	text-align: center;
}
.nsf-lp .close-line strong { color: #FFD45E; font-style: normal; }

/* ─────────────────────────────────────────────────
   Challenge call-out (S2 end)
   ───────────────────────────────────────────────── */
.nsf-lp .challenge {
	background: #FFF0F0;
	border-left: 6px solid #C00000;
	border-radius: 0 14px 14px 0;
	padding: 20px 22px;
	margin: 28px 0 0;
	font-size: 21px;
	font-weight: 800;
	color: #C00000;
	line-height: 1.4;
	text-align: left;
}
.nsf-lp .challenge strong { color: #C00000; font-size: 24px; }

/* ─────────────────────────────────────────────────
   "Bukan" list (S4 reveal)
   ───────────────────────────────────────────────── */
.nsf-lp .bukan-list {
	margin: 26px 0;
}
.nsf-lp .bukan-row {
	background: #fff;
	border-left: 5px solid #C00000;
	border-radius: 0 12px 12px 0;
	padding: 16px 20px;
	margin-bottom: 10px;
	font-size: 18px;
	line-height: 1.5;
	text-align: left;
	box-shadow: 0 2px 8px rgba(15,26,46,0.05);
}
.nsf-lp .bukan-row strong { color: #C00000; font-size: 20px; }

/* ─────────────────────────────────────────────────
   Mechanism Steps (S5 How It Works)
   ───────────────────────────────────────────────── */
.nsf-lp .mechanism-steps {
	margin: 28px 0;
}
.nsf-lp .ms-step {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	background: #fff;
	border-radius: 14px;
	padding: 18px 18px;
	margin-bottom: 12px;
	box-shadow: 0 3px 12px rgba(15,26,46,0.08);
	text-align: left;
}
.nsf-lp .ms-num {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	background: #1E5BB8;
	color: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	font-weight: 900;
}
.nsf-lp .ms-text {
	flex: 1;
	font-size: 18px;
	line-height: 1.5;
	color: #0F1A2E;
	padding-top: 7px;
}
.nsf-lp .ms-step.ms-final {
	background: linear-gradient(135deg, #E8F5EE, #C8E8D4);
	border: 2px solid #0B7A4B;
}
.nsf-lp .ms-step.ms-final .ms-num { background: #0B7A4B; }
.nsf-lp .ms-step.ms-final .ms-text strong:last-of-type { color: #0B7A4B; }

/* ─────────────────────────────────────────────────
   TESTIMONIAL CARDS (totally revamped — looks like REAL testimonial)
   ───────────────────────────────────────────────── */
.nsf-lp .t-card {
	background: #fff;
	border-radius: 18px;
	overflow: hidden;
	margin: 24px 0;
	box-shadow: 0 8px 28px rgba(15,26,46,0.12);
	border: 1px solid #E1E8F2;
	text-align: left;
}
.nsf-lp .t-head {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 18px 20px;
	background: linear-gradient(135deg, #F4F8FE, #EAF2FB);
	border-bottom: 1px solid #E1E8F2;
}
.nsf-lp .t-avatar {
	flex-shrink: 0;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	color: #fff;
	font-size: 22px;
	font-weight: 900;
	display: flex;
	align-items: center;
	justify-content: center;
	letter-spacing: 0.5px;
}
.nsf-lp .t-av-a { background: linear-gradient(135deg, #FF7A00, #E55E00); }
.nsf-lp .t-av-b { background: linear-gradient(135deg, #1E5BB8, #0a4185); }
.nsf-lp .t-av-c { background: linear-gradient(135deg, #0B7A4B, #074a2e); }
.nsf-lp .t-meta {
	flex: 1;
	min-width: 0;
}
.nsf-lp .t-meta strong {
	display: block;
	font-size: 18px;
	color: #0F1A2E;
	line-height: 1.2;
	margin-bottom: 2px;
}
.nsf-lp .t-meta span {
	display: block;
	font-size: 13px;
	color: #6b7488;
	font-weight: 600;
}
.nsf-lp .t-stars {
	color: #FFB400;
	font-size: 17px;
	letter-spacing: 1px;
	flex-shrink: 0;
}
.nsf-lp .t-body {
	padding: 4px 0;
}
.nsf-lp .t-row {
	padding: 18px 20px;
}
.nsf-lp .t-row.t-before {
	background: #fff8f8;
	border-bottom: 1px dashed #F4C4C4;
}
.nsf-lp .t-row.t-after {
	background: #f4faf6;
}
.nsf-lp .t-badge {
	display: inline-block;
	padding: 4px 12px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 1.2px;
	margin-bottom: 10px;
}
.nsf-lp .t-badge.t-bad {
	background: #C00000;
	color: #fff;
}
.nsf-lp .t-badge.t-good {
	background: #0B7A4B;
	color: #fff;
}
.nsf-lp .t-row p {
	font-size: 17px;
	line-height: 1.55;
	color: #0F1A2E;
	margin: 0;
}

/* Override center alignment for testimonial card content */
.nsf-lp .container > .t-card,
.nsf-lp .container > .t-card * {
	text-align: left;
}
.nsf-lp .container > .t-card p {
	text-align: left;
}

/* ─────────────────────────────────────────────────
   SIMPLIFIED TESTIMONIAL CARD (Brief-aligned, relatable)
   ───────────────────────────────────────────────── */
.nsf-lp .t-verified {
	padding: 8px 20px;
	background: #f4faf6;
	border-bottom: 1px solid #e1e8f2;
	font-size: 13px;
	color: #0B7A4B;
	font-weight: 700;
	text-align: left;
}
.nsf-lp .t-body-single {
	padding: 18px 20px;
	background: #fff;
}
.nsf-lp .t-body-single p {
	font-size: 17px;
	line-height: 1.6;
	color: #0F1A2E;
	margin: 0;
	text-align: left;
}
.nsf-lp .t-avatar { font-size: 28px !important; }

/* ─────────────────────────────────────────────────
   SYMPTOM LIST (S3 Stack Pain)
   ───────────────────────────────────────────────── */
.nsf-lp .symptom-list {
	margin: 26px 0;
}
.nsf-lp .symp-row {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	background: #fff;
	border-radius: 12px;
	padding: 14px 18px;
	margin-bottom: 10px;
	box-shadow: 0 2px 8px rgba(15,26,46,0.06);
	text-align: left;
}
.nsf-lp .symp-num {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	background: #C00000;
	color: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 900;
	font-size: 16px;
}
.nsf-lp .symp-text {
	flex: 1;
	font-size: 17px;
	line-height: 1.5;
	padding-top: 4px;
	color: #0F1A2E;
}

/* ─────────────────────────────────────────────────
   LOGIC BOX (S4 reveal — Bukan-Tapi)
   ───────────────────────────────────────────────── */
.nsf-lp .logic-box {
	background: #F4F8FE;
	border-radius: 14px;
	padding: 22px;
	margin: 26px 0;
	text-align: left;
}
.nsf-lp .logic-box p {
	font-size: 17px;
	margin-bottom: 14px;
	line-height: 1.55;
	text-align: left;
}
.nsf-lp .logic-box p:last-child { margin-bottom: 0; }

/* ─────────────────────────────────────────────────
   USAGE NOTE (S6 Cara Pakai)
   ───────────────────────────────────────────────── */
.nsf-lp .usage-note {
	background: #FFF8E1;
	border-left: 5px solid #FFB400;
	border-radius: 0 12px 12px 0;
	padding: 18px 22px;
	margin: 24px 0;
	font-size: 17px;
	line-height: 1.5;
	color: #5a4500;
	text-align: left;
}

/* ─────────────────────────────────────────────────
   ANCHOR COMPARE BOX (above pricing — "geram" trigger)
   ───────────────────────────────────────────────── */
.nsf-lp .anchor-compare {
	background: #fff;
	border: 3px solid #FFB400;
	border-radius: 18px;
	padding: 22px;
	margin: 0 0 32px;
	box-shadow: 0 6px 20px rgba(255,180,0,0.18);
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
.nsf-lp .anc-row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	padding: 8px 0;
	font-size: 17px;
}
.nsf-lp .anc-row span { color: #2a3550; }
.nsf-lp .anc-bad { color: #C00000; font-size: 22px; font-weight: 900; }
.nsf-lp .anc-good { color: #0B7A4B; font-size: 22px; font-weight: 900; }
.nsf-lp .anc-divider {
	border-top: 2px dashed #FFB400;
	margin: 12px 0;
}
.nsf-lp .anc-save {
	text-align: center;
	font-size: 19px;
	font-weight: 800;
	color: #0F1A2E;
	padding: 8px 0;
}
.nsf-lp .anc-save strong { color: #C00000; font-size: 28px; }

/* ─────────────────────────────────────────────────
   OFFER GRID — VALUE 2X HERO LAYOUT
   ───────────────────────────────────────────────── */
.nsf-lp .offer-grid {
	display: grid;
	grid-template-columns: 1fr 2fr 1fr;
	gap: 16px;
	margin: 28px 0;
	align-items: start;
}

/* Side bundles (Starter + Family) — smaller, simpler */
.nsf-lp .bundle-side {
	background: #fff;
	border: 2px solid #E1E8F2;
	border-radius: 14px;
	padding: 18px 14px;
	text-align: center;
	box-shadow: 0 4px 14px rgba(15,26,46,0.06);
}
.nsf-lp .bundle-side .bundle-img img {
	max-width: 150px;
	margin: 0 auto;
}
.nsf-lp .bundle-tier-small {
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 1.5px;
	color: #6b7488;
	margin: 10px 0 4px;
}
.nsf-lp .bundle-h3-small {
	font-size: 16px;
	margin: 4px 0 8px;
	font-weight: 800;
}
.nsf-lp .bundle-detail {
	font-size: 13px;
	color: #6b7488;
	line-height: 1.4;
	margin-bottom: 10px;
}
.nsf-lp .bundle-price-small {
	font-size: 36px !important;
	color: #C00000;
	font-weight: 900;
	line-height: 1;
	margin: 8px 0 4px !important;
}
.nsf-lp .bundle-per {
	font-size: 13px;
	color: #6b7488;
	margin-bottom: 14px;
}
.nsf-lp .btn-cta-small {
	font-size: 14px !important;
	padding: 12px 8px !important;
	min-height: 48px !important;
	margin: 0 !important;
}

/* Hero bundle (Value) — featured 2x */
.nsf-lp .bundle-hero {
	background: linear-gradient(180deg, #FFF8E1 0%, #fff 50%);
	border: 4px solid #FF7A00;
	border-radius: 22px;
	padding: 26px 20px 22px;
	position: relative;
	box-shadow: 0 12px 36px rgba(255,122,0,0.25);
	text-align: center;
	transform: scale(1.02);
}
.nsf-lp .hero-badge {
	position: absolute;
	top: -18px;
	left: 50%;
	transform: translateX(-50%);
	background: linear-gradient(135deg, #FF7A00, #E55E00);
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0.8px;
	padding: 8px 18px;
	border-radius: 30px;
	white-space: nowrap;
	box-shadow: 0 6px 16px rgba(255,122,0,0.4);
}
.nsf-lp .bundle-hero .bundle-img img {
	max-width: 220px;
	margin: 0 auto;
}
.nsf-lp .bundle-tier-hero {
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 2.5px;
	color: #FF7A00;
	margin: 12px 0 4px;
}
.nsf-lp .bundle-h3-hero {
	font-size: 24px;
	margin: 4px 0 6px;
	font-weight: 900;
	color: #0F1A2E;
}
.nsf-lp .bundle-detail-hero {
	font-size: 15px;
	color: #2a3550;
	margin-bottom: 14px;
	font-weight: 600;
}
.nsf-lp .bundle-price-hero {
	font-size: 64px;
	font-weight: 900;
	color: #FF7A00;
	line-height: 1;
	margin: 8px 0 6px;
}
.nsf-lp .bundle-per-hero {
	font-size: 15px;
	color: #2a3550;
	margin-bottom: 18px;
}
.nsf-lp .bundle-per-hero strong { color: #C00000; font-size: 18px; }
.nsf-lp .bundle-per-hero .strike { text-decoration: line-through; color: #888; }

.nsf-lp .hero-checks {
	background: #fff;
	border-radius: 12px;
	padding: 14px 16px;
	margin: 0 0 16px;
	text-align: left;
}
.nsf-lp .hero-checks > div {
	font-size: 14px;
	padding: 4px 0;
	color: #0F1A2E;
	font-weight: 600;
}

.nsf-lp .btn-cta-hero {
	font-size: 19px !important;
	padding: 18px 12px !important;
	min-height: 64px !important;
	margin: 0 !important;
	letter-spacing: 0.5px;
}
.nsf-lp .hero-microcopy {
	font-size: 12px;
	color: #888;
	margin-top: 10px;
	font-style: italic;
}

/* Urgency bar */
.nsf-lp .urgency-bar {
	background: linear-gradient(135deg, #C00000, #8B0000);
	color: #fff;
	border-radius: 12px;
	padding: 14px 18px;
	margin: 24px 0;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	line-height: 1.4;
}
.nsf-lp .urgency-bar strong { color: #FFD45E; }

/* ─────────────────────────────────────────────────
   Hero
   ───────────────────────────────────────────────── */
.nsf-lp .blok.hero { padding-top: 48px; }
.nsf-lp .hero h1 { font-size: 48px; }
.nsf-lp .img-wrap { margin: 28px 0; }
.nsf-lp .img-wrap img { width: 100%; height: auto; border-radius: 16px; }

/* ─────────────────────────────────────────────────
   Image + Caption Overlay (emotional anchor)
   ───────────────────────────────────────────────── */
.nsf-lp .img-caption-wrap {
	position: relative;
	margin: 28px 0;
	border-radius: 16px;
	overflow: hidden;
}
.nsf-lp .img-caption-wrap img {
	width: 100%;
	height: auto;
	display: block;
}
.nsf-lp .img-caption-wrap picture {
	display: block;
}
.nsf-lp .img-caption-top,
.nsf-lp .img-caption-bottom {
	position: absolute;
	left: 0;
	right: 0;
	padding: 20px 24px;
	color: #fff;
	font-size: 22px;
	font-weight: 800;
	line-height: 1.3;
	text-align: center;
	text-shadow: 0 2px 12px rgba(0,0,0,0.85), 0 0 4px rgba(0,0,0,0.5);
	background: linear-gradient(180deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0) 100%);
}
.nsf-lp .img-caption-bottom {
	top: auto;
	bottom: 0;
	background: linear-gradient(0deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 100%);
	padding-top: 80px;
}
.nsf-lp .img-caption-top    { top: 0; }
.nsf-lp .img-caption-top strong,
.nsf-lp .img-caption-bottom strong { color: #fff; }

/* ─────────────────────────────────────────────────
   Reveal section — dramatic product intro
   ───────────────────────────────────────────────── */
.nsf-lp .reveal .reveal-tag {
	display: inline-block;
	background: #FFB400;
	color: #0F1A2E;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 1.5px;
	padding: 8px 18px;
	border-radius: 20px;
	margin-bottom: 16px;
}
.nsf-lp .reveal h2 {
	font-size: 56px;
	margin-bottom: 6px;
}
.nsf-lp .sub-reveal {
	font-size: 26px;
	font-weight: 800;
	margin: 0 0 24px;
}
.nsf-lp .green { color: #0B7A4B; }

/* ─────────────────────────────────────────────────
   VS Comparison rows
   ───────────────────────────────────────────────── */
.nsf-lp .vs-row {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px 20px;
	background: #fff;
	border-radius: 14px;
	margin-bottom: 12px;
	box-shadow: 0 2px 10px rgba(15,26,46,0.06);
}
.nsf-lp .vs-row.vs-bad {
	opacity: 0.85;
}
.nsf-lp .vs-row.vs-good {
	background: linear-gradient(135deg, #E8F5EE, #C8E8D4);
	border: 3px solid #0B7A4B;
	box-shadow: 0 6px 20px rgba(11,122,75,0.18);
	transform: scale(1.02);
	margin-top: 18px;
}
.nsf-lp .vs-icon {
	font-size: 32px;
	font-weight: 900;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.nsf-lp .vs-row.vs-bad .vs-icon { color: #C00000; }
.nsf-lp .vs-row.vs-good .vs-icon {
	color: #fff;
	background: #0B7A4B;
	border-radius: 50%;
	font-size: 24px;
}
.nsf-lp .vs-body {
	display: flex;
	flex-direction: column;
	flex: 1;
}
.nsf-lp .vs-body strong {
	font-size: 19px;
	color: #0F1A2E;
	margin-bottom: 2px;
}
.nsf-lp .vs-body span {
	font-size: 16px;
	color: #2a3550;
	line-height: 1.4;
}
.nsf-lp .vs-row.vs-good .vs-body strong {
	color: #0B7A4B;
	font-size: 22px;
}
.nsf-lp .vs-row.vs-good .vs-body span {
	color: #064d2e;
	font-weight: 700;
}

/* ─────────────────────────────────────────────────
   Pain list — simple, no fancy borders
   ───────────────────────────────────────────────── */
.nsf-lp .pain-list {
	list-style: none;
	padding: 0;
	margin: 24px 0;
}
.nsf-lp .pain-list li {
	font-size: 19px;
	line-height: 1.55;
	padding: 14px 0 14px 32px;
	position: relative;
	border-bottom: 1px solid rgba(15,26,46,0.08);
}
.nsf-lp .pain-list li:last-child { border-bottom: none; }
.nsf-lp .pain-list li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 14px;
	color: #1E5BB8;
	font-weight: 900;
	font-size: 20px;
}

/* Feature list */
.nsf-lp .feature-list {
	list-style: none;
	padding: 0;
	margin: 20px 0;
}
.nsf-lp .feature-list li {
	font-size: 18px;
	padding: 10px 0;
	border-bottom: 1px solid rgba(15,26,46,0.06);
	font-weight: 600;
}
.nsf-lp .feature-list li:last-child { border-bottom: none; }

/* Analogy block */
.nsf-lp .analogy { margin: 24px 0; }
.nsf-lp .analogy p {
	font-size: 19px;
	padding: 16px 18px;
	background: #fff;
	border-radius: 12px;
	margin-bottom: 12px;
	box-shadow: 0 2px 8px rgba(15,26,46,0.06);
}

/* Warning */
.nsf-lp .warning {
	background: #FFF4E0;
	border-left: 5px solid #FFB400;
	padding: 20px 22px;
	border-radius: 0 12px 12px 0;
	margin: 28px 0;
}
.nsf-lp .warning h3 { color: #B86E00; font-size: 20px; margin-bottom: 8px; }
.nsf-lp .warning p { font-size: 17px; margin: 0; }

/* Timeline */
.nsf-lp .timeline {
	background: #0F1A2E;
	color: #fff;
	border-radius: 16px;
	padding: 24px;
	margin: 24px 0;
}
.nsf-lp .timeline .tl-row {
	display: flex;
	gap: 18px;
	padding: 14px 0;
	border-bottom: 1px solid rgba(255,255,255,0.1);
	font-size: 17px;
	line-height: 1.5;
}
.nsf-lp .timeline .tl-row:last-child { border-bottom: none; }
.nsf-lp .timeline .tl-t {
	color: #FFB400;
	font-weight: 900;
	min-width: 80px;
	font-size: 17px;
}
.nsf-lp .timeline .climax {
	background: rgba(255,180,0,0.12);
	margin: 12px -12px -12px;
	padding: 18px 12px;
	border-radius: 12px;
	font-weight: 800;
}

/* Halal + Quote */
.nsf-lp .halal-block {
	background: #E8F5EE;
	border: 2px solid #0B7A4B;
	border-radius: 14px;
	padding: 22px;
	margin: 24px 0;
	text-align: center;
}
.nsf-lp .halal-block strong {
	display: block;
	font-size: 22px;
	color: #0B7A4B;
	margin-bottom: 8px;
}
.nsf-lp .halal-block p { font-size: 16px; margin: 0; }

.nsf-lp .quote {
	background: #fff;
	border-left: 5px solid #FFB400;
	padding: 20px 22px;
	margin: 20px 0;
	border-radius: 0 12px 12px 0;
	font-size: 18px;
	line-height: 1.6;
	box-shadow: 0 2px 12px rgba(15,26,46,0.06);
}
.nsf-lp .quote cite {
	display: block;
	margin-top: 14px;
	font-style: normal;
	font-weight: 700;
	color: #6b7488;
	font-size: 15px;
}

/* Stats */
.nsf-lp .stats {
	display: flex;
	gap: 12px;
	margin: 28px 0;
	flex-wrap: wrap;
}
.nsf-lp .stats > div {
	flex: 1;
	min-width: 140px;
	background: #fff;
	padding: 22px 14px;
	border-radius: 14px;
	text-align: center;
	box-shadow: 0 2px 8px rgba(15,26,46,0.06);
}
.nsf-lp .stats strong {
	display: block;
	font-size: 32px;
	font-weight: 900;
	color: #1E5BB8;
	line-height: 1;
}
.nsf-lp .stats span {
	display: block;
	margin-top: 6px;
	font-size: 14px;
	color: #6b7488;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

/* Offer */
.nsf-lp .offer h2 { text-align: center; }
.nsf-lp .offer .lead { text-align: center; margin: 8px 0 4px; }
.nsf-lp .offer .small { text-align: center; }

.nsf-lp .bundle {
	background: #fff;
	border: 2px solid #E1E8F2;
	border-radius: 18px;
	padding: 24px;
	margin: 22px 0;
	position: relative;
	box-shadow: 0 4px 16px rgba(15,26,46,0.06);
}
.nsf-lp .bundle-featured {
	border-color: #FF7A00;
	border-width: 3px;
	box-shadow: 0 8px 28px rgba(255,122,0,0.18);
}
.nsf-lp .featured-badge {
	position: absolute;
	top: -16px;
	left: 50%;
	transform: translateX(-50%);
	background: linear-gradient(135deg, #FF7A00, #E55E00);
	color: #fff;
	padding: 8px 22px;
	border-radius: 30px;
	font-size: 15px;
	font-weight: 900;
	letter-spacing: 0.5px;
	white-space: nowrap;
	box-shadow: 0 4px 12px rgba(255,122,0,0.35);
}

.nsf-lp .bundle-img { margin: 6px 0 18px; text-align: center; }
.nsf-lp .bundle-img img { max-width: 320px; width: 100%; margin: 0 auto; border-radius: 12px; }
.nsf-lp .bundle-tier {
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 2px;
	color: #6b7488;
	text-transform: uppercase;
	margin-bottom: 6px;
}
.nsf-lp .bundle h3 { font-size: 24px; margin-bottom: 8px; }
.nsf-lp .bundle p {
	font-size: 16px;
	color: #2a3550;
	margin-bottom: 12px;
}
.nsf-lp .bundle-price {
	font-size: 56px;
	font-weight: 900;
	color: #C00000;
	line-height: 1;
	margin: 16px 0 6px;
}
.nsf-lp .bundle-featured .bundle-price { color: #FF7A00; }
.nsf-lp .bundle-saving {
	display: inline-block;
	background: #FFEFCC;
	color: #856404;
	font-size: 14px;
	font-weight: 800;
	padding: 6px 14px;
	border-radius: 20px;
	margin-bottom: 16px;
}

/* CTA */
.nsf-lp .btn-cta {
	display: block;
	width: 100%;
	max-width: 520px;
	margin: 16px auto 0;
	padding: 22px 24px;
	min-height: 72px;
	background: linear-gradient(180deg, #0B7A4B, #085F39);
	color: #fff !important;
	font-size: 22px;
	font-weight: 900;
	text-align: center;
	text-decoration: none;
	border-radius: 80px;
	box-shadow: 0 8px 24px rgba(11,122,75,0.35);
	text-transform: uppercase;
	line-height: 1.2;
	letter-spacing: 0.3px;
	transition: transform 0.15s ease;
}
.nsf-lp .btn-cta:hover { transform: translateY(-2px); }
.nsf-lp .btn-cta-orange {
	background: linear-gradient(180deg, #FF7A00, #E55E00);
	box-shadow: 0 8px 24px rgba(255,122,0,0.35);
}
.nsf-lp .btn-cta-big {
	font-size: 24px;
	padding: 26px 24px;
	min-height: 84px;
}
.nsf-lp .btn-secondary {
	display: block;
	max-width: 520px;
	margin: 14px auto 0;
	color: #FFD45E !important;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	text-decoration: underline;
	padding: 10px;
}

.nsf-lp .wa-fallback {
	text-align: center;
	font-size: 16px;
	color: #6b7488;
	margin-top: 28px;
}
.nsf-lp .wa-fallback a {
	color: #25D366;
	font-weight: 800;
}

/* Guarantee */
.nsf-lp .guarantee {
	background: #fff;
	border: 3px solid #0B7A4B;
	border-radius: 18px;
	padding: 28px 22px;
	margin: 28px 0;
	text-align: center;
}
.nsf-lp .g-pct {
	display: inline-block;
	background: #0B7A4B;
	color: #fff;
	font-size: 28px;
	font-weight: 900;
	border-radius: 50%;
	width: 96px;
	height: 96px;
	line-height: 96px;
	margin-bottom: 14px;
}
.nsf-lp .guarantee h3 { font-size: 24px; color: #0B7A4B; margin-bottom: 12px; }
.nsf-lp .g-wa { margin-top: 14px; font-weight: 700; }

/* FAQ */
.nsf-lp .faq {
	border-bottom: 1px solid rgba(15,26,46,0.1);
	padding: 18px 0;
}
.nsf-lp .faq:last-child { border-bottom: none; }
.nsf-lp .faq h3 { font-size: 19px; color: #1E5BB8; margin-bottom: 8px; }
.nsf-lp .faq p { font-size: 17px; margin: 0; color: #2a3550; }

/* Final push */
.nsf-lp .blok-final h2 { color: #fff; text-align: center; }
.nsf-lp .blok-final .path-bad,
.nsf-lp .blok-final .path-good {
	background: rgba(255,255,255,0.06);
	border-radius: 14px;
	padding: 22px;
	margin: 18px 0;
}
.nsf-lp .blok-final .path-bad strong {
	color: #FF6B6B;
	display: block;
	font-size: 20px;
	margin-bottom: 8px;
}
.nsf-lp .blok-final .path-good {
	background: rgba(255,180,0,0.15);
	border: 2px solid rgba(255,180,0,0.4);
}
.nsf-lp .blok-final .path-good strong {
	color: #FFD45E;
	display: block;
	font-size: 20px;
	margin-bottom: 8px;
}
.nsf-lp .blok-final p { color: #e8ecf4; font-size: 17px; }

/* Footer */
.nsf-lp .nsf-footer {
	background: #0a1220;
	color: #8a96a8;
	text-align: center;
	padding: 30px 22px;
	font-size: 14px;
}
.nsf-lp .nsf-footer p { font-size: 14px; margin: 0 0 8px; color: #c4cad6; }
.nsf-lp .nsf-footer .small { color: #6b7488; }
.nsf-lp .nsf-footer .footer-wa { font-size: 14px; color: #8a96a8; margin: 6px 0 10px; }
.nsf-lp .nsf-footer .footer-wa a { color: #25D366; font-weight: 700; }

/* Mobile */
@media (max-width: 600px) {
	.nsf-lp { font-size: 18px; }
	.nsf-lp .blok { padding: 44px 0; }
	.nsf-lp h1 { font-size: 32px; }
	.nsf-lp .hero h1 { font-size: 34px; }
	.nsf-lp h2 { font-size: 26px; }
	.nsf-lp h3 { font-size: 20px; }
	.nsf-lp .lead { font-size: 19px; }
	.nsf-lp .sub { font-size: 19px; }
	.nsf-lp .lead-final { font-size: 22px; }
	.nsf-lp .bundle-price { font-size: 48px; }
	.nsf-lp .btn-cta { font-size: 19px; padding: 20px; min-height: 64px; }
	.nsf-lp .btn-cta-big { font-size: 21px; padding: 22px; min-height: 72px; }
	.nsf-lp .stats > div { min-width: calc(50% - 6px); }
	.nsf-lp .stats strong { font-size: 26px; }
	.nsf-lp .timeline .tl-row { flex-direction: column; gap: 4px; }
	.nsf-lp .timeline .tl-t { min-width: auto; }
	.nsf-lp .reveal h2 { font-size: 38px; }
	.nsf-lp .sub-reveal { font-size: 20px; }
	.nsf-lp .img-caption-top, .nsf-lp .img-caption-bottom {
		font-size: 17px;
		padding: 14px 16px;
	}
	.nsf-lp .img-caption-bottom { padding-top: 60px; }
	.nsf-lp .vs-row { padding: 14px 16px; gap: 12px; }
	.nsf-lp .vs-icon { font-size: 26px; width: 36px; height: 36px; }
	.nsf-lp .vs-body strong { font-size: 17px; }
	.nsf-lp .vs-body span { font-size: 14px; }
	.nsf-lp .cost-box { padding: 16px; gap: 14px; }
	.nsf-lp .cost-num { width: 40px; height: 40px; font-size: 18px; }
	.nsf-lp .cost-body strong { font-size: 17px; }
	.nsf-lp .cost-body p { font-size: 15px; }
	.nsf-lp .value-anchor { font-size: 16px; padding: 18px 14px; }
	.nsf-lp .close-line { font-size: 16px; }
	.nsf-lp .challenge { font-size: 18px; padding: 16px 18px; }
	.nsf-lp .challenge strong { font-size: 20px; }
	.nsf-lp .bukan-row { font-size: 16px; padding: 14px 16px; }
	.nsf-lp .bukan-row strong { font-size: 17px; }
	.nsf-lp .ms-step { padding: 14px 16px; gap: 12px; }
	.nsf-lp .ms-num { width: 38px; height: 38px; font-size: 18px; }
	.nsf-lp .ms-text { font-size: 16px; padding-top: 5px; }
	.nsf-lp .t-head { padding: 14px 16px; gap: 10px; }
	.nsf-lp .t-avatar { width: 46px; height: 46px; font-size: 18px; }
	.nsf-lp .t-meta strong { font-size: 16px; }
	.nsf-lp .t-meta span { font-size: 12px; }
	.nsf-lp .t-stars { font-size: 14px; }
	.nsf-lp .t-row { padding: 14px 16px; }
	.nsf-lp .t-row p { font-size: 15px; }
	.nsf-lp .t-badge { font-size: 11px; padding: 3px 10px; }
	.nsf-lp .t-body-single { padding: 14px 16px; }
	.nsf-lp .t-body-single p { font-size: 15px; }
	.nsf-lp .t-verified { padding: 6px 16px; font-size: 12px; }

	/* Symptom list mobile */
	.nsf-lp .symp-row { padding: 12px 14px; gap: 10px; }
	.nsf-lp .symp-num { width: 28px; height: 28px; font-size: 14px; }
	.nsf-lp .symp-text { font-size: 15px; padding-top: 3px; }

	/* Logic box mobile */
	.nsf-lp .logic-box { padding: 16px; }
	.nsf-lp .logic-box p { font-size: 15px; }

	/* Usage note mobile */
	.nsf-lp .usage-note { font-size: 15px; padding: 14px 16px; }

	/* Anchor compare mobile */
	.nsf-lp .anchor-compare { padding: 16px; }
	.nsf-lp .anc-row { font-size: 15px; }
	.nsf-lp .anc-bad, .nsf-lp .anc-good { font-size: 19px; }
	.nsf-lp .anc-save { font-size: 17px; }
	.nsf-lp .anc-save strong { font-size: 24px; }

	/* OFFER GRID MOBILE — stack vertically, Value first */
	.nsf-lp .offer-grid {
		grid-template-columns: 1fr;
		gap: 14px;
	}
	.nsf-lp .bundle-hero {
		order: -1;  /* Value first on mobile */
		transform: none;
		padding: 22px 16px 18px;
	}
	.nsf-lp .bundle-hero .bundle-img img { max-width: 180px; }
	.nsf-lp .bundle-price-hero { font-size: 52px; }
	.nsf-lp .bundle-h3-hero { font-size: 21px; }
	.nsf-lp .btn-cta-hero { font-size: 17px !important; min-height: 56px !important; }

	.nsf-lp .bundle-side {
		display: grid;
		grid-template-columns: 100px 1fr;
		gap: 12px;
		padding: 14px;
		text-align: left;
		align-items: center;
	}
	.nsf-lp .bundle-side .bundle-img { grid-row: span 6; }
	.nsf-lp .bundle-side .bundle-img img { max-width: 100px; }
	.nsf-lp .bundle-tier-small { margin: 0; }
	.nsf-lp .bundle-h3-small { margin: 0; }
	.nsf-lp .bundle-detail { margin: 0; }
	.nsf-lp .bundle-price-small { font-size: 28px !important; margin: 4px 0 !important; }
	.nsf-lp .bundle-per { margin: 0 0 8px; }
	.nsf-lp .btn-cta-small { grid-column: span 2; }

	.nsf-lp .urgency-bar { font-size: 14px; padding: 12px 14px; }
	.nsf-lp .hero-checks > div { font-size: 13px; }
}

/* ═══════════════════════════════════════════════════
   OFFER V2 — Box-focused redesign (Beli X Free X)
   ═══════════════════════════════════════════════════ */

/* Comparison Anchor */
.nsf-lp .comp-anchor {
	background: #fff;
	border: 2px dashed #C00000;
	border-radius: 16px;
	padding: 22px 24px;
	margin: 0 0 24px;
	text-align: center;
}
.nsf-lp .comp-anchor h3 {
	font-size: 22px;
	font-weight: 900;
	line-height: 1.3;
	color: #0F1A2E;
	margin-bottom: 10px;
}
.nsf-lp .comp-anchor p {
	font-size: 15px;
	color: #2a3550;
	margin: 0;
	line-height: 1.5;
}

/* Confidence Strip */
.nsf-lp .confidence-strip {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px 18px;
	background: #E8F5EE;
	border-radius: 12px;
	padding: 12px 16px;
	margin: 0 0 28px;
	text-align: center;
}
.nsf-lp .confidence-strip span {
	font-size: 14px;
	font-weight: 700;
	color: #0B7A4B;
}

/* Offer Grid v2 — 3 columns, Value featured */
.nsf-lp .offer-grid-v2 {
	display: grid;
	grid-template-columns: 1fr 1.3fr 1fr;
	gap: 16px;
	margin: 30px 0;
	align-items: start;
}

/* Base package card */
.nsf-lp .pkg {
	background: #fff;
	border: 2px solid #E1E8F2;
	border-radius: 18px;
	padding: 22px 18px 20px;
	position: relative;
	text-align: center;
	box-shadow: 0 4px 16px rgba(15,26,46,0.06);
}

/* Badges */
.nsf-lp .pkg-badge {
	position: absolute;
	top: -14px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.8px;
	padding: 6px 16px;
	border-radius: 24px;
	white-space: nowrap;
	color: #fff;
}
.nsf-lp .pkg-badge-grey { background: #6b7488; }
.nsf-lp .pkg-badge-gold {
	background: linear-gradient(135deg, #D4A017, #B8860B);
	font-size: 13px;
	box-shadow: 0 4px 12px rgba(184,134,11,0.4);
}
.nsf-lp .pkg-badge-green { background: #0B7A4B; }

/* Image */
.nsf-lp .pkg-img {
	margin: 14px 0 14px;
}
.nsf-lp .pkg-img img {
	width: 100%;
	max-width: 240px;
	margin: 0 auto;
	border-radius: 12px;
}

/* Headline — "Beli X Kotak, PERCUMA X Kotak" */
.nsf-lp .pkg-headline {
	font-size: 18px;
	font-weight: 800;
	line-height: 1.25;
	color: #0F1A2E;
	margin: 0 0 10px;
}
.nsf-lp .pkg-headline-hero {
	font-size: 22px;
}
.nsf-lp .pkg-free {
	color: #C00000;
	font-weight: 900;
}

/* Total Dapat */
.nsf-lp .pkg-total {
	font-size: 14px;
	color: #2a3550;
	margin-bottom: 12px;
}
.nsf-lp .pkg-total strong {
	display: inline-block;
	background: #FFF8E1;
	color: #856404;
	padding: 4px 12px;
	border-radius: 14px;
	font-weight: 900;
	font-size: 16px;
	margin-left: 4px;
}
.nsf-lp .pkg-total-hero strong {
	background: #FFD45E;
	color: #5a4500;
	font-size: 18px;
	padding: 5px 14px;
}

/* Price */
.nsf-lp .pkg-price {
	font-size: 42px;
	font-weight: 900;
	color: #C00000;
	line-height: 1;
	margin: 10px 0 4px;
}
.nsf-lp .pkg-price-hero {
	font-size: 56px;
	color: #FF7A00;
}
.nsf-lp .pkg-price-sub {
	font-size: 14px;
	color: #6b7488;
	font-weight: 600;
	margin-left: 6px;
}
.nsf-lp .pkg-note {
	font-size: 12px;
	color: #888;
	margin-bottom: 12px;
	font-style: italic;
}

/* Micro */
.nsf-lp .pkg-micro {
	font-size: 13px;
	color: #2a3550;
	line-height: 1.45;
	margin: 0 0 12px;
}

/* Extra badge for Value */
.nsf-lp .pkg-extra-badge {
	background: #F4F8FE;
	border: 1px solid #1E5BB8;
	color: #1E5BB8;
	font-size: 12px;
	font-weight: 700;
	padding: 8px 12px;
	border-radius: 12px;
	margin: 0 0 12px;
}

/* Upsell hook for Family */
.nsf-lp .pkg-upsell {
	background: #FFF4E0;
	border-left: 4px solid #FFB400;
	color: #5a4500;
	font-size: 13px;
	padding: 10px 12px;
	border-radius: 0 8px 8px 0;
	margin: 0 0 12px;
	text-align: left;
	line-height: 1.4;
}

/* Trust badges in card */
.nsf-lp .pkg-trust {
	display: flex;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
	margin: 0 0 14px;
	padding-top: 12px;
	border-top: 1px solid #E1E8F2;
}
.nsf-lp .pkg-trust span {
	font-size: 11px;
	color: #0B7A4B;
	font-weight: 700;
}

/* CTA */
.nsf-lp .pkg-cta {
	font-size: 14px !important;
	padding: 14px 8px !important;
	min-height: 52px !important;
	margin: 0 !important;
	line-height: 1.2;
}
.nsf-lp .pkg-cta-hero {
	font-size: 16px !important;
	padding: 18px 10px !important;
	min-height: 64px !important;
}

/* VALUE — Hero card styling */
.nsf-lp .pkg-value {
	border: 3px solid #FF7A00;
	background: linear-gradient(180deg, #FFF8E1 0%, #fff 40%);
	transform: scale(1.02);
	box-shadow: 0 12px 36px rgba(255,122,0,0.22);
	z-index: 2;
}

/* STARTER — subtle de-emphasis */
.nsf-lp .pkg-starter { opacity: 0.95; }

/* FAMILY — green accent */
.nsf-lp .pkg-family { border-color: #0B7A4B; }

/* Risk Reversal Box */
.nsf-lp .risk-box {
	background: linear-gradient(135deg, #E8F5EE, #C8E8D4);
	border: 2px solid #0B7A4B;
	border-radius: 18px;
	padding: 26px 22px;
	margin: 32px 0 20px;
	text-align: center;
}
.nsf-lp .risk-box h3 {
	font-size: 24px;
	color: #0B7A4B;
	font-weight: 900;
	margin-bottom: 18px;
}
.nsf-lp .risk-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}
.nsf-lp .risk-item {
	display: flex;
	gap: 12px;
	background: #fff;
	border-radius: 12px;
	padding: 12px 14px;
	text-align: left;
	align-items: center;
}
.nsf-lp .risk-icon {
	font-size: 28px;
	flex-shrink: 0;
}
.nsf-lp .risk-text {
	font-size: 14px;
	line-height: 1.4;
	color: #0F1A2E;
}
.nsf-lp .risk-text strong { color: #0B7A4B; }

/* Mobile (<=600px) — offer v2 stacks, Value first */
@media (max-width: 600px) {
	.nsf-lp .comp-anchor { padding: 18px 16px; }
	.nsf-lp .comp-anchor h3 { font-size: 18px; }
	.nsf-lp .comp-anchor p { font-size: 14px; }

	.nsf-lp .confidence-strip { gap: 6px 12px; padding: 10px 12px; }
	.nsf-lp .confidence-strip span { font-size: 12px; }

	.nsf-lp .offer-grid-v2 {
		grid-template-columns: 1fr;
		gap: 28px;
	}
	.nsf-lp .pkg-value {
		order: -1;
		transform: none;
	}
	.nsf-lp .pkg-img img { max-width: 220px; }
	.nsf-lp .pkg-headline { font-size: 20px; }
	.nsf-lp .pkg-headline-hero { font-size: 24px; }
	.nsf-lp .pkg-price { font-size: 38px; }
	.nsf-lp .pkg-price-hero { font-size: 52px; }
	.nsf-lp .pkg-cta { font-size: 15px !important; }
	.nsf-lp .pkg-cta-hero { font-size: 17px !important; }

	.nsf-lp .risk-grid { grid-template-columns: 1fr; }
	.nsf-lp .risk-box h3 { font-size: 20px; }
}

/* ═══════════════════════════════════════════════════
   SIMPLIFICATION UPDATE — Compact Anchor, Reviews, Steps
   ═══════════════════════════════════════════════════ */

/* Compact VS anchor banner */
.nsf-lp .comp-anchor-slim {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	background: #fff;
	border: 2px solid #E1E8F2;
	border-radius: 14px;
	margin: 0 0 24px;
	overflow: hidden;
	box-shadow: 0 3px 12px rgba(15,26,46,0.07);
}
.nsf-lp .comp-left,
.nsf-lp .comp-right {
	flex: 1;
	padding: 18px 16px;
	font-size: 15px;
	line-height: 1.35;
	text-align: center;
}
.nsf-lp .comp-left {
	background: #FFF0F0;
	color: #7a1010;
	border-right: 1px solid #E1E8F2;
}
.nsf-lp .comp-left strong {
	display: block;
	font-size: 28px;
	font-weight: 900;
	color: #C00000;
	line-height: 1;
	margin-top: 4px;
}
.nsf-lp .comp-right {
	background: #E8F5EE;
	color: #064d2e;
}
.nsf-lp .comp-right strong {
	display: block;
	font-size: 28px;
	font-weight: 900;
	color: #0B7A4B;
	line-height: 1;
	margin-top: 4px;
}
.nsf-lp .comp-vs {
	flex-shrink: 0;
	width: 44px;
	font-size: 18px;
	font-weight: 900;
	color: #6b7488;
	text-align: center;
	background: #fff;
	padding: 18px 0;
	border-left: 1px solid #E1E8F2;
	border-right: 1px solid #E1E8F2;
}

/* Short one-liner reviews */
.nsf-lp .review-list {
	margin: 22px 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.nsf-lp .review-item {
	background: #fff;
	border: 1px solid #E1E8F2;
	border-radius: 14px;
	padding: 16px 20px;
	text-align: left;
	box-shadow: 0 2px 8px rgba(15,26,46,0.05);
}
.nsf-lp .review-stars {
	color: #FFB400;
	font-size: 16px;
	letter-spacing: 1px;
	margin-bottom: 6px;
}
.nsf-lp .review-text {
	font-size: 16px;
	line-height: 1.55;
	color: #0F1A2E;
	margin: 0 0 8px;
}
.nsf-lp .review-name {
	font-size: 13px;
	color: #6b7488;
	font-weight: 700;
}

/* Simplified 3-step Cara Pakai */
.nsf-lp .simple-steps {
	margin: 24px 0 8px;
}
.nsf-lp .ss-row {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 16px 18px;
	background: #fff;
	border-radius: 12px;
	margin-bottom: 10px;
	box-shadow: 0 2px 8px rgba(15,26,46,0.06);
	font-size: 18px;
	line-height: 1.45;
	text-align: left;
}
.nsf-lp .ss-num {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	background: #1E5BB8;
	color: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	font-weight: 900;
}
.nsf-lp .ss-row.ss-done {
	background: linear-gradient(135deg, #E8F5EE, #C8E8D4);
	border: 2px solid #0B7A4B;
}
.nsf-lp .ss-row.ss-done .ss-num {
	background: #0B7A4B;
	font-size: 18px;
}

/* Small note link */
.nsf-lp .small-note {
	font-size: 14px;
	color: #6b7488;
	text-align: center;
	margin-top: 4px;
}
.nsf-lp .small-note a {
	color: #1E5BB8;
	font-weight: 700;
	text-decoration: underline;
}

/* Final push body */
.nsf-lp .final-body {
	font-size: 19px;
	color: #e8ecf4;
	line-height: 1.6;
	margin: 16px 0 32px;
	text-align: center;
}

@media (max-width: 600px) {
	/* Compact anchor slim mobile */
	.nsf-lp .comp-anchor-slim { flex-direction: row; }
	.nsf-lp .comp-left, .nsf-lp .comp-right { padding: 14px 10px; font-size: 13px; }
	.nsf-lp .comp-left strong, .nsf-lp .comp-right strong { font-size: 22px; }
	.nsf-lp .comp-vs { width: 36px; font-size: 15px; padding: 14px 0; }

	/* Reviews mobile */
	.nsf-lp .review-item { padding: 14px 16px; }
	.nsf-lp .review-text { font-size: 15px; }

	/* Simple steps mobile */
	.nsf-lp .ss-row { font-size: 16px; padding: 14px 14px; gap: 12px; }
	.nsf-lp .ss-num { width: 36px; height: 36px; font-size: 17px; }
}

@media (prefers-reduced-motion: reduce) {
	.nsf-lp .btn-cta:hover { transform: none; }
}

/* ═══════════════════════════════════════════════════
   CONVERSION REBUILD v4 — New Elements
   ═══════════════════════════════════════════════════ */

/* ── ATTENTION BAR (replaces generic trust bar) ── */
.nsf-lp .attention-bar {
	background: #085F39;
	color: #FFD45E;
	text-align: center;
	font-size: 13px;
	font-weight: 900;
	padding: 11px 16px;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	line-height: 1.3;
}

/* ── HERO EMPHASIS LINE ── */
.nsf-lp .hero-emphasis {
	font-size: 24px;
	font-weight: 900;
	color: #1E5BB8;
	line-height: 1.35;
	margin: 20px 0 10px;
	text-align: center;
}

/* ── HI-GREEN COLOR ── */
.nsf-lp .hi-green { color: #0B7A4B; }

/* ── SOLUTION HEADLINE (BAJU / MESIN) ── */
.nsf-lp .solution-headline {
	font-size: 38px;
	font-weight: 900;
	line-height: 1.2;
	margin-bottom: 16px;
}

/* ── PROBLEM — CHECKLIST DUAL CARDS ── */
.nsf-lp .checklist-cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin: 22px 0;
}
.nsf-lp .check-card {
	border-radius: 16px;
	padding: 18px 16px;
	text-align: left;
}
.nsf-lp .check-card.check-tried {
	background: #E8F5EE;
	border: 2px solid #0B7A4B;
}
.nsf-lp .check-card.check-still {
	background: #FFF0F0;
	border: 2px solid #C00000;
}
.nsf-lp .check-card-title {
	font-size: 14px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 12px;
}
.nsf-lp .check-tried .check-card-title { color: #064d2e; }
.nsf-lp .check-still .check-card-title { color: #8B0000; }
.nsf-lp .check-list {
	list-style: none;
	padding: 0; margin: 0;
}
.nsf-lp .check-list li {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	padding: 5px 0;
}
.nsf-lp .check-yes { color: #064d2e; }
.nsf-lp .check-no  { color: #8B0000; }

/* ── PUNCHLINE BOX ── */
.nsf-lp .punchline-box {
	background: #FFF0F0;
	border-left: 6px solid #C00000;
	border-radius: 0 16px 16px 0;
	padding: 20px 24px;
	margin: 20px 0 18px;
	font-size: 20px;
	line-height: 1.5;
	color: #2a1010;
	text-align: left;
}
.nsf-lp .punchline-box strong { color: #C00000; }

/* ── CARA GUNA — HOWTO POSTER ── */
.nsf-lp .howto-poster {
	background: #0F1A2E;
	border-radius: 22px;
	padding: 32px 24px 24px;
	margin: 28px 0;
	text-align: center;
	box-shadow: 0 12px 36px rgba(15,26,46,0.25);
}
.nsf-lp .howto-badge {
	display: inline-block;
	background: #FFD45E;
	color: #0F1A2E;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 2px;
	padding: 8px 22px;
	border-radius: 24px;
	margin-bottom: 28px;
}
.nsf-lp .howto-steps {
	display: flex;
	align-items: stretch;
	gap: 10px;
	justify-content: center;
}
.nsf-lp .howto-step {
	flex: 1;
	background: rgba(255,255,255,0.07);
	border-radius: 18px;
	padding: 22px 12px 18px;
	text-align: center;
}
.nsf-lp .howto-step.howto-done {
	background: rgba(11,122,75,0.25);
	border: 2px solid #0B7A4B;
}
.nsf-lp .howto-icon {
	font-size: 26px;
	margin-bottom: 8px;
	display: block;
}
.nsf-lp .howto-num {
	background: #1E5BB8;
	color: #fff;
	width: 30px; height: 30px;
	border-radius: 50%;
	display: flex;
	align-items: center; justify-content: center;
	font-size: 15px; font-weight: 900;
	margin: 0 auto 10px;
}
.nsf-lp .howto-step.howto-done .howto-num { background: #0B7A4B; }
.nsf-lp .howto-text strong {
	display: block;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.5px;
	color: #FFD45E;
	margin-bottom: 5px;
	line-height: 1.3;
}
.nsf-lp .howto-text span {
	font-size: 11px;
	color: rgba(255,255,255,0.65);
	line-height: 1.4;
	display: block;
}
.nsf-lp .howto-arrow {
	color: #FFD45E;
	font-size: 22px;
	font-weight: 900;
	flex-shrink: 0;
	align-self: center;
}
.nsf-lp .howto-caption {
	margin-top: 18px;
	font-size: 13px;
	color: rgba(255,255,255,0.5);
	font-style: italic;
}

/* ── PROOF SECTION — MINI CARDS ── */
.nsf-lp .proof-mini-cards {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 22px 0 6px;
}
.nsf-lp .proof-mini {
	background: #fff;
	border-radius: 16px;
	padding: 18px 20px;
	text-align: left;
	box-shadow: 0 2px 12px rgba(15,26,46,0.10);
	display: flex;
	align-items: center;
	gap: 16px;
}
.nsf-lp .proof-mini-icon {
	font-size: 32px;
	flex-shrink: 0;
	line-height: 1;
}
.nsf-lp .proof-mini-text {
	flex: 1;
}
.nsf-lp .proof-mini strong {
	display: block;
	font-size: 16px;
	font-weight: 900;
	color: #0F1A2E;
	margin-bottom: 3px;
	line-height: 1.3;
}
.nsf-lp .proof-mini small {
	display: block;
	font-size: 14px;
	color: #6b7488;
	line-height: 1.4;
}

/* ── FEEDBACK WALL ── */
.nsf-lp .feedback-wall-label {
	font-size: 14px;
	font-weight: 700;
	color: #6b7488;
	text-align: center;
	margin: 28px 0 10px;
	letter-spacing: 0.3px;
	text-transform: uppercase;
}
.nsf-lp .feedback-wall {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin: 0 0 28px;
}
.nsf-lp .feedback-item {
	background: #fff;
	border-radius: 14px;
	padding: 14px 16px;
	font-size: 14px;
	line-height: 1.55;
	color: #0F1A2E;
	text-align: left;
	border-left: 3px solid #1E5BB8;
	box-shadow: 0 2px 8px rgba(15,26,46,0.07);
	font-style: italic;
}

/* ── OFFER SECTION ── */
.nsf-lp .promo-pill {
	display: inline-block;
	background: linear-gradient(135deg, #FF7A00, #E55E00);
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0.8px;
	padding: 10px 22px;
	border-radius: 30px;
	margin-bottom: 8px;
}
.nsf-lp .offer-sub-info {
	font-size: 15px;
	color: #6b7488;
	margin: 0 0 22px;
}

/* ── RM79 HERO BOX ── */
.nsf-lp .offer-hero-box {
	background: linear-gradient(160deg, #0F1A2E 0%, #16253e 100%);
	border: 3px solid #FF7A00;
	border-radius: 24px;
	padding: 34px 24px 28px;
	margin: 0 0 24px;
	text-align: center;
	box-shadow: 0 14px 44px rgba(255,122,0,0.28);
}
.nsf-lp .ohr-eyebrow {
	display: inline-block;
	background: #FF7A00;
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 1px;
	padding: 8px 20px;
	border-radius: 24px;
	margin-bottom: 22px;
}
.nsf-lp .ohr-math {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}
.nsf-lp .ohr-buy {
	background: rgba(255,255,255,0.1);
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	padding: 10px 18px;
	border-radius: 12px;
}
.nsf-lp .ohr-plus {
	color: #FFD45E;
	font-size: 24px;
	font-weight: 900;
}
.nsf-lp .ohr-free {
	background: rgba(255,212,94,0.15);
	border: 2px solid #FFD45E;
	color: #FFD45E;
	font-size: 15px;
	font-weight: 900;
	padding: 10px 18px;
	border-radius: 12px;
}
.nsf-lp .ohr-total {
	font-size: 16px;
	font-weight: 900;
	color: #fff;
	margin-bottom: 10px;
	letter-spacing: 1.5px;
}
.nsf-lp .ohr-price {
	font-size: 80px;
	font-weight: 900;
	color: #FF7A00;
	line-height: 1;
	margin-bottom: 8px;
	text-shadow: 0 4px 24px rgba(255,122,0,0.6);
}
.nsf-lp .ohr-cod {
	font-size: 14px;
	font-weight: 700;
	color: rgba(255,255,255,0.65);
	margin-bottom: 22px;
	letter-spacing: 0.5px;
}
.nsf-lp .ohr-btn {
	max-width: 360px;
	font-size: 18px !important;
	padding: 20px 24px !important;
	min-height: 64px !important;
}

/* ── PACKAGE CARDS — UPGRADE HINT ── */
.nsf-lp .pkg-upgrade-hint {
	font-size: 13px;
	color: #2a3550;
	line-height: 1.45;
	margin: 0 0 14px;
	font-style: italic;
}

/* ── TRUST ROW COMPACT ── */
.nsf-lp .trust-row-compact {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
	margin: 24px 0 16px;
}
.nsf-lp .trc-item {
	background: #E8F5EE;
	color: #064d2e;
	font-size: 13px;
	font-weight: 700;
	padding: 8px 16px;
	border-radius: 24px;
	border: 1px solid rgba(11,122,75,0.2);
}

/* ── FINAL OFFER RECAP (updated) ── */
.nsf-lp .for-eyebrow {
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 2px;
	color: #FFD45E;
	margin-bottom: 8px;
	text-transform: uppercase;
}
.nsf-lp .for-main {
	font-size: 30px;
	font-weight: 900;
	color: #fff;
	line-height: 1.1;
	margin-bottom: 8px;
}
.nsf-lp .for-sub {
	font-size: 14px;
	color: rgba(255,255,255,0.7);
	font-weight: 600;
}

/* ─── MOBILE (≤600px) ─── */
@media (max-width: 600px) {

	/* Attention bar */
	.nsf-lp .attention-bar { font-size: 11px; padding: 9px 14px; letter-spacing: 0.8px; }

	/* Hero emphasis */
	.nsf-lp .hero-emphasis { font-size: 20px; }

	/* Solution headline */
	.nsf-lp .solution-headline { font-size: 28px; }

	/* Checklist cards — stack */
	.nsf-lp .checklist-cards { grid-template-columns: 1fr; gap: 10px; }
	.nsf-lp .check-card { padding: 14px 14px; }
	.nsf-lp .check-card-title { font-size: 13px; }
	.nsf-lp .check-list li { font-size: 13px; }

	/* Punchline box */
	.nsf-lp .punchline-box { font-size: 17px; padding: 16px 18px; }

	/* Howto poster — stack steps */
	.nsf-lp .howto-poster { padding: 24px 16px 20px; border-radius: 18px; }
	.nsf-lp .howto-steps { flex-direction: column; gap: 8px; }
	.nsf-lp .howto-arrow {
		transform: rotate(90deg);
		font-size: 18px;
		align-self: center;
	}
	.nsf-lp .howto-step { padding: 16px 14px; }
	.nsf-lp .howto-text strong { font-size: 13px; }
	.nsf-lp .howto-text span { font-size: 12px; }

	/* Proof mini cards — mobile keeps column layout, same sizes */
	.nsf-lp .proof-mini { padding: 16px 18px; gap: 14px; }
	.nsf-lp .proof-mini-icon { font-size: 28px; }
	.nsf-lp .proof-mini strong { font-size: 15px; }
	.nsf-lp .proof-mini small { font-size: 13px; }

	/* Feedback wall — single column */
	.nsf-lp .feedback-wall { grid-template-columns: 1fr; gap: 8px; }
	.nsf-lp .feedback-item { font-size: 13px; padding: 12px 14px; }

	/* Offer hero box */
	.nsf-lp .ohr-price { font-size: 60px; }
	.nsf-lp .ohr-buy, .nsf-lp .ohr-free { font-size: 13px; padding: 8px 14px; }
	.nsf-lp .ohr-total { font-size: 14px; }
	.nsf-lp .ohr-btn { font-size: 17px !important; }
	.nsf-lp .offer-hero-box { padding: 26px 16px 22px; }

	/* Trust row compact */
	.nsf-lp .trc-item { font-size: 12px; padding: 7px 14px; }

	/* Final recap */
	.nsf-lp .for-main { font-size: 26px; }
}

/* ═══════════════════════════════════════════════════
   REBUILD — New Elements (Clean LP v3)
   ═══════════════════════════════════════════════════ */

/* Body padding for sticky bar */
body.nsf-lp {
	padding-bottom: 72px;
}

/* Scroll CTA — hero down arrow */
.nsf-lp .scroll-cta {
	display: inline-block;
	margin: 20px auto 4px;
	color: #1E5BB8;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	padding: 10px 0;
	letter-spacing: 0.2px;
}
.nsf-lp .scroll-cta:hover { text-decoration: underline; }

/* Highlight box — problem section */
.nsf-lp .highlight-box {
	background: linear-gradient(135deg, #E8F5EE, #C8E8D4);
	border-left: 5px solid #0B7A4B;
	border-radius: 0 14px 14px 0;
	padding: 20px 22px;
	margin: 28px 0 4px;
	font-size: 19px;
	font-weight: 700;
	color: #064d2e;
	line-height: 1.5;
	text-align: left;
}

/* Section label pill badge */
.nsf-lp .section-label {
	display: inline-block;
	background: #1E5BB8;
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 1.5px;
	padding: 7px 18px;
	border-radius: 20px;
	margin-bottom: 14px;
}

/* Benefit list — solution section */
.nsf-lp .benefit-list {
	list-style: none;
	padding: 0;
	margin: 18px 0 4px;
	text-align: left;
}
.nsf-lp .benefit-list li {
	padding: 11px 0 11px 34px;
	position: relative;
	font-size: 18px;
	line-height: 1.5;
	border-bottom: 1px solid rgba(30,91,184,0.1);
	color: #0F1A2E;
}
.nsf-lp .benefit-list li:last-child { border-bottom: none; }
.nsf-lp .benefit-list li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 11px;
	color: #0B7A4B;
	font-weight: 900;
	font-size: 18px;
}

/* Sub text inside simple steps */
.nsf-lp .ss-sub {
	font-size: 14px;
	color: #6b7488;
	margin-top: 4px;
	font-weight: 400;
	line-height: 1.4;
}

/* Note box — important note */
.nsf-lp .note-box {
	background: #FFF8E1;
	border-left: 5px solid #FFB400;
	border-radius: 0 12px 12px 0;
	padding: 16px 20px;
	margin: 20px 0 4px;
	font-size: 16px;
	line-height: 1.55;
	color: #5a4500;
	text-align: left;
}
.nsf-lp .note-box strong { color: #5a4500; }

/* Center note — small text below comp-anchor */
.nsf-lp .center-note {
	font-size: 14px;
	color: #888;
	text-align: center;
	margin: 8px 0 4px;
	font-style: italic;
}

/* Buying guide text in offer section */
.nsf-lp .buying-guide {
	font-size: 17px;
	color: #2a3550;
	line-height: 1.6;
	margin: 4px 0 24px;
	text-align: center;
}
.nsf-lp .buying-guide strong { color: #0F1A2E; }

/* Value line in offer cards */
.nsf-lp .pkg-value-line {
	font-size: 13px;
	font-weight: 600;
	color: #0B7A4B;
	margin: 0 0 12px;
	line-height: 1.4;
}

/* Trust row below offer grid */
.nsf-lp .trust-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin: 28px 0 20px;
}
.nsf-lp .trust-item {
	background: #fff;
	border-radius: 12px;
	padding: 14px 14px;
	font-size: 14px;
	font-weight: 700;
	color: #0F1A2E;
	line-height: 1.4;
	text-align: center;
	box-shadow: 0 2px 8px rgba(15,26,46,0.06);
}
.nsf-lp .ti-icon {
	display: block;
	font-size: 22px;
	margin-bottom: 6px;
}

/* Final offer recap box */
.nsf-lp .final-offer-recap {
	background: rgba(255,180,0,0.15);
	border: 1px solid rgba(255,180,0,0.35);
	border-radius: 14px;
	padding: 18px 22px;
	margin: 8px 0 28px;
	font-size: 17px;
	color: #e8ecf4;
	line-height: 1.8;
}
.nsf-lp .final-offer-recap strong {
	color: #FFD45E;
	font-size: 22px;
}

/* Fix final body spacing */
.nsf-lp .final-body {
	margin: 0 0 10px !important;
}
.nsf-lp .final-body:last-of-type {
	margin-bottom: 20px !important;
}

/* ─────────────────────────────────────────────────
   STICKY CTA BAR
   ───────────────────────────────────────────────── */
.nsf-lp .sticky-cta {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 9999;
	background: #0F1A2E;
	border-top: 2px solid #1E5BB8;
	box-shadow: 0 -4px 20px rgba(15,26,46,0.3);
	display: none; /* JS controls visibility */
}
.nsf-lp .sticky-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 18px;
	max-width: 720px;
	margin: 0 auto;
}
.nsf-lp .sticky-inner-after {
	display: none;
}
.nsf-lp .sticky-text {
	font-size: 14px;
	color: #e8ecf4;
	font-weight: 600;
	line-height: 1.3;
	flex: 1;
}
.nsf-lp .sticky-text strong {
	color: #FFD45E;
	font-size: 17px;
}
.nsf-lp .sticky-btn {
	flex-shrink: 0;
	display: inline-block;
	padding: 11px 20px;
	border-radius: 40px;
	font-size: 14px;
	font-weight: 900;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.3px;
	white-space: nowrap;
	line-height: 1.2;
}
.nsf-lp .sticky-btn-green {
	background: linear-gradient(180deg, #0B7A4B, #085F39);
	color: #fff !important;
	box-shadow: 0 4px 12px rgba(11,122,75,0.4);
}
.nsf-lp .sticky-btn-orange {
	background: linear-gradient(180deg, #FF7A00, #E55E00);
	color: #fff !important;
	box-shadow: 0 4px 12px rgba(255,122,0,0.4);
}

/* Mobile sticky */
@media (max-width: 600px) {
	.nsf-lp .sticky-inner { padding: 10px 14px; gap: 10px; }
	.nsf-lp .sticky-text { font-size: 13px; }
	.nsf-lp .sticky-btn { padding: 10px 16px; font-size: 13px; }

	/* Trust row 2-col on mobile already, keep */
	.nsf-lp .trust-row { grid-template-columns: 1fr 1fr; gap: 8px; }
	.nsf-lp .trust-item { font-size: 13px; padding: 12px 10px; }
	.nsf-lp .ti-icon { font-size: 18px; }

	/* Benefit list mobile */
	.nsf-lp .benefit-list li { font-size: 16px; padding-left: 28px; }

	/* Final offer recap mobile */
	.nsf-lp .final-offer-recap { padding: 14px 16px; font-size: 15px; }

	/* Buying guide mobile */
	.nsf-lp .buying-guide { font-size: 15px; }

	/* Note box mobile */
	.nsf-lp .note-box { font-size: 15px; padding: 14px 16px; }

	/* Highlight box mobile */
	.nsf-lp .highlight-box { font-size: 17px; padding: 16px 18px; }
}

/* ═══════════════════════════════════════
   GENERATED POSTER IMAGE WRAPPERS
   ════════════════════════════════════ */

/* Cara Guna (S4) — howto poster image */
.nsf-lp .howto-img-wrap {
	margin: 28px 0;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 8px 28px rgba(0,0,0,0.12);
}
.nsf-lp .howto-img-wrap picture,
.nsf-lp .howto-img-wrap img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 20px;
}

/* Proof/Feedback wall (S5) */
.nsf-lp .feedback-img-wrap {
	margin: 20px 0;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 6px 20px rgba(0,0,0,0.10);
}
.nsf-lp .feedback-img-wrap picture,
.nsf-lp .feedback-img-wrap img {
	width: 100%;
	height: auto;
	display: block;
}

/* Offer hero poster (S6) */
.nsf-lp .offer-hero-img-wrap {
	margin: 20px 0;
	text-align: center;
}
.nsf-lp .offer-hero-img-wrap picture,
.nsf-lp .offer-hero-img-wrap img {
	width: 100%;
	max-width: 520px;
	height: auto;
	display: block;
	margin: 0 auto 20px;
	border-radius: 20px;
	box-shadow: 0 12px 40px rgba(255,122,0,0.25);
}

/* Final CTA poster */
.nsf-lp .final-cta-img-wrap {
	margin: 24px 0;
	text-align: center;
}
.nsf-lp .final-cta-img-wrap picture,
.nsf-lp .final-cta-img-wrap img {
	width: 100%;
	max-width: 520px;
	height: auto;
	display: block;
	margin: 0 auto 24px;
	border-radius: 20px;
	box-shadow: 0 12px 44px rgba(0,0,0,0.35);
}

/* Mobile adjustments */
@media (max-width: 600px) {
	.nsf-lp .howto-img-wrap { border-radius: 14px; margin: 20px 0; }
	.nsf-lp .offer-hero-img-wrap img { border-radius: 14px; }
	.nsf-lp .final-cta-img-wrap img { border-radius: 14px; }
}

/* ─────────────────────────────────────────────────
   OPEN PACKAGE LAYOUT (v3)
   No card box. Poster is the hero.
   RM79 has soft cream tint only. RM49/RM99 open.
   ───────────────────────────────────────────────── */
.nsf-lp .offer-main-headline {
	text-align: center;
	margin-bottom: 8px;
}
.nsf-lp .offer-main-sub {
	text-align: center;
	font-size: 17px;
	color: #4a5568;
	line-height: 1.55;
	margin: 0 0 36px;
}

/* Shared open package block — no card, just spacing */
.nsf-lp .pkg-open {
	text-align: center;
	padding: 0 0 36px;
	margin-bottom: 8px;
}

/* RM79 hero: very soft cream tint, no border, no shadow */
.nsf-lp .pkg-open-hero {
	background: #FFFAF5;
	border-radius: 20px;
	padding: 28px 0 32px;
	margin-bottom: 12px;
}

/* RM49 / RM99: fully open, no background */
.nsf-lp .pkg-open-alt {
	background: transparent;
	border-top: 1px solid #E8EDF5;
	padding-top: 28px;
}

/* Label pill */
.nsf-lp .pkg-open-label {
	display: inline-block;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	padding: 6px 20px;
	border-radius: 30px;
	margin-bottom: 20px;
}
.nsf-lp .pkg-label-hero {
	background: linear-gradient(135deg, #FF7A00, #E55E00);
	color: #fff;
	box-shadow: 0 3px 10px rgba(255,122,0,0.30);
}
.nsf-lp .pkg-label-alt {
	background: #EAF4EE;
	color: #0B7A4B;
	font-size: 12px;
}

/* Poster — full width, no radius squeezing */
.nsf-lp .pkg-open picture {
	display: block;
	margin: 0 auto 22px;
	max-width: 520px;
}
.nsf-lp .pkg-open img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 14px;
}

/* CTA button — full width mobile */
.nsf-lp .pkg-open-btn {
	display: block;
	width: 100%;
	max-width: 440px;
	margin: 0 auto 10px;
	font-size: 18px !important;
	padding: 20px 24px !important;
}

/* Short note — small, muted */
.nsf-lp .pkg-open-note {
	font-size: 14px;
	color: #8a8fa8;
	line-height: 1.4;
	margin: 0;
}

/* Mobile */
@media (max-width: 480px) {
	.nsf-lp .pkg-open-hero { padding: 22px 0 26px; }
	.nsf-lp .pkg-open picture { max-width: 100%; }
	.nsf-lp .pkg-open-btn { font-size: 16px !important; padding: 18px 20px !important; }
	.nsf-lp .offer-main-sub { font-size: 16px; }
	.nsf-lp .pkg-open { padding-bottom: 28px; }
}

/* ═══════════════════════════════════════════════════
   TYPOGRAPHY REFINEMENT v2 — Senior-Friendly 55-65
   Applied as overrides. Do NOT remove earlier rules.
   ═══════════════════════════════════════════════════ */

/* ── GLOBAL HIGHLIGHT CLASSES (new) ── */
.nsf-lp .hi-red-text    { color: #C00000; font-weight: 900; }
.nsf-lp .hi-orange      { color: #FF7A00; font-weight: 900; }
.nsf-lp .hi-green-text  { color: #0B7A4B; }
.nsf-lp mark.hi-mark,
.nsf-lp .hi-mark {
    background: #FFF3CD;
    color: #856404;
    padding: 1px 5px;
    border-radius: 4px;
    font-style: normal;
}

/* ── ATTENTION BAR — bigger, senior-readable ── */
.nsf-lp .attention-bar {
    font-size: 16px;
    letter-spacing: 0.8px;
    padding: 13px 16px;
}

/* ── H1 HERO ── */
.nsf-lp .hero h1 {
    font-size: 40px;
    line-height: 1.14;
}

/* ── HERO SUB ── */
.nsf-lp .sub {
    font-size: 23px;
    line-height: 1.45;
    color: #1a2640;
}

/* ── SECTION HEADLINES ── */
.nsf-lp h2 {
    font-size: 36px;
    line-height: 1.18;
    margin-bottom: 20px;
}

/* ── BODY PARAGRAPHS ── */
.nsf-lp p {
    font-size: 21px;
    line-height: 1.6;
}

/* ── CHECKLIST CARDS — much bigger for seniors ── */
.nsf-lp .check-card-title {
    font-size: 20px;
    font-weight: 900;
    margin-bottom: 14px;
    line-height: 1.3;
}
.nsf-lp .check-list li {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5;
    padding: 8px 0;
}
.nsf-lp .check-card {
    padding: 20px 18px;
}

/* ── PUNCHLINE BOX — "Oh patutlah" moment, BIG ── */
.nsf-lp .punchline-box {
    font-size: 25px;
    line-height: 1.55;
    padding: 24px 28px;
}
.nsf-lp .punchline-box strong { font-size: inherit; }

/* ── SOLUTION LEAD BOLD (new element above bullets) ── */
.nsf-lp .solution-lead-bold {
    font-size: 24px !important;
    font-weight: 900 !important;
    color: #0B7A4B;
    line-height: 1.35;
    margin: 20px 0 12px;
    text-align: center;
}

/* ── BENEFIT LIST ── */
.nsf-lp .benefit-list li {
    font-size: 22px;
    padding: 14px 0 14px 36px;
    line-height: 1.4;
}
.nsf-lp .benefit-list li::before {
    font-size: 22px;
    top: 14px;
}

/* ── NOTE BOX (Cara Guna) ── */
.nsf-lp .note-box {
    font-size: 19px;
    padding: 18px 22px;
    line-height: 1.6;
}

/* ── PROOF MINI CARDS — bigger text ── */
.nsf-lp .proof-mini {
    padding: 20px 22px;
    gap: 18px;
}
.nsf-lp .proof-mini-icon {
    font-size: 36px;
}
.nsf-lp .proof-mini strong {
    font-size: 22px;
    margin-bottom: 6px;
}
.nsf-lp .proof-mini small {
    font-size: 18px;
    line-height: 1.4;
    color: #4a5568;
}

/* ── OFFER SECTION ── */
.nsf-lp .offer-main-headline {
    font-size: 36px !important;
    line-height: 1.2 !important;
    margin-bottom: 10px !important;
}
.nsf-lp .offer-main-sub {
    font-size: 22px !important;
    color: #2a3550 !important;
    line-height: 1.45 !important;
    margin: 0 0 32px !important;
}

/* ── OFFER PACKAGE BUTTONS ── */
.nsf-lp .pkg-open-btn {
    font-size: 20px !important;
    padding: 22px 28px !important;
    min-height: 64px !important;
    letter-spacing: 0.3px;
}

/* ── OFFER PACKAGE NOTES ── */
.nsf-lp .pkg-open-note {
    font-size: 18px !important;
    color: #6b7488;
}

/* ── TRUST ROW COMPACT ── */
.nsf-lp .trc-item {
    font-size: 17px !important;
    padding: 10px 18px !important;
    font-weight: 700;
}

/* ── FAQ ── */
.nsf-lp .faq h3 {
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: 10px;
    color: #0F1A2E;
}
.nsf-lp .faq p {
    font-size: 19px;
    line-height: 1.55;
    color: #2a3550;
}
.nsf-lp .faq { padding: 20px 0; }

/* ── FINAL CTA ── */
.nsf-lp .final-body {
    font-size: 22px !important;
    line-height: 1.6 !important;
}
.nsf-lp .blok-final .btn-cta-big {
    font-size: 22px;
    min-height: 72px;
}
.nsf-lp .btn-secondary {
    font-size: 19px;
    font-weight: 700;
}

/* ── STICKY CTA BAR ── */
.nsf-lp .sticky-text {
    font-size: 17px;
    font-weight: 700;
}
.nsf-lp .sticky-text strong {
    font-size: 19px;
}
.nsf-lp .sticky-btn {
    font-size: 17px;
    padding: 13px 22px;
}

/* ── BOTTOM PADDING for sticky ── */
body.nsf-lp {
    padding-bottom: 90px;
}

/* ─────────────────────────────────────────────────
   MOBILE OVERRIDES (≤480px) — Senior-First
   ───────────────────────────────────────────────── */
@media (max-width: 480px) {

    /* Attention bar */
    .nsf-lp .attention-bar {
        font-size: 16px;
        padding: 11px 14px;
        letter-spacing: 0.5px;
    }

    /* Hero */
    .nsf-lp .hero h1 { font-size: 38px; }
    .nsf-lp .sub { font-size: 23px; }

    /* Section headlines */
    .nsf-lp h2 { font-size: 32px; }
    .nsf-lp h3 { font-size: 22px; }

    /* Body */
    .nsf-lp p { font-size: 21px; }

    /* Checklist cards */
    .nsf-lp .check-card { grid-template-columns: 1fr; }
    .nsf-lp .check-card-title { font-size: 19px; }
    .nsf-lp .check-list li { font-size: 20px; }

    /* Punchline */
    .nsf-lp .punchline-box { font-size: 23px; padding: 20px 22px; }

    /* Solution lead */
    .nsf-lp .solution-lead-bold { font-size: 22px !important; }

    /* Benefit list */
    .nsf-lp .benefit-list li { font-size: 22px; padding-left: 32px; }
    .nsf-lp .benefit-list li::before { font-size: 20px; }

    /* Note box */
    .nsf-lp .note-box { font-size: 19px; padding: 16px 18px; }

    /* Proof mini */
    .nsf-lp .proof-mini { padding: 18px 18px; }
    .nsf-lp .proof-mini strong { font-size: 22px; }
    .nsf-lp .proof-mini small { font-size: 18px; }

    /* Offer */
    .nsf-lp .offer-main-headline { font-size: 30px !important; }
    .nsf-lp .offer-main-sub { font-size: 21px !important; }
    .nsf-lp .pkg-open-btn {
        font-size: 20px !important;
        padding: 20px 22px !important;
        min-height: 62px !important;
    }
    .nsf-lp .pkg-open-note { font-size: 18px !important; }

    /* Trust row */
    .nsf-lp .trc-item { font-size: 16px !important; padding: 9px 16px !important; }

    /* FAQ */
    .nsf-lp .faq h3 { font-size: 21px; }
    .nsf-lp .faq p { font-size: 19px; }

    /* Final */
    .nsf-lp .final-body { font-size: 21px !important; }
    .nsf-lp .blok-final .btn-cta-big { font-size: 21px; min-height: 68px; }
    .nsf-lp .btn-secondary { font-size: 18px; }

    /* Sticky */
    .nsf-lp .sticky-text { font-size: 16px; }
    .nsf-lp .sticky-text strong { font-size: 18px; }
    .nsf-lp .sticky-btn { font-size: 16px; padding: 12px 18px; }

}

/* ═══════════════════════════════════════════════════
   PROOF SECTION v2 — Credible Feedback Points
   ═══════════════════════════════════════════════════ */

/* Proof subheadline */
.nsf-lp .proof-sub {
	font-size: 21px !important;
	color: #2a3550;
	line-height: 1.5;
	margin: 0 0 26px !important;
}

/* Feedback Points container */
.nsf-lp .feedback-points {
	margin: 32px 0 20px;
}

/* Section header */
.nsf-lp .fp-header {
	text-align: center;
	margin-bottom: 20px;
}
.nsf-lp .fp-title {
	font-size: 26px;
	font-weight: 900;
	color: #0F1A2E;
	line-height: 1.25;
	margin: 0 0 8px;
}
.nsf-lp .fp-sub {
	font-size: 17px !important;
	color: #4a5568;
	margin: 0 !important;
	line-height: 1.45;
}

/* 2-column grid desktop, 1-column mobile */
.nsf-lp .fp-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	text-align: left;
}

/* Individual feedback card */
.nsf-lp .fp-card {
	background: #fff;
	border-radius: 14px;
	padding: 18px 20px;
	font-size: 20px;
	line-height: 1.55;
	color: #0F1A2E;
	border-left: 4px solid #1E5BB8;
	box-shadow: 0 2px 10px rgba(15,26,46,0.07);
	font-style: italic;
}
.nsf-lp .fp-card strong {
	font-style: normal;
	color: #0F1A2E;
}

/* Small trust line */
.nsf-lp .trust-small-line {
	text-align: center;
	font-size: 16px !important;
	color: #6b7488;
	font-weight: 600;
	margin: 16px 0 20px !important;
}

/* Bridge line to offer */
.nsf-lp .bridge-line {
	background: linear-gradient(135deg, #FFF8E1, #FFFAF5);
	border: 2px solid rgba(255,122,0,0.5);
	border-radius: 16px;
	padding: 20px 24px;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.5;
	color: #0F1A2E;
	text-align: center;
	margin: 0 0 4px;
}

/* Mobile overrides */
@media (max-width: 480px) {
	.nsf-lp .fp-grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}
	.nsf-lp .fp-card {
		font-size: 20px;
		padding: 16px 18px;
	}
	.nsf-lp .fp-title { font-size: 24px; }
	.nsf-lp .fp-sub { font-size: 17px !important; }
	.nsf-lp .proof-sub { font-size: 21px !important; }
	.nsf-lp .bridge-line {
		font-size: 21px;
		padding: 18px 20px;
	}
}


/* ═══════════════════════════════════════════════════
   OFFER SECTION POLISH v1 — Premium Money Section
   Override block. Applied after all earlier rules.
   ═══════════════════════════════════════════════════ */

/* ── OFFER SECTION — extra bottom clearance for sticky CTA ── */
.nsf-lp section.offer {
	padding-bottom: 130px !important;
}

/* ── OFFER HEADER ── */
.nsf-lp .offer-main-headline {
	margin-bottom: 12px !important;
}
.nsf-lp .offer-main-sub {
	margin: 0 0 36px !important;
}

/* ── RM79 HERO BAND — warm cream, premium feel, no hard border ── */
.nsf-lp .pkg-open-hero {
	background: #FFF8ED !important;
	border-radius: 22px !important;
	padding: 40px 0 42px !important;
	margin-bottom: 14px !important;
	box-shadow: 0 6px 30px rgba(255, 122, 0, 0.10) !important;
	border: none !important;
}

/* ── RM49 / RM99 BANDS — clean white, no heavy styling ── */
.nsf-lp .pkg-open-alt {
	background: #FFFFFF !important;
	border-top: 1px solid #E8EDF5 !important;
	border-bottom: none !important;
	border-left: none !important;
	border-right: none !important;
	box-shadow: none !important;
	padding-top: 44px !important;
	padding-bottom: 44px !important;
}

/* ── LABEL PILLS — bigger, more readable ── */
.nsf-lp .pkg-open-label {
	font-size: 14px !important;
	letter-spacing: 1px !important;
	margin-bottom: 20px !important;
}
.nsf-lp .pkg-label-hero {
	font-size: 14px !important;
	padding: 8px 24px !important;
}
.nsf-lp .pkg-label-alt {
	font-size: 13px !important;
	padding: 7px 20px !important;
}

/* ── POSTER — full width, good breathing room from button ── */
.nsf-lp .pkg-open picture {
	margin: 0 auto 22px !important;
}
.nsf-lp .pkg-open img {
	border-radius: 12px !important;
}

/* ── RM79 BUTTON — orange glow, premium ── */
.nsf-lp .pkg-open-hero .btn-cta-orange.pkg-open-btn {
	box-shadow:
		0 4px 18px rgba(255, 122, 0, 0.35),
		0 1px 4px rgba(255, 122, 0, 0.20) !important;
	max-width: 480px !important;
}

/* ── RM49 / RM99 BUTTONS — clean, no excess shadow ── */
.nsf-lp .pkg-open-alt .pkg-open-btn {
	box-shadow: 0 2px 10px rgba(11, 122, 75, 0.15) !important;
	max-width: 460px !important;
}

/* ── NOTES UNDER BUTTONS — darker, more legible ── */
.nsf-lp .pkg-open-note {
	font-size: 18px !important;
	line-height: 1.4 !important;
	margin-top: 8px !important;
	color: #3d4a5a !important;
}
/* RM79 note — green tint to reinforce trust ── */
.nsf-lp .pkg-open-hero .pkg-open-note {
	color: #0B7A4B !important;
	font-weight: 700 !important;
}

/* ── TRUST ROW — plain clean text, no pill badges ── */
.nsf-lp .trust-row-compact {
	flex-direction: column !important;
	align-items: center !important;
	gap: 4px !important;
	margin: 24px 0 0 !important;
	padding: 20px 0 0 !important;
	border-top: 1px solid #E8EDF5 !important;
}
.nsf-lp .trc-item {
	background: none !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #0B7A4B !important;
	font-size: 19px !important;
	font-weight: 700 !important;
	padding: 5px 0 !important;
	line-height: 1.5 !important;
}

/* ── MOBILE OVERRIDES (≤480px) ── */
@media (max-width: 480px) {
	.nsf-lp section.offer {
		padding-bottom: 130px !important;
	}
	.nsf-lp .pkg-open-hero {
		padding: 34px 0 36px !important;
		border-radius: 18px !important;
	}
	.nsf-lp .pkg-open-alt {
		padding-top: 36px !important;
		padding-bottom: 38px !important;
	}
	.nsf-lp .pkg-label-hero {
		font-size: 13px !important;
		padding: 7px 20px !important;
	}
	.nsf-lp .pkg-label-alt {
		font-size: 12px !important;
		padding: 6px 18px !important;
	}
	.nsf-lp .pkg-open-hero .btn-cta-orange.pkg-open-btn {
		box-shadow: 0 3px 14px rgba(255, 122, 0, 0.30) !important;
	}
	.nsf-lp .pkg-open-note {
		font-size: 17px !important;
	}
	.nsf-lp .trc-item {
		font-size: 18px !important;
		padding: 4px 0 !important;
	}
}
