/* NexGen Rank blog posts: boxes used inside post content, and the enquiry form. */
.ngrp-post-short { position: relative; padding: 22px 26px 22px 30px; border-radius: 16px; background: #F3F7FD; border: 1px solid var(--ngr-line, #D9E2F0); }
.ngrp-post-short::before { content: ""; position: absolute; left: 0; top: 16px; bottom: 16px; width: 4px; border-radius: 0 4px 4px 0; background: var(--ngr-grad, linear-gradient(45deg, #2C5BBE, #19A1E3)); }
.ngrp-post-short p { margin: 0; color: var(--ngr-ink, #0B1F45); }
.ngrp-post-short .ngrp-post-short__label { font-weight: 800; color: var(--ngr-blue, #2459C2); margin-bottom: 6px; font-size: .95rem; text-transform: uppercase; letter-spacing: .06em; }

.ngrp-note { padding: 20px 24px; border-radius: 14px; background: #FFF7E8; border: 1px solid #FFE1A8; }
.ngrp-note p { margin: 0; }
.ngrp-note p + p { margin-top: .6em; }
.ngrp-note strong:first-child { color: #8A5A00; }

.ngrp-cta-inline { padding: 26px 28px; border-radius: 18px; background: linear-gradient(135deg, #0F2A5C, #1B4FA8); color: #fff; }
.ngrp-cta-inline p { margin: 0 0 14px; color: #E6EDF8; }
.ngrp-cta-inline p:first-child { font-size: 1.25rem; font-weight: 800; color: #fff; }
.ngrp-cta-inline p:last-child { margin: 0; }
body.ngr .ngrp-cta-inline a { color: #fff; }
body.ngr .ngrp-cta-inline a.ngrp-post-btn { display: inline-block; text-decoration: none; background: var(--ngr-amber, #FFB547); color: var(--ngr-navy-deep, #0A1D42); font-weight: 800; padding: 12px 22px; border-radius: 999px; margin: 4px 10px 4px 0; }
body.ngr .ngrp-cta-inline a.ngrp-post-btn:hover { background: #fff; }

.ngrp-lidora-box { padding: 28px; border-radius: 18px; background: #0E4A52; color: #E3F2F3; }
.ngrp-lidora-box p { margin: 0 0 14px; color: #E3F2F3; }
.ngrp-lidora-box p:first-child { font-family: "Outfit", var(--ngr-font, sans-serif); font-size: 1.35rem; font-weight: 700; color: #fff; }
.ngrp-lidora-box ul { margin: 0 0 16px; padding-inline-start: 1.2em; }
.ngrp-lidora-box li::marker { color: #FF6B5A; }
.ngrp-lidora-box p:last-child { margin: 0; }
body.ngr .ngrp-lidora-box a { color: #fff; }
body.ngr .ngrp-lidora-box a.ngrp-post-btn { display: inline-block; text-decoration: none; background: #FF6B5A; color: #fff; font-weight: 800; padding: 12px 22px; border-radius: 999px; margin: 4px 10px 4px 0; }
body.ngr .ngrp-lidora-box a.ngrp-post-btn--ghost { background: transparent; border: 2px solid #7FC4C9; }

.ngrp-post-figure { margin-inline: 0; }
.ngrp-post-figure img { width: 100%; height: auto; display: block; border-radius: 16px; border: 1px solid var(--ngr-line, #D9E2F0); }

.ngrp-table-wrap { overflow-x: auto; }
.ngr-prose table { width: 100%; border-collapse: collapse; font-size: 1rem; line-height: 1.5; }
.ngr-prose th, .ngr-prose td { text-align: left; padding: 12px 14px; border-bottom: 1px solid var(--ngr-line, #D9E2F0); vertical-align: top; }
.ngr-prose thead th { background: #F3F7FD; color: var(--ngr-ink, #0B1F45); font-weight: 800; }

.ngr-prose ol.ngrp-steps { list-style: none; padding: 0; counter-reset: ngrp-step; }
.ngr-prose ol.ngrp-steps > li { position: relative; padding-left: 52px; margin-block: 0 18px; counter-increment: ngrp-step; }
.ngr-prose ol.ngrp-steps > li::before { content: counter(ngrp-step); position: absolute; left: 0; top: 0; width: 34px; height: 34px; border-radius: 50%; background: #EEF3FB; color: var(--ngr-blue, #2459C2); font-weight: 800; font-size: .95rem; display: flex; align-items: center; justify-content: center; }

/* Enquiry form box inside a post */
.ngrp-post-form { margin-block: 2.2em; }
.ngrp-post-form .ngrp-formbox.e-con { border-radius: 20px; }
.ngrp-post-form .ngrp-formbox__title .elementor-heading-title { font-size: 1.7rem; font-weight: 800; line-height: 1.2; }
.ngrp-post-form p { margin: 0; }
.ngrp-post-form ul, .ngrp-post-form li { list-style: none; }
.ngrp-post-form a { text-decoration: none; }
@media (max-width: 767px) {
	.ngrp-post-form .ngrp-formbox__title .elementor-heading-title { font-size: 1.4rem; }
}
