.nf-blog-body { font-family: 'Poppins', 'Open Sans', sans-serif; background: #faf7f6; }
.nf-blog, .nf-blog * { box-sizing: border-box; }
.nf-blog-body .nf-blog,
.nf-blog-body .nf-blog h1,
.nf-blog-body .nf-blog h2,
.nf-blog-body .nf-blog h3,
.nf-blog-body .nf-blog h4 { font-family: 'Poppins', 'Open Sans', sans-serif; }
.nf-blog {
  padding: 140px 0 64px;
  color: #2b2b2b;
  background: #faf7f6;
}
.nf-blog.content { margin-left: 0; margin-right: 0; }
@media (max-width: 1279px) {
  .nf-blog { padding-top: 130px; }
}
@media (max-width: 767px) {
  .nf-blog,
  .nf-blog-body .content.nf-blog {
    padding-top: 72px;
    margin-left: 0;
    margin-right: 0;
  }
}

.nf-blog-hero, .nf-blog-pagehead, .nf-article__head {
  position: static;
  background: transparent;
  width: auto;
  z-index: auto;
}
.nf-blog a { color: #c40d11; }
.nf-blog a:hover { color: #9a0a0d; }

.nf-blog-bc { font-size: 13px; margin: 0 0 18px; color: #888; overflow-x: auto; }
.nf-blog-bc ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 0; }
.nf-blog-bc li { display: inline; }
.nf-blog-bc li + li:before { content: "›"; margin: 0 8px; color: #bbb; }
.nf-blog-bc a { color: #666; text-decoration: none; }
.nf-blog-bc a:hover { color: #c40d11; }
.nf-blog-bc [aria-current="page"] { color: #333; font-weight: 500; }

.nf-blog-hero, .nf-blog-pagehead {
  margin: 0 0 26px;
  padding: 22px 24px;
  background: #fff;
  border-radius: 12px;
  border: 1px solid #f0e6e6;
  box-shadow: 0 6px 18px rgba(196, 13, 17, .04);
}
.nf-blog-kicker {
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 11px;
  font-weight: 600;
  color: #c40d11;
  margin: 0 0 8px;
}
.nf-blog h1 {
  font-size: 30px;
  font-weight: 600;
  line-height: 1.25;
  margin: 0 0 10px;
  color: #1a1a1a;
}
.nf-blog-lead { font-size: 16px; line-height: 1.65; color: #666; margin: 0; max-width: 720px; }

.nf-blog-cats { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 28px; }
.nf-blog-cats a {
  display: inline-block;
  padding: 8px 14px;
  border: 1px solid #ead9d9;
  border-radius: 999px;
  color: #333;
  background: #fff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
}
.nf-blog-cats a:hover { border-color: #c40d11; color: #c40d11; background: #fff5f5; }

.nf-blog-feature { margin: 0 0 36px; }
.nf-blog-feature__inner {
  display: grid;
  gap: 0;
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid #f0e6e6;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .05);
}
.nf-blog-feature__media { display: block; background: #f3ecec; }
.nf-blog-feature__media img,
.nf-blog-card__media img,
.nf-article__hero img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.nf-blog-feature__copy { padding: 22px 24px 26px; }
.nf-blog-feature__copy h2 { font-size: 24px; font-weight: 600; margin: 8px 0 10px; }
.nf-blog-feature__copy h2 a,
.nf-blog-card__title a { color: #1a1a1a; text-decoration: none; }
.nf-blog-feature__copy h2 a:hover,
.nf-blog-card__title a:hover { color: #c40d11; }

.nf-blog-cat {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #c40d11;
  text-decoration: none;
}
.nf-blog-meta {
  font-size: 13px;
  color: #888;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
  margin: 10px 0 16px;
}
.nf-blog-btn {
  display: inline-block;
  background: #c40d11;
  color: #fff !important;
  padding: 11px 18px;
  text-decoration: none;
  border-radius: 6px;
  border: 0;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  line-height: 1.2;
}
.nf-blog-btn:hover { background: #9a0a0d; color: #fff !important; }
.nf-blog-more {
  display: inline-block;
  background: transparent;
  color: #c40d11 !important;
  padding: 0;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
}
.nf-blog-more:after { content: " →"; }

.nf-blog-layout { display: grid; gap: 28px; }
.nf-blog-sec {
  font-size: 22px;
  font-weight: 600;
  margin: 8px 0 18px;
  color: #1a1a1a;
  padding-bottom: 8px;
  border-bottom: 2px solid #f0e0e0;
}
.nf-blog-grid { display: grid; gap: 20px; }
.nf-blog-card {
  background: #fff;
  border: 1px solid #f0e6e6;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, .04);
  transition: transform .2s ease, box-shadow .2s ease;
}
.nf-blog-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 24px rgba(196, 13, 17, .1);
}
.nf-blog-card__media { display: block; background: #f6eeee; overflow: hidden; }
.nf-blog-card__media img { aspect-ratio: 16 / 10; object-fit: cover; }
.nf-blog-card__body { padding: 16px 16px 20px; }
.nf-blog-card__title { font-size: 18px; font-weight: 600; margin: 6px 0 8px; line-height: 1.35; }
.nf-blog-card__body > p { font-size: 14px; line-height: 1.55; color: #666; margin: 0 0 10px; }
.nf-blog-card__ph {
  display: block;
  min-height: 180px;
  background: linear-gradient(135deg, #f7eaea, #f3f3f3);
}
.nf-blog-card__ph--lg { min-height: 240px; }

.nf-blog-side {
  background: #fff;
  padding: 8px 18px 18px;
  border-radius: 12px;
  border: 1px solid #f0e6e6;
  box-shadow: 0 6px 16px rgba(0, 0, 0, .04);
}
.nf-blog-widget { padding: 16px 0; }
.nf-blog-widget + .nf-blog-widget { border-top: 1px solid #f3e8e8; }
.nf-blog-widget h2 {
  font-size: 15px;
  font-weight: 600;
  margin: 0 0 12px;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.nf-blog-widget ul { margin: 0; padding: 0; list-style: none; }
.nf-blog-widget li { margin: 0 0 10px; font-size: 14px; line-height: 1.4; }
.nf-blog-widget a { color: #333; text-decoration: none; }
.nf-blog-widget a:hover { color: #c40d11; }
.nf-blog-tags a {
  display: inline-block;
  margin: 0 6px 6px 0;
  padding: 5px 10px;
  background: #faf7f6;
  border: 1px solid #ead9d9;
  border-radius: 999px;
  color: #444;
  text-decoration: none;
  font-size: 12px;
}
.nf-blog-tags a:hover { border-color: #c40d11; color: #c40d11; }
.nf-blog-cta { background: #fff5f5; margin: 8px -18px -18px; padding: 18px !important; border-radius: 0 0 12px 12px; border-top: 0 !important; }
.nf-blog-cta p { font-size: 14px; color: #555; margin: 0 0 12px; }
.nf-blog-popcats { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.nf-blog-popcats a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 14px 16px;
  border: 1px solid #f0e6e6;
  background: #fff;
  border-radius: 10px;
  text-decoration: none;
  color: #222;
}
.nf-blog-popcats a:hover { border-color: #c40d11; color: #c40d11; }
.nf-blog-popcats span { color: #888; font-size: 13px; }

.nf-blog-empty {
  display: block;
  background: #fff;
  border: 1px dashed #e6d0d0;
  border-radius: 12px;
  padding: 20px 18px;
  text-align: center;
  color: #666;
  margin: 0 0 20px;
  line-height: 1.5;
}
.nf-blog-empty p { margin: 0 0 12px; }
.nf-blog-empty a { font-weight: 600; }

.nf-blog-pager ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 22px 0 0; margin: 0; }
.nf-blog-pager a,
.nf-blog-pager span {
  display: inline-block;
  min-width: 38px;
  text-align: center;
  padding: 8px 11px;
  border: 1px solid #ead9d9;
  background: #fff;
  border-radius: 8px;
  text-decoration: none;
  color: #333;
}
.nf-blog-pager a:hover { border-color: #c40d11; color: #c40d11; }
.nf-blog-pager .is-active span { background: #c40d11; color: #fff; border-color: #c40d11; }

.nf-article { background: #fff; border: 1px solid #f0e6e6; border-radius: 14px; padding: 26px 26px 32px; box-shadow: 0 8px 24px rgba(0, 0, 0, .04); }
.nf-article__head { margin: 0 0 18px; }
.nf-article__hero { margin: 0 0 22px; border-radius: 12px; overflow: hidden; background: #f6eeee; }
.nf-article__hero img { width: 100%; }
.nf-article__body { font-size: 16px; line-height: 1.8; color: #333; }
.nf-article__body h2 { font-size: 22px; font-weight: 600; margin: 28px 0 10px; }
.nf-article__body h3 { font-size: 18px; font-weight: 600; margin: 22px 0 8px; }
.nf-article__body h4 { font-size: 16px; font-weight: 600; margin: 18px 0 8px; }
.nf-article__body p { margin: 0 0 14px; }
.nf-article__body img { max-width: 100%; height: auto; border-radius: 8px; }
.nf-article__body table { width: 100%; border-collapse: collapse; }
.nf-article__body .table-wrap, .nf-article__body table { display: block; overflow-x: auto; }
.nf-article__body pre, .nf-article__body code { overflow-x: auto; max-width: 100%; }
.nf-article__body iframe { max-width: 100%; }
.nf-article__body blockquote {
  margin: 16px 0;
  padding: 12px 16px;
  border-left: 4px solid #c40d11;
  background: #faf7f6;
  color: #555;
  border-radius: 0 8px 8px 0;
}

.nf-blog-toc {
  background: #faf7f6;
  padding: 16px 18px;
  margin: 0 0 22px;
  border-radius: 10px;
  border: 1px solid #f0e6e6;
}
.nf-blog-toc p { font-weight: 600; margin: 0 0 8px; }
.nf-blog-toc ol { margin: 0; padding-left: 18px; }
.nf-blog-toc li { margin: 0 0 6px; }

.nf-article__share {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: 28px 0 20px;
  padding: 18px 0 0;
  border-top: 1px solid #f1e7e7;
  clear: both;
}
.nf-article__share > span { font-weight: 600; color: #444; margin-right: 6px; }
.nf-share, .nf-blog-copy {
  display: inline-block;
  border: 0;
  border-radius: 999px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  line-height: 1.2;
}
.nf-share--wa { background: #25d366; color: #fff !important; }
.nf-share--fb { background: #1877f2; color: #fff !important; }
.nf-share--x { background: #111; color: #fff !important; }
.nf-blog-copy { background: #f3ecec; color: #333; }
.nf-blog-copy:hover { background: #ead9d9; }

.nf-blog-nextprev { display: grid; gap: 12px; margin: 8px 0 28px; clear: both; }
.nf-blog-nextprev a {
  display: block;
  padding: 14px 16px;
  border: 1px solid #f0e6e6;
  background: #faf7f6;
  border-radius: 10px;
  text-decoration: none;
  color: #222;
}
.nf-blog-nextprev a:hover { border-color: #c40d11; }
.nf-blog-nextprev span { display: block; font-size: 12px; color: #888; margin-bottom: 4px; text-transform: uppercase; letter-spacing: .04em; }
.nf-article__related { margin: 28px 0; }
.nf-article__related > h2 { font-size: 20px; font-weight: 600; margin: 0 0 16px; }

.nf-blog-comments {
  margin-top: 8px;
  padding: 24px 0 0;
  border-top: 1px solid #f1e7e7;
  clear: both;
}
.nf-blog-comments > h2 { font-size: 20px; font-weight: 600; margin: 0 0 16px; }
.nf-blog-comment-list { list-style: none; margin: 0 0 20px; padding: 0; }
.nf-blog-comment-list li {
  padding: 14px 16px;
  margin: 0 0 10px;
  background: #faf7f6;
  border-radius: 10px;
}
.nf-blog-comment-meta { font-size: 13px; color: #777; margin: 0 0 6px; }
.nf-blog-comment-form {
  background: #faf7f6;
  padding: 20px;
  border-radius: 12px;
  margin-top: 0;
  overflow: hidden;
}
.nf-blog-comment-form .nf-blog-form-row {
  display: grid;
  gap: 16px;
  margin: 0 0 16px;
}
.nf-blog-field {
  display: block;
  margin: 0 0 16px;
  min-width: 0;
}
.nf-blog-form-row .nf-blog-field { margin-bottom: 0; }
.nf-blog-comment-form p {
  margin: 0 0 16px !important;
  padding: 0;
  line-height: 1.4;
}
.nf-blog-comment-form label {
  display: block;
  position: static;
  float: none;
  font-size: 13px;
  font-weight: 600;
  margin: 0 0 8px;
  padding: 0;
  line-height: 1.4;
  color: #444;
}
.nf-blog-comment-form input,
.nf-blog-comment-form textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #e4d5d5;
  border-radius: 8px;
  background: #fff;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.4;
}
.nf-blog-comment-form input:focus,
.nf-blog-comment-form textarea:focus {
  outline: 0;
  border-color: #c40d11;
  box-shadow: 0 0 0 3px rgba(196, 13, 17, .12);
}
.nf-blog-hp { position: absolute; left: -9999px; height: 0; overflow: hidden; }
.nf-blog-note { padding: 10px 12px; border-radius: 8px; margin: 0 0 12px; }
.nf-blog-note--ok { background: #eef8ee; color: #246b24; }
.nf-blog-note--err { background: #fdeeee; color: #9a0a0d; }

@media (min-width: 768px) {
  .nf-blog h1 { font-size: 36px; }
  .nf-blog-feature__inner { grid-template-columns: 1.1fr .9fr; align-items: stretch; }
  .nf-blog-feature__media img { height: 100%; min-height: 280px; object-fit: cover; }
  .nf-blog-grid { grid-template-columns: repeat(2, 1fr); }
  .nf-blog-nextprev { grid-template-columns: 1fr 1fr; }
  .nf-blog-comment-form .nf-blog-form-row { grid-template-columns: 1fr 1fr; }
  .nf-article { padding: 32px 36px 40px; }
}
@media (min-width: 1024px) {
  .nf-blog-layout { grid-template-columns: minmax(0, 1fr) 300px; align-items: start; }
  .nf-blog-grid { grid-template-columns: repeat(2, 1fr); }
  .nf-blog--post .nf-blog-grid { grid-template-columns: repeat(2, 1fr); }
  .nf-blog-side { position: sticky; top: 140px; }
}
.nf-blog *:focus { outline: 2px solid #c40d11; outline-offset: 2px; }
.nf-blog-comment-form input:focus,
.nf-blog-comment-form textarea:focus { outline: 0; }
