/*---------------------------------------------------------------------------------

	Theme Name: Himansu Blog
    Text Domain: 
	Version: 1.0.0
	Description: Himansu Blog is a beautiful, responsive and retina-ready masonry theme for hoarders. It's the perfect way to showcase your posts, videos, images and galleries, and share your favorite quotes and links. Features responsive design, retina-ready assets, full-width header image, Block Editor support, support for all post formats, custom logo upload, four page templates (including a contributors template), editor styling, like functionality via the ZillaLikes plugin and translation-ready code. Demo: https://andersnoren.se/themes/baskerville/
	Tags: blog, three-columns, right-sidebar, custom-colors, custom-header, custom-menu, editor-style, featured-images, footer-widgets, post-formats, sticky-post, theme-options, threaded-comments, translation-ready, portfolio, grid-layout, block-styles, wide-blocks
	Author: Himansu
	Author URI: 
	Theme URI: 
	License: GNU General Public License version 1.0
	License URI: 
	Requires PHP: 5.4
	Tested up to: 6.7

	All files, unless otherwise stated, are released under the GNU General Public License
	version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

-----------------------------------------------------------------------------------

	0.	CSS Reset & Clearfix
	1.	Document Setup
	2.  Structure
	3.	Header
	4.	Navigation
	5.	Main Content
	6.  Single post
	7.	Post Content
	8.	Comments
	9.	Pagination
	10.	Page & Page Templates
	11.	Sidebar
	12.	Footer
	13. Credits
	14.	Responsive

----------------------------------------------------------------------------------- */


/* -------------------------------------------------------------------------------- */
/*	0. CSS Reset
/* -------------------------------------------------------------------------------- */


html, body { margin:0; padding:0;}

h1, h2, h3, h4, h5, h6, p, blockquote, address, big, cite, code, em, font, img, small, strike, sub, sup, li, ol, ul, fieldset, form, label, legend, button, table, caption, tr, th, td {
	margin:0;
	padding:0;
	border:0;
	font-weight:normal;
	font-style:normal;
	font-size:100%;
	line-height:1;
	font-family:inherit;
	text-align:left;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

ol, ul {
	list-style:none;
}

blockquote:before, blockquote:after {
	content:"";
}

input[type=search],
input[type=text],
input[type=email],
input[type=url],
input[type=button],
input[type=tel],
input[type=submit],
textarea {
   -moz-appearance: none;
   -webkit-appearance: none;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}


/* -------------------------------------------------------------------------------- */
/*	1. Document setup
/* -------------------------------------------------------------------------------- */


body {
	margin: 0;
	padding: 0;
	border: none;
	background: #f4f7fb;
	color: #233142;
	font-family: Inter, "Segoe UI", Roboto, sans-serif;
	font-size: 18px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body a {
	color: #2563eb;
	text-decoration: none;
}

body a:hover {
	color: #1d4ed8;
	text-decoration: none;
}

* {  
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
}





/* ===========================
   NEWS BLOG FOOTER
=========================== */

.nbf-footer{
    background:#111827;
    color:#cbd5e1;
    margin-top:60px;
    font-family:inherit;
    font-size: .875rem;
}

.nbf-container{
    max-width:1280px;
    margin:auto;
    padding:60px 20px;
}

.nbf-grid{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr 1fr;
    gap:45px;
}

.nbf-col{
    min-width:0;
}

.nbf-logo{
    margin:0 0 15px;
    font-size:30px;
    font-weight:700;
}

.nbf-logo a{
    color:#fff;
    text-decoration:none;
}

.nbf-description{
    color:#60a5fa;
    margin-bottom:20px;
    font-weight:600;
}

.nbf-about{
    line-height:1.9;
    color:#b8c0cc;
	font-size: 14px;
}

/* Widgets */


.nbf-col ul{
    list-style:none;
    padding:0;
    margin:0;
}

.nbf-col li{
    border-bottom:1px solid rgba(255,255,255,.08);
    padding:12px 0;
}

.nbf-col li:last-child{
    border:none;
}

.nbf-col a{
    color:#dbe3ec;
    text-decoration:none;
    transition:.3s;
}

.nbf-col a:hover{
    color:#60a5fa;
    padding-left:6px;
}

/* Search */

.nbf-col input[type="search"],
.nbf-col input[type="text"]{
    width:100%;
    padding:12px;
    border-radius:6px;
    border:none;
    margin-bottom:10px;
}

.nbf-col input[type="submit"],
.nbf-col button{
    background:#2563eb;
    color:#fff;
    border:none;
    padding:11px 18px;
    border-radius:6px;
    cursor:pointer;
}

.nbf-col input[type="submit"]:hover{
    background:#1d4ed8;
}

/* Tags */

.nbf-col .tagcloud a{
    display:inline-block;
    padding:7px 12px;
    margin:5px;
    border-radius:25px;
    background:#1f2937;
    font-size:13px !important;
}

.nbf-col .tagcloud a:hover{
    background:#2563eb;
    color:#fff;
}

/* Bottom */

.nbf-bottom{
    border-top:1px solid rgba(255,255,255,.08);
    background:#0b1120;
}

.nbf-bottom-inner{
    max-width:1280px;
    margin:auto;
    padding:20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
}

.nbf-copy{
    color:#94a3b8;
}

.nbf-copy a{
    color:#fff;
    text-decoration:none;
}

.nbf-links{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
}

.nbf-links a{
    color:#cbd5e1;
    text-decoration:none;
}

.nbf-links a:hover{
    color:#60a5fa;
}

.nbf-top a{
    display: inline-block;
    position: fixed;      /* Makes it float */
    bottom: 20px;         /* Distance from bottom */
    right: 20px;          /* Distance from right */
    background: #0073aa;  /* New blue color */
    color: #fff;
    padding: 10px 12px;
    border-radius: 30px;
    text-decoration: none;
    transition: .3s;
    z-index: 9999;        /* Keeps it above other elements */
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

.nbf-top a:hover{
    background: #0056b3;  /* Darker blue on hover */
    color: #fff;
}

/* Responsive */

@media (max-width:1100px){

.nbf-grid{
    grid-template-columns:repeat(2,1fr);
}

}

@media (max-width:768px){

.nbf-grid{
    grid-template-columns:1fr;
    gap:35px;
}

.nbf-bottom-inner{
    flex-direction:column;
    text-align:center;
}

.nbf-links{
    justify-content:center;
}

.nbf-top{
    width:100%;
}


}

@media (max-width:480px){

.nbf-container{
    padding:40px 15px;
}

.nbf-logo{
    font-size:24px;
}

.nbf-col .widget-title{
    font-size:18px;
}

.nbf-links{
    gap:12px;
}

}

.nbf-footer-menu,
.nbf-category-list{
    list-style: none;
    margin: 0;
    padding: 0;
}


.nbf-footer-menu a,
.nbf-category-list a{
    color: #ddd;
    text-decoration: none;
	font-size: 13px;
    
}

.nbf-footer-menu a:hover,
.nbf-category-list a:hover{
    color: #fff;
}

.nbf-social-icons{
    display:flex;
    gap:12px;
    list-style:none;
    padding:0;
    margin:0;
}

.nbf-social-icons li{
    margin:0;
}

.nbf-social-icons a{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.1);
    color:#fff;
    border-radius:50%;
    font-size:17px;
    transition:.3s;
}

.nbf-social-icons a:hover{
    background:#2563eb;
    color:#fff;
    transform:translateY(-3px);
}

.nbf-logo img {
    max-width: 180px;
    height: auto;
    display: block;
}

.nbf-logo h2 {
    margin: 0;
    font-size: 28px;
    font-weight: 700;
}

.nbf-logo a {
    display: inline-block;
    text-decoration: none;
    color: inherit;
}

.nbf-description {
    margin-top: 15px;
}



/*====================
Image view modal
====================*/
.nb-image-modal{

display:none;
position:fixed;
z-index:99999;
left:0;
top:0;
width:100%;
height:100%;
background:rgba(0,0,0,.9);

align-items:center;
justify-content:center;
flex-direction:column;

padding:30px;

}


.nb-image-modal img{

max-width:90%;
max-height:80vh;
border-radius:10px;

}


.nb-image-modal h3{

color:white;
font-size:22px;
margin-top:20px;
text-align:center;

}


.nb-modal-close{

position:absolute;
right:35px;
top:20px;

font-size:45px;
color:white;
cursor:pointer;

}


.nb-gallery-item{

cursor:pointer;

}

.nb-modal-prev,
.nb-modal-next {

    position:absolute;
    top:50%;
    transform:translateY(-50%);

    width:36px;
    height:36px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:rgba(255,255,255,0.15);

    border:1px solid rgba(255,255,255,0.3);

    color:#fff;

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

    border-radius:50%;

    cursor:pointer;

    z-index:10;

    transition:all .3s ease;

}


.nb-modal-prev {

    left:20px;

}


.nb-modal-next {

    right:20px;

}



.nb-modal-prev:hover,
.nb-modal-next:hover {

    background:#2563eb;

    border-color:#2563eb;

}



/* Keep buttons away from image edges */

.nb-image-modal {

    position:fixed;

}



/* Mobile */

@media(max-width:600px){

    .nb-modal-prev,
    .nb-modal-next {

        width:32px;
        height:32px;

        font-size:18px;

    }


    .nb-modal-prev {

        left:10px;

    }


    .nb-modal-next {

        right:10px;

    }

}



/* ==========================
   Gallery Grid
========================== */
.nb-gallery{

    padding:30px 0;

    background:#f8fafc;

}

.nb-gallery-grid{

    display:grid;

    grid-template-columns:
    repeat(4,1fr);

    grid-auto-rows:220px;

    gap:15px;

}



/* Gallery Card */

.nb-gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:0;

    cursor:pointer;

}



.nb-gallery-item img{

    width:100%;
    height:100%;

    object-fit:cover;

    display:block;

    transition:.4s ease;

}


.nb-gallery-item:hover img{

    transform:scale(1.05);

}



/* ==========================
   Image Sizes
========================== */


/* First row */

.nb-gallery-item:nth-child(1){

    grid-column:span 1;

}


.nb-gallery-item:nth-child(2){

    grid-column:span 2;

}


.nb-gallery-item:nth-child(3){

    grid-column:span 1;

}



/* Second row */

.nb-gallery-item:nth-child(4){

    grid-column:span 2;

}


.nb-gallery-item:nth-child(5){

    grid-column:span 1;

}


.nb-gallery-item:nth-child(6){

    grid-column:span 1;

}



/* Overlay */

.nb-gallery-overlay{

    position:absolute;

    inset:0;

    display:flex;

    align-items:flex-end;

    padding:20px;


    background:linear-gradient(
        to top,
        rgba(0,0,0,.65),
        transparent 60%
    );

}



.nb-gallery-overlay h3{

    color:#fff;

    font-size:0.9rem;

    font-weight:500;

    line-height:1.4;

    margin:0;

}



/* ==========================
   Tablet
========================== */

@media(max-width:992px){


    .nb-gallery-grid{

        grid-template-columns:repeat(3,1fr);

        grid-auto-rows:200px;

    }


    .nb-gallery-item:nth-child(n){

        grid-column:span 1;

    }


    /* Make some wider */

    .nb-gallery-item:nth-child(2),
    .nb-gallery-item:nth-child(4){

        grid-column:span 2;

    }

}



/* ==========================
   Mobile
========================== */

/* ==========================
   Mobile
========================== */

@media(max-width:600px){



    .nb-gallery-grid{

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

        grid-auto-rows:160px;

        gap:12px;

    }



    /* Reset desktop/tablet spans */

    .nb-gallery-item:nth-child(n){

        grid-column:span 1 !important;

    }



    .nb-gallery-item{

        height:160px;

        width:100%;

    }



    .nb-gallery-item img{

        width:100%;

        height:100%;

        object-fit:cover;

    }



    .nb-gallery-overlay{

        padding:12px;

    }



    .nb-gallery-overlay h3{

        font-size:.75rem;

        line-height:1.3;

    }

}
