/* GizFocus design layer. Sits on top of the theme; remove the <link> in Admin > Custom header code to switch it off. */
:root{
  --gf-blue:#0789c9; --gf-blue-dark:#056aa0; --gf-navy:#14213d; --gf-ink:#111827; --gf-muted:#6b7280;
  --gf-line:#e8ecf1; --gf-soft:#f5f8fb; --gf-radius:12px;
  --vr-theme-color:#0789c9; --vr-block-color:#14213d;
}
html{scroll-behavior:smooth}
body{color:var(--gf-ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{transition:color .15s ease}
h1,h2,h3,h4,.title{letter-spacing:-.005em}

/* ---------- Header ---------- */
.navbar{box-shadow:0 1px 0 var(--gf-line),0 6px 18px -14px rgba(20,33,61,.35)}
.navbar .nav-link,.navbar .menu-link{font-weight:600}
.navbar .nav-link:hover,.navbar .nav-item:hover>.nav-link{color:var(--gf-blue)!important}
.search-icon-btn:hover{color:var(--gf-blue)}

/* ---------- Top story block ---------- */
.featured-section{margin-top:22px}
.fs-grid-wrapper{gap:10px!important}
.featured-section .fs-card,.featured-section .main-slider-wrapper,.featured-section .main-slider{border-radius:var(--gf-radius);overflow:hidden}
.featured-section .fs-img{transition:transform .6s ease}
.featured-section .fs-card:hover .fs-img{transform:scale(1.04)}
.featured-section .fs-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,18,36,0) 35%,rgba(10,18,36,.82) 100%);pointer-events:none}
.featured-section .fs-content{z-index:2}
.featured-section .area-main .fs-title{font-size:clamp(24px,2.6vw,38px);line-height:1.18;font-weight:800;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.featured-section .fs-title a{color:#fff}
.featured-section .fs-card-small .fs-title,.featured-section .fs-grid-boxes .fs-title{font-weight:700}

/* ---------- Section titles ---------- */
.section-title{margin-bottom:22px}
.section-title .title,.widget-title,.widget-head .title{font-size:22px;font-weight:800;position:relative}
.section-title .title::before,.widget-title::before,.widget-head .title::before{content:"";display:inline-block;width:5px;height:20px;border-radius:3px;background:var(--gf-blue);margin-right:10px;vertical-align:-3px}
.view-all{color:var(--gf-blue)!important;font-weight:700}
.view-all:hover{color:var(--gf-blue-dark)!important}

/* ---------- Post cards ---------- */
.post-item{margin-bottom:34px}
.post-item .img-wrapper,.post-item .post-image,.post-item img{border-radius:var(--gf-radius)}
.post-item .img-wrapper,.post-item a>img{overflow:hidden}
.post-item img{transition:transform .5s ease}
.post-item:hover img{transform:scale(1.03)}
.post-item .title{font-size:20px;line-height:1.32;font-weight:800;margin:14px 0 8px}
.post-item .title a{color:var(--gf-ink)}
.post-item .title a:hover{color:var(--gf-blue);text-decoration:none}
.post-item .description{color:var(--gf-muted);font-size:15px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.badge-category{background:rgba(20,33,61,.88)!important;color:#fff!important;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:6px;backdrop-filter:blur(4px)}
.post-meta{color:var(--gf-muted);font-size:13px}
.post-meta{display:flex;flex-wrap:wrap;align-items:center}
.post-meta .meta-item{margin:0!important}
.post-meta .meta-item+.meta-item::before{content:"\00b7";margin:0 7px;opacity:.6}
.post-meta .meta-item i{display:none}
.post-item .post-meta .meta-item:has(.vri-comments),.post-item .post-meta .meta-item:has(.vri-eye),
.post-item-small .post-meta .meta-item:has(.vri-comments),.post-item-small .post-meta .meta-item:has(.vri-eye),
.footer-posts .post-meta .meta-item:has(.vri-comments),.footer-posts .post-meta .meta-item:has(.vri-eye){display:none}
.post-item-small{margin-bottom:22px}
.post-item-small .title{font-weight:700;line-height:1.35}
.post-item-small img{border-radius:10px}

/* ---------- Sidebar ---------- */
.sidebar-widget{margin-bottom:34px}
.sidebar-widget .widget-head{margin-bottom:18px}

/* ---------- Article page ---------- */
.breadcrumb,.breadcrumbs{font-size:13px}
.post-title,.post-header .title,h1.title{font-weight:800;line-height:1.16;letter-spacing:-.02em}
.entry-content{font-size:18px;line-height:1.85;color:#1f2937}
.entry-content h2{font-size:28px;font-weight:800;margin:1.8em 0 .6em}
.entry-content h3{font-size:22px;font-weight:800;margin:1.7em 0 .5em;line-height:1.3}
.entry-content h4{font-size:19px;font-weight:700;margin:1.5em 0 .4em}
.entry-content p{margin-bottom:1.15em}
.entry-content ul,.entry-content ol{padding-left:1.3em;margin-bottom:1.2em}
.entry-content li{margin-bottom:.4em}
.entry-content a{color:var(--gf-blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.entry-content img{border-radius:var(--gf-radius);margin:14px 0}
.entry-content blockquote{border-left:4px solid var(--gf-blue);background:var(--gf-soft);padding:14px 20px;border-radius:0 10px 10px 0;margin:1.4em 0}
.entry-content table{width:100%;border-collapse:collapse;margin:1.2em 0}
.entry-content th,.entry-content td{border:1px solid var(--gf-line);padding:9px 12px}
.entry-content th{background:var(--gf-soft)}

/* ---------- Buttons, forms ---------- */
.btn-custom,.btn-primary{background:var(--gf-blue)!important;border-color:var(--gf-blue)!important;border-radius:9px;font-weight:700}
.btn-custom:hover,.btn-primary:hover{background:var(--gf-blue-dark)!important;border-color:var(--gf-blue-dark)!important}
.form-control:focus{border-color:var(--gf-blue);box-shadow:0 0 0 .2rem rgba(7,137,201,.15)}

/* ---------- Footer ---------- */
#footer{--vr-footer-bg:var(--gf-navy);background-color:var(--gf-navy)}
#footer .widget-title,#footer .footer-widget h3{color:#fff}
#footer a{color:#cbd5e1}#footer a:hover{color:#fff;text-decoration:none}
#footer .footer-about{color:#cbd5e1;line-height:1.7;margin-top:14px;max-width:340px}
#footer .footer-copyright{color:#94a3b8}
#footer .footer-inner{border-color:rgba(255,255,255,.08)}

/* ---------- Cookie bar ---------- */
.cookie-consent,#cookieConsent{box-shadow:0 -10px 30px -18px rgba(20,33,61,.45)}

/* ---------- Mobile ---------- */
@media (max-width:767px){
  .featured-section{margin-top:12px}
  .section-title .title,.widget-title{font-size:20px}
  .post-item .title{font-size:18px}
  .entry-content{font-size:17px;line-height:1.8}
  .entry-content h2{font-size:24px}.entry-content h3{font-size:20px}
}
@media (max-width:767px){
  .featured-section .container-xl{padding-left:12px;padding-right:12px}
  .featured-section .area-sub-top,.featured-section .area-sub-bottom{display:none}
  .featured-section .area-main .fs-title{font-size:24px}
}

/* Bengali: use a proper Bengali font and no letter-spacing (it breaks conjuncts) */
html:lang(bn) body,html:lang(bn) h1,html:lang(bn) h2,html:lang(bn) h3,html:lang(bn) h4,html:lang(bn) .title,html:lang(bn) .nav-link,html:lang(bn) .menu-link,html:lang(bn) .font-title,html:lang(bn) button,html:lang(bn) input{font-family:'Noto Sans Bengali','Hind Siliguri','Kalpurush',sans-serif!important;letter-spacing:0!important}
html:lang(bn) .entry-content{line-height:1.95}
html:lang(bn) .badge-category{text-transform:none;letter-spacing:0;font-size:12px}

/* Optional image credit, small text under the main post image */
.post-image-preview .img-credit { display: block; margin-top: 3px; font-size: 11px; line-height: 1.4; color: var(--vr-text-muted, #6b7280); font-style: normal; letter-spacing: .02em; text-align: left; }

/* Image shape: main post image is shown whole, never cut, and never taller than 520px (new uploads are already cropped to 16:9) */
.post-image-preview > img,
.post-image-preview .swiper-slide > img { display: block; max-width: 100%; width: auto; height: auto; max-height: 520px; object-fit: contain; margin-left: auto; margin-right: auto; border-radius: var(--gf-radius); }
/* Images inside the article: never wider than the text, never taller than a screen */
.entry-content img { display: block; max-width: 100%; height: auto; max-height: 520px; width: auto; object-fit: contain; margin-left: auto; margin-right: auto; }
@media (max-width: 575px) { .entry-content img { max-height: 420px; } }

/* Live search suggestions */
.gf-suggest { position: absolute; left: 0; right: 0; top: 100%; z-index: 1050; margin-top: 6px; background: var(--vr-bg, #fff); color: var(--vr-text, #1f2937); border: 1px solid rgba(128,128,128,.25); border-radius: 10px; box-shadow: 0 10px 28px rgba(0,0,0,.14); overflow: hidden; max-height: 70vh; overflow-y: auto; }
.gf-suggest[hidden] { display: none; }
.gf-suggest-item { display: flex; align-items: center; gap: 10px; padding: 9px 12px; color: inherit; text-decoration: none; border-bottom: 1px solid rgba(128,128,128,.15); }
.gf-suggest-item img { width: 56px; height: 40px; object-fit: cover; border-radius: 6px; flex: 0 0 auto; }
.gf-suggest-item:hover, .gf-suggest-item.is-active, .gf-suggest-all:hover, .gf-suggest-all.is-active { background: rgba(128,128,128,.12); text-decoration: none; }
.gf-suggest-title { display: block; font-size: 14px; line-height: 1.35; font-weight: 600; }
.gf-suggest-cat { display: block; font-size: 12px; opacity: .65; margin-top: 2px; }
.gf-suggest-all { display: block; padding: 10px 12px; font-size: 13px; font-weight: 600; color: inherit; text-decoration: none; }
.gf-suggest-empty { padding: 12px; font-size: 14px; opacity: .75; }
