.nnpg-wrap{max-width:860px;margin:0 auto;padding:28px 16px 80px;font-family:inherit;color:#1b2b4b}
    /* ==========================================
   NN PREMIUM OFFER — CLEAN FINAL VERSION
========================================== */

.nnpg-hero {
    margin-bottom: 26px;

    padding: 28px 30px 26px;

    border: 1px solid #CFE8E1;
    border-radius: 18px;

    background:
        linear-gradient(
            180deg,
            #F4FBF9 0%,
            #FFFFFF 100%
        );

    text-align: center;
}


/* Plan badge */

.nnpg-hero-badge {
    display: inline-flex;
    align-items: center;

    margin-bottom: 14px;

    padding: 6px 12px;

    border-radius: 999px;

    background: #E5F5F1;
    border: 1px solid #C9E9E0;

    color: #0F766E;

    font-size: 10px;
    line-height: 1;

    font-weight: 800;

    letter-spacing: .06em;
    text-transform: uppercase;
}


/* Heading */

.nnpg-hero-title {
    max-width: 480px;

    margin: 0 auto 8px;

    color: #2C3E50;

    font-size: 27px;
    line-height: 1.18;

    font-weight: 850;

    letter-spacing: -.02em;
}


/* Intro */

.nnpg-hero-sub {
    max-width: 470px;

    margin: 0 auto 18px;

    color: #687781;

    font-size: 14px;
    line-height: 1.55;
}


/* Price */

.nnpg-price-row {
    display: flex;
    align-items: baseline;
    justify-content: center;

    gap: 5px;

    margin: 0 0 2px;
}


.nnpg-price {
    color: #16A085;

    font-size: 40px;
    line-height: 1.1;

    font-weight: 850;

    letter-spacing: -.025em;
}


.nnpg-price-period {
    color: #61717B;

    font-size: 15px;
    font-weight: 650;
}


.nnpg-price-note {
    margin: 0 0 20px;

    color: #87939B;

    font-size: 12.5px;
    line-height: 1.45;
}


/* ==========================================
   BENEFITS
========================================== */

.nnpg-benefits {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    column-gap: 48px;
    row-gap: 3px;

    width: 100%;
    max-width: 860px;

    margin: 4px auto 22px;
    padding: 0;

    list-style: none;

    text-align: left;
}


.nnpg-benefits li {
    display: grid;

    grid-template-columns:
        20px
        minmax(0, 1fr);

    gap: 9px;

    align-items: start;

    padding: 8px 0;

    color: #344752;

    font-size: 14px;
    line-height: 1.45;
}


.nnpg-benefits li::before {
    content: "✓";

    position: static;

    color: #16A085;

    font-size: 15px;
    line-height: 1.4;

    font-weight: 900;
}


/* Bottom trust/info line */

.nnpg-social {
    max-width: 860px;

    margin: 4px auto 0;

    padding-top: 16px;

    border-top: 1px solid #E4EBE8;

    color: #77858E;

    font-size: 12.5px;
    line-height: 1.45;

    text-align: center;
}
    .nnpg-item-card{background:#fff;border:1px solid #e9eef8;border-radius:18px;padding:28px 24px;margin-bottom:22px;text-align:center}
    .nnpg-item-badge{display:inline-block;background:#eef3ff;color:#2C3E50;font-size:12px;font-weight:700;padding:5px 14px;border-radius:999px;margin-bottom:12px}
    .nnpg-item-title{margin:0 0 8px;font-size:20px;font-weight:800;color:#2C3E50}
    .nnpg-item-price{font-size:32px;font-weight:900;color:#16A085}
    .nnpg-coupon-row{margin-bottom:24px}
    .nnpg-coupon-form{display:flex;gap:8px}
    .nnpg-coupon-input{flex:1;height:44px}
    .nnpg-coupon-btn{height:44px;padding:0 18px;border:1.5px solid #dce4f2;border-radius:10px;background:#fff;color:#2C3E50;font-weight:700;font-size:13px;cursor:pointer}
    .nnpg-coupon-msg{font-size:13px;font-weight:600;margin:8px 0 0}
    .nnpg-coupon-msg--ok{color:#15803d}
    .nnpg-coupon-msg--bad{color:#dc2626}
    .nnpg-section{padding:24px 0;border-top:1px solid #eef1f8}
    .nnpg-section-label{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800;color:#2C3E50;margin-bottom:18px;flex-wrap:wrap}
    .nnpg-step-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#16A085;color:#fff;border-radius:50%;font-size:11px;font-weight:800}
    .nnpg-pay-amount{margin-left:auto;background:#eef3ff;color:#2C3E50;font-size:13px;font-weight:800;padding:4px 12px;border-radius:999px}
    .nnpg-methods{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
    .nnpg-method{cursor:pointer}
    .nnpg-method input{position:absolute;opacity:0;pointer-events:none}
    .nnpg-method-inner{display:flex;align-items:center;gap:8px;padding:11px 16px;border:1.5px solid #e4ebf7;border-radius:10px;background:#fafbff}
    .nnpg-method:has(input:checked) .nnpg-method-inner{border-color:#16A085;background:#effaf7}
    .nnpg-method-dot{width:14px;height:14px;border-radius:50%;border:2px solid #c5d0e6}
    .nnpg-method:has(input:checked) .nnpg-method-dot{border-color:#16A085;background:#16A085;box-shadow:inset 0 0 0 2px #fff}
    .nnpg-method-name{font-size:14px;font-weight:700;color:#2C3E50}
    .nnpg-qr-card{border:1px solid #e9eef8;border-radius:16px;overflow:hidden;background:#fff;max-width:260px;margin:0 auto}
    .nnpg-qr-img-wrap{padding:22px;display:flex;justify-content:center}
    .nnpg-qr-img{width:100%;max-width:200px;height:auto}
    .nnpg-qr-footer{padding:12px 16px;text-align:center;font-size:13px;color:#5a6e8c;border-top:1px solid #f2f5fb}
    .nnpg-field{margin-bottom:16px}
    .nnpg-label{display:block;font-size:13px;font-weight:700;color:#2C3E50;margin-bottom:6px}
    .nnpg-req{color:#dc2626}
    .nnpg-hint{display:block;font-size:12px;color:#7a8aaa;margin-top:5px}
    .nnpg-input{height:48px;border:1.5px solid #dce4f2;border-radius:10px;padding:0 16px;font-size:15px;width:100%;background:#fafbff}
    .nnpg-input:focus{border-color:#16A085;outline:none;box-shadow:0 0 0 3px rgba(22,160,133,.12);background:#fff}
    .nnpg-summary-box{background:#f8faff;border:1px solid #e9eef8;border-radius:10px;padding:12px 16px;font-size:13px;color:#5a6e8c;margin-bottom:16px}
    .nnpg-submit{width:100%;padding:17px;background:linear-gradient(135deg,#16A085,#128a72);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 8px 24px rgba(22,160,133,.28)}
    .nnpg-submit:hover{opacity:.93;transform:translateY(-1px)}
    .nnpg-submit-note{text-align:center;font-size:12px;color:#7a8aaa;margin:12px 0 0}
    .nnpg-guarantee{margin:28px 0 0;padding:16px 18px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;font-size:13.5px;color:#166534;line-height:1.55;text-align:center}
    .nnpg-faq{margin-top:32px}
    .nnpg-faq-title{font-size:14px;font-weight:800;color:#2C3E50;margin-bottom:12px;text-transform:uppercase;letter-spacing:.04em}
    .nnpg-faq-item{background:#fff;border:1px solid #e9eef8;border-radius:12px;margin-bottom:8px;overflow:hidden}
    .nnpg-faq-item summary{list-style:none;cursor:pointer;padding:14px 18px;font-size:14.5px;font-weight:700;color:#2C3E50}
    .nnpg-faq-item summary::-webkit-details-marker{display:none}
    .nnpg-faq-item p{margin:0;padding:0 18px 16px;font-size:14px;color:#5a6e8c;line-height:1.6}
    .nnpg-alert{padding:14px 18px;border-radius:12px;font-size:14px;margin-bottom:18px;font-weight:500}
    .nnpg-alert--error{background:#fff5f5;border:1.5px solid #fca5a5;color:#dc2626}
    .nnpg-alert--success{background:#f0fdf4;border:1.5px solid #86efac;color:#15803d}
    .nnpg-alert--warn{background:#fffbeb;border:1.5px solid #fde68a;color:#92400e}
    .nnpg-success{text-align:center;padding:48px 24px;background:#fff;border:1.5px solid #e4ebf7;border-radius:20px;box-shadow:0 8px 32px rgba(18,39,90,.08)}
    .nnpg-success-icon{font-size:56px;margin-bottom:16px}
    .nnpg-success h2{margin:0 0 12px;font-size:24px;font-weight:800;color:#2C3E50}
    .nnpg-success p{margin:0 0 22px;color:#5a6e8c;font-size:15px;line-height:1.7}
    .nnpg-steps{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:24px;flex-wrap:wrap;font-size:13px;font-weight:600}
    .nnpg-step--done{color:#15803d}
    .nnpg-step-arrow{color:#c5d0e6}
    .nnpg-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;border-radius:12px;font-weight:700;font-size:15px;text-decoration:none!important}
    .nnpg-btn--primary{background:linear-gradient(135deg,#16A085,#128a72);color:#fff!important}
    .nnpg-success-note{margin-top:18px;font-size:13px;color:#94a3b8}
    @media (max-width: 520px) {

    .nnpg-wrap {
        padding-left: 14px;
        padding-right: 14px;
    }


    .nnpg-hero {
        padding: 23px 18px 21px;

        border-radius: 16px;
    }


    .nnpg-hero-badge {
        margin-bottom: 12px;

        padding: 6px 10px;

        font-size: 9px;
    }


    .nnpg-hero-title {
        max-width: 330px;

        margin-bottom: 7px;

        font-size: 24px;
        line-height: 1.18;
    }


    .nnpg-hero-sub {
        max-width: 330px;

        margin-bottom: 16px;

        font-size: 13.5px;
    }


    .nnpg-price {
        font-size: 36px;
    }


    .nnpg-price-period {
        font-size: 14px;
    }


    .nnpg-price-note {
        margin-bottom: 17px;

        font-size: 12px;
    }


    /*
     * IMPORTANT:
     * Use the full card width on mobile.
     * This fixes the excessive left whitespace.
     */
    .nnpg-benefits {
    display: grid;

    grid-template-columns: 1fr;

    width: 100%;
    max-width: none;

    column-gap: 0;
    row-gap: 0;

    margin: 0 0 18px;
}


    .nnpg-benefits li {
        grid-template-columns:
            18px
            minmax(0, 1fr);

        gap: 8px;

        padding: 6px 0;

        font-size: 13.5px;
        line-height: 1.45;
    }


    .nnpg-benefits li::before {
        font-size: 14px;
    }


    .nnpg-social {
        max-width: none;

        padding-top: 14px;

        font-size: 12px;
    }


    .nnpg-methods {
        flex-direction: column;
    }

}

