/*=========================================
PREMIUM HERO
=========================================*/

.nf-hero{

    position:relative;

    height:650px;

    overflow:hidden;

    border-radius:24px;

    margin-bottom:70px;

    isolation:isolate;

}

.nf-hero-bg{

    position:absolute;

    inset:0;

    overflow:hidden;

}

.nf-hero-bg img{

    width:100%;

    height:100%;

    object-fit:cover;

    display:block;

    transform:scale(1.05);

    filter:blur(.8px);

transform:scale(1.03);
}

/* Dark Overlay */

.nf-hero-overlay{

    position:absolute;

    inset:0;

    background:

linear-gradient(

90deg,

rgba(10,45,22,.78) 0%,

rgba(10,45,22,.58) 38%,

rgba(10,45,22,.18) 65%,

rgba(10,45,22,0) 100%

);

}

/* Container */

.nf-hero .container{

position:relative;

z-index:5;

height:100%;

display:flex;

align-items:center;

padding-left:60px;

}
/* Content */

.nf-hero-content{

    max-width:700px;

    color:#fff;

}

/* Breadcrumb */

.nf-breadcrumb{

    margin-bottom:22px;

}

.nf-breadcrumb a{

    color:#fff;

    opacity:.85;

    text-decoration:none;

}

.nf-breadcrumb span{

    color:#fff;

}

/* Category */

.nf-category{

    margin-bottom:22px;

}

.nf-category a{

    display:inline-block;

    padding:9px 18px;

    border-radius:40px;

    background:rgba(255,255,255,.15);

    backdrop-filter:blur(8px);

    color:#fff;

    text-decoration:none;

    font-size:14px;

    font-weight:600;

}

/* Title */

.nf-hero-title{

    font-size:58px;

    line-height:1.15;

    color:#fff;

    margin-bottom:28px;

    font-weight:700;

}

/* Meta */

.nf-meta{

    display:flex;

    flex-wrap:wrap;

    gap:30px;

}

.nf-meta span{

    display:flex;

    align-items:center;

    gap:10px;

    color:#fff;

    font-size:16px;

}

/* Scroll */

.nf-scroll{

    margin-top:55px;

    display:flex;

    align-items:center;

    gap:18px;

    color:#fff;

    opacity:.9;

}

.nf-scroll span{

    width:22px;

    height:40px;

    border:2px solid rgba(255,255,255,.7);

    border-radius:30px;

    position:relative;

}

.nf-scroll span::before{

    content:"";

    position:absolute;

    left:50%;

    top:8px;

    width:4px;

    height:8px;

    border-radius:10px;

    background:#fff;

    transform:translateX(-50%);

    animation:nfScroll 1.6s infinite;

}

@keyframes nfScroll{

0%{

opacity:0;

transform:translate(-50%,0);

}

50%{

opacity:1;

}

100%{

opacity:0;

transform:translate(-50%,14px);

}

}
/*============================

Grid

============================*/


.nf-content-grid{

display:grid;

grid-template-columns:2fr 380px;

gap:60px;

align-items:start;

}


/*============================

Content

============================*/


.nf-main-content{

font-size:18px;

line-height:1.9;

color:#555;

}


.nf-main-content h2{

font-size:38px;

margin:55px 0 20px;

color:#17381e;

}


.nf-main-content h3{

font-size:28px;

margin:40px 0 18px;

color:#17381e;

}


.nf-main-content p{

margin-bottom:22px;

}


.nf-main-content img{

width:100%;

border-radius:18px;

margin:30px 0;

}


.nf-main-content ul{

padding-left:22px;

margin-bottom:25px;

}


.nf-main-content li{

margin-bottom:12px;

}


/*============================

Sidebar

============================*/


.nf-sidebar{

position:sticky;

top:120px;

}


.nf-widget{

background:#fff;

padding:30px;

border-radius:18px;

margin-bottom:25px;

box-shadow:0 10px 40px rgba(0,0,0,.05);

}


.nf-widget h3{

font-size:22px;

margin-bottom:15px;

}


.nf-btn{

display:inline-block;

padding:12px 22px;

background:#1b5e20;

color:#fff;

border-radius:8px;

text-decoration:none;

margin-top:15px;

}


.nf-btn-outline{

display:inline-block;

padding:12px 22px;

border:2px solid #1b5e20;

color:#1b5e20;

border-radius:8px;

text-decoration:none;

margin-top:15px;

}


/*============================

Responsive

============================*/


@media(max-width:1200px){

.nf-content-grid{

grid-template-columns:1fr;

}

.nf-sidebar{

position:relative;

top:auto;

}

}


@media(max-width:991px){

.nf-hero-content{

padding:30px;

}

.nf-hero h1{

font-size:38px;

}

.nf-featured-image img{

height:380px;

}

}


@media(max-width:767px){

.nf-hero-content{

padding:25px;

}
<aside class="nf-sidebar">.
.nf-hero h1{

font-size:30px;

}

.nf-meta{

gap:15px;

font-size:14px;

}

.nf-featured-image img{

height:240px;

}

.nf-main-content{

font-size:17px;

}

}
@media(max-width:991px){

.nf-hero{

grid-template-columns:1fr;

}

.nf-featured-image img{

min-height:350px;

}

.nf-hero-content{

padding:40px;

}

}
/*============================

Why Card

============================*/

.nf-why-card{

background:linear-gradient(135deg,#1B5E20,#2E7D32);

color:#fff;

}

.nf-why-card h3{

color:#fff;

}

.nf-check-list{

padding:0;

margin:0;

list-style:none;

}

.nf-check-list li{

padding:10px 0;

border-bottom:1px solid rgba(255,255,255,.15);

font-size:15px;

}

.nf-check-list li:last-child{

border:none;

}

/*============================

Products

============================*/

.nf-product-list{

display:flex;

flex-direction:column;

gap:12px;

}

.nf-product-item{

display:block;

padding:14px 16px;

border-radius:10px;

background:#f7faf8;

text-decoration:none;

font-weight:600;

color:#17381E;

transition:.3s;

}

.nf-product-item:hover{

background:#1B5E20;

color:#fff;

}

/*============================

Download

============================*/

.nf-download-card{

text-align:center;

}

.nf-download-card p{

margin-bottom:20px;

}

/*============================

Contact

============================*/

.nf-contact-card{

text-align:center;

}

.nf-contact-card p{

margin-bottom:18px;

}
/*====================================

AUTHOR BOX

====================================*/

.nf-author-box{

display:flex;

align-items:center;

gap:35px;

padding:45px;

margin-top:70px;

background:#fff;

border-radius:20px;

box-shadow:0 10px 40px rgba(0,0,0,.05);

}

.nf-author-image img{

width:120px;

height:120px;

border-radius:50%;

object-fit:cover;

border:5px solid #E8F5E9;

}

.nf-author-label{

display:inline-block;

margin-bottom:10px;

font-size:13px;

letter-spacing:2px;

color:#2E7D32;

font-weight:700;

text-transform:uppercase;

}

.nf-author-content h3{

font-size:30px;

margin-bottom:8px;

color:#17381E;

}

.nf-author-designation{

font-weight:600;

color:#2E7D32;

margin-bottom:18px;

}

.nf-author-description{

line-height:1.8;

font-size:16px;

color:#666;

margin-bottom:20px;

}

.nf-author-links a{

display:inline-block;

padding:12px 22px;

background:#1B5E20;

color:#fff;

border-radius:8px;

text-decoration:none;

transition:.3s;

}

.nf-author-links a:hover{

background:#144A19;

}

/*====================================

SHARE

====================================*/

.nf-share-post{

margin-top:40px;

padding:35px;

background:#F8FBF8;

border-radius:18px;

}

.nf-share-post h4{

margin-bottom:20px;

font-size:24px;

color:#17381E;

}

.nf-share-buttons{

display:flex;

flex-wrap:wrap;

gap:15px;

}

.nf-share-buttons a{

padding:12px 18px;

border-radius:8px;

background:#fff;

text-decoration:none;

color:#17381E;

font-weight:600;

transition:.3s;

border:1px solid #E5E5E5;

}

.nf-share-buttons a:hover{

background:#1B5E20;

color:#fff;

border-color:#1B5E20;

}

/*====================================

Responsive

====================================*/

@media(max-width:768px){

.nf-author-box{

flex-direction:column;

text-align:center;

padding:30px 25px;

}

.nf-author-content h3{

font-size:24px;

}

.nf-share-buttons{

justify-content:center;

}

}
/*==================================================
RELATED ARTICLES
==================================================*/

.nf-related-section{

    margin-top:90px;

}

.nf-related-header{

    margin-bottom:35px;

}

.nf-related-header h2{

    font-size:38px;

    font-weight:700;

    color:#17381E;

    margin:0;

}

.nf-related-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

}

.nf-related-card{

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 12px 35px rgba(0,0,0,.06);

    transition:.35s;

    border:1px solid #edf2ee;

}

.nf-related-card:hover{

    transform:translateY(-8px);

    box-shadow:0 22px 50px rgba(0,0,0,.12);

}

.nf-related-image{

    display:block;

    overflow:hidden;

}

.nf-related-image img{

    width:100%;

    height:240px;

    object-fit:cover;

    transition:.5s;

}

.nf-related-card:hover .nf-related-image img{

    transform:scale(1.06);

}

.nf-related-content{

    padding:28px;

}

.nf-related-content h3{

    margin:0 0 18px;

    font-size:28px;

    line-height:1.35;

    font-weight:700;

}

.nf-related-content h3 a{

    color:#17381E;

    text-decoration:none;

}

.nf-related-content h3 a:hover{

    color:#2E7D32;

}

.nf-related-meta{

    display:flex;

    gap:22px;

    flex-wrap:wrap;

    margin-top:20px;

    color:#666;

    font-size:15px;

}

.nf-related-meta span{

    display:flex;

    align-items:center;

    gap:8px;

}

.nf-related-read{

    margin-top:22px;

}

.nf-related-read a{

    display:inline-flex;

    align-items:center;

    gap:8px;

    color:#1B5E20;

    font-weight:700;

    text-decoration:none;

}

.nf-related-read a:hover{

    color:#2E7D32;

}
/*============================================

Responsive

============================================*/

@media(max-width:991px){

.nf-related-grid{

grid-template-columns:1fr;

}

.nf-related-image img{

height:230px;

}

}

@media(max-width:767px){

.nf-related-header h2{

font-size:30px;

}

.nf-related-content{

padding:22px;

}

.nf-related-content h3{

font-size:22px;

}

.nf-related-image img{

height:210px;

}

}
/*====================================

Premium CTA

====================================*/

.nf-blog-cta{

margin-top:10px;

margin-bottom:10px;

}

.nf-blog-cta-inner{

background:linear-gradient(135deg,#145A32,#1B5E20,#2E7D32);

border-radius:24px;

padding:50px;

position:relative;

overflow:hidden;

color:#fff;

}

.nf-blog-cta-inner::before{

content:"";

position:absolute;

width:420px;

height:420px;

background:rgba(255,255,255,.06);

border-radius:50%;

top:-180px;

right:-120px;

}

.nf-blog-cta-inner::after{

content:"";

position:absolute;

width:260px;

height:260px;

background:rgba(255,255,255,.04);

border-radius:50%;

bottom:-120px;

left:-60px;

}

.nf-blog-cta-content{

position:relative;

z-index:2;

max-width:760px;

}

.nf-cta-tag{

display:inline-block;

padding:8px 8px;

background:rgba(255,255,255,.12);

border:1px solid rgba(255,255,255,.18);

border-radius:40px;

font-size:14px;

font-weight:600;

margin-bottom:10px;

}

.nf-blog-cta h2{

font-size:46px;

line-height:1.2;

margin-bottom:22px;

color:#fff;

}

.nf-blog-cta p{

font-size:18px;

line-height:1.8;

opacity:.95;

margin-bottom:30px;

}

.nf-cta-features{

display:flex;

flex-wrap:wrap;

gap:14px;

margin-bottom:35px;

}

.nf-cta-features span{

padding:10px 18px;

background:rgba(255,255,255,.10);

border-radius:40px;

font-weight:600;

}

.nf-cta-buttons{

display:flex;

flex-wrap:wrap;

gap:18px;

}

.nf-blog-cta .nf-btn{

background:#fff;

color:#145A32;

padding:14px 28px;

border-radius:10px;

font-weight:700;

text-decoration:none;

}

.nf-blog-cta .nf-btn:hover{

background:#F5F5F5;

}

.nf-blog-cta .nf-btn-outline{

padding:14px 28px;

border:2px solid rgba(255,255,255,.7);

border-radius:10px;

color:#fff;

text-decoration:none;

font-weight:700;

}

.nf-blog-cta .nf-btn-outline:hover{

background:#fff;

color:#145A32;

}

@media(max-width:991px){

.nf-blog-cta-inner{

padding:45px 30px;

}

.nf-blog-cta h2{

font-size:34px;

}

}

@media(max-width:767px){

.nf-blog-cta h2{

font-size:28px;

}

.nf-blog-cta p{

font-size:16px;

}

.nf-cta-buttons{

flex-direction:column;

}

.nf-blog-cta .nf-btn,

.nf-blog-cta .nf-btn-outline{

text-align:center;

width:100%;

}


    /*====================================================
ARTICLE TYPOGRAPHY
====================================================*/

.nf-main-content{

    color:#3b3b3b;

    font-size:18px;

    line-height:1.9;

}

.nf-main-content>*:first-child{

    margin-top:0;

}

.nf-main-content h2{

    font-size:40px;

    font-weight:700;

    color:#17381E;

    margin:65px 0 25px;

    line-height:1.25;

    position:relative;

    padding-left:20px;

}

.nf-main-content h2::before{

    content:"";

    position:absolute;

    left:0;

    top:10px;

    width:6px;

    height:70%;

    border-radius:20px;

    background:#1B5E20;

}

.nf-main-content h3{

    font-size:30px;

    color:#17381E;

    margin:45px 0 20px;

}

.nf-main-content h4{

    font-size:24px;

    color:#17381E;

    margin:35px 0 15px;

}

.nf-main-content p{

    margin-bottom:24px;

}

.nf-main-content strong{

    color:#17381E;

    font-weight:700;

}

.nf-main-content a{

    color:#1B5E20;

    text-decoration:none;

    border-bottom:1px solid rgba(27,94,32,.25);

}

.nf-main-content a:hover{

    color:#2E7D32;

}
/*====================================================
LISTS
====================================================*/

.nf-main-content ul{

    margin:25px 0;

    padding-left:0;

    list-style:none;

}

.nf-main-content ul li{

    position:relative;

    padding-left:34px;

    margin-bottom:14px;

}

.nf-main-content ul li::before{

    content:"✔";

    position:absolute;

    left:0;

    color:#1B5E20;

    font-weight:700;

}

.nf-main-content ol{

    margin:25px 0;

    padding-left:22px;

}

.nf-main-content ol li{

    margin-bottom:15px;

}
/*====================================================
QUOTE
====================================================*/

.nf-main-content blockquote{

    background:#F7FBF8;

    border-left:6px solid #1B5E20;

    padding:35px;

    margin:45px 0;

    border-radius:14px;

    font-size:22px;

    line-height:1.7;

    color:#17381E;

    font-style:italic;

}
/*====================================================
TABLE
====================================================*/

.nf-main-content table{

    width:100%;

    border-collapse:collapse;

    margin:45px 0;

    overflow:hidden;

    border-radius:14px;

}

.nf-main-content table th{

    background:#1B5E20;

    color:#fff;

    padding:18px;

    text-align:left;

}

.nf-main-content table td{

    padding:18px;

    border:1px solid #ECECEC;

}

.nf-main-content table tr:nth-child(even){

    background:#F9FAF9;

}
/*====================================================
CALLOUT
====================================================*/

.nf-tip{

    background:#E8F5E9;

    border-left:5px solid #2E7D32;

    padding:25px;

    border-radius:12px;

    margin:35px 0;

}

.nf-note{

    background:#FFF9E8;

    border-left:5px solid #F9A825;

    padding:25px;

    border-radius:12px;

    margin:35px 0;

}
}
/*======================================

Hero Force

======================================*/

.nf-hero .nf-hero-title{

color:#ffffff !important;

font-size:58px !important;

line-height:1.15;

font-weight:700;

margin:25px 0;

text-shadow:

0 2px 20px rgba(0,0,0,.25);

}

.nf-hero h1{

color:#fff !important;

}

.single .nf-hero h1{

color:#fff !important;

}

.single-post .nf-hero h1{

color:#fff !important;

}