/*
Theme Name: VJT (GeneratePress child)
Description: Child theme of GeneratePress for the Supreme Public Prosecutor's Office of the Republic of Serbia. Authoritative institutional portal: navy crest masthead, newsroom hero, newspaper rhythm, heraldic gold accent.
Author: 4 Digits Consulting
Template: generatepress
Version: 3.0.0
*/

:root{
  --navy-950:#06182e; --navy-900:#0a2240; --navy-800:#0d2a4c; --navy-700:#143a66; --navy-600:#1d4c84;
  --navy-100:#d7e2f0; --navy-50:#eef3f9;
  --gold:#c2a14e; --gold-600:#a8863a; --gold-soft:#e7d6a6;
  --red:#9a2a2c;
  --ink:#14202d; --muted:#5a6675; --muted-2:#7b8694;
  --paper:#ffffff; --gray-50:#f3f6f9; --gray-100:#e8edf3; --line:#d8e0ea;
  --r:3px; --container:1200px;
  --shadow-sm:0 1px 2px rgba(8,26,46,.08);
  --shadow:0 4px 18px rgba(8,26,46,.12);
}

/* ---------- Base / typography ---------- */
body{color:var(--ink);background:var(--paper);font-size:.97rem;line-height:1.62;}
a{color:var(--navy-700);}
.vjt-container{max-width:var(--container);margin:0 auto;padding:0 24px;}
.vjt-eyebrow{display:inline-flex;align-items:center;gap:.5em;font-family:'Inter',system-ui,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-600);}
.vjt-eyebrow time,.vjt-eyebrow .dot{color:var(--muted);font-weight:600;letter-spacing:.03em;}
.vjt-tag{display:inline-block;font-family:'Inter',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.22em .6em;border-radius:2px;background:var(--gold);color:#1c1606;}
.vjt-tag--navy{background:var(--navy-700);color:#fff;}

.vjt-btn{display:inline-flex;align-items:center;gap:.5em;background:var(--gold);color:#19130a;border:0;border-radius:var(--r);padding:.6rem 1.2rem;font-weight:700;font-size:.92rem;text-decoration:none;transition:background .15s;}
.vjt-btn:hover{background:var(--gold-600);color:#19130a;}
.vjt-btn--navy{background:var(--navy-700);color:#fff;}
.vjt-btn--navy:hover{background:var(--navy-800);color:#fff;}

/* ---------- Top utility strip ---------- */
.vjt-topbar{background:var(--navy-950);color:#b9c8da;font-size:.8rem;border-bottom:1px solid rgba(255,255,255,.06);}
.vjt-topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:38px;}
.vjt-topbar-left{font-family:'Inter',sans-serif;letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;color:#7e93ab;}
.vjt-topbar-right{display:flex;align-items:center;gap:13px;}
.vjt-a11y-controls{display:flex;gap:4px;align-items:center;}
.vjt-a11y-btn{background:transparent;color:#b9c8da;border:1px solid rgba(185,200,218,.26);border-radius:2px;padding:0 8px;height:23px;cursor:pointer;font-weight:600;}
.vjt-a11y-btn:hover,.vjt-a11y-btn:focus{background:rgba(255,255,255,.1);color:#fff;}
.vjt-a11y-btn[data-vjt="fs-dec"]{font-size:.76rem;}.vjt-a11y-btn[data-vjt="fs-inc"]{font-size:1rem;}
.vjt-a11y-btn[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:#1c1606;}
.vjt-topbar-sep{width:1px;height:16px;background:rgba(185,200,218,.22);}
.vjt-lang-switcher{display:flex;align-items:center;gap:.1rem;list-style:none;margin:0;padding:0;}
.vjt-lang-switcher a{padding:.05rem .4rem;border-radius:2px;color:#b9c8da;text-decoration:none;font-weight:600;white-space:nowrap;}
.vjt-lang-switcher a:hover{color:#fff;}
.vjt-lang-switcher .sep{color:rgba(185,200,218,.3);}
.vjt-lang-switcher a.active{color:var(--gold-soft);}
.vjt-search{display:flex;align-items:center;background:rgba(255,255,255,.09);border-radius:2px;overflow:hidden;}
.vjt-search input{background:transparent;border:0;color:#fff;padding:.26rem .55rem;font-size:.8rem;width:160px;outline:none;}
.vjt-search input::placeholder{color:#7e93ab;}
.vjt-search button{background:transparent;border:0;color:#b9c8da;padding:.26rem .5rem;cursor:pointer;display:flex;}
.vjt-search button:hover{color:#fff;}

/* ---------- Masthead (navy crest lockup) ---------- */
.site-header{background:linear-gradient(180deg,var(--navy-900),var(--navy-800))!important;border-bottom:3px solid var(--gold);}
.site-header .inside-header{padding-top:16px;padding-bottom:16px;}
.inside-header > .site-logo,.inside-header > .site-branding{display:none;}
.vjt-brand{display:flex;align-items:center;gap:20px;text-decoration:none;}
.vjt-emblem{flex:0 0 auto;display:inline-flex;line-height:0;padding-right:20px;border-right:1px solid rgba(231,214,166,.4);}
.vjt-emblem img{height:78px;width:auto;display:block;}
.vjt-brand-text{display:flex;flex-direction:column;gap:5px;}
.vjt-brand-sup{font-family:'Inter',sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-soft);}
.vjt-brand-name{font-family:'Source Serif 4',Georgia,serif;font-weight:700;font-size:1.62rem;line-height:1.12;color:#fff;letter-spacing:.01em;}
a.vjt-brand:hover .vjt-brand-name{color:#fff;}

/* ---------- Primary nav ---------- */
.main-navigation,.main-navigation .inside-navigation{background:var(--paper)!important;}
.main-navigation{border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm);}
.main-navigation .main-nav>ul>li>a{color:var(--navy-900)!important;font-weight:600;font-size:.96rem;padding:14px 18px;border-bottom:3px solid transparent;text-transform:none;}
.main-navigation .main-nav>ul>li>a:hover{background:var(--gray-50)!important;color:var(--navy-700)!important;}
.main-navigation .main-nav>ul>li.current-menu-item>a,.main-navigation .main-nav>ul>li.current_page_item>a{color:var(--navy-900)!important;border-bottom-color:var(--gold)!important;background:transparent!important;}
.main-navigation ul ul{background:var(--navy-800)!important;border:0;box-shadow:var(--shadow);}
.main-navigation ul ul a{color:#e7eef7!important;border:0!important;}
.main-navigation ul ul a:hover{background:var(--navy-700)!important;}

/* ---------- Sections ---------- */
.vjt-home section{padding:50px 0;}
.vjt-alt{background:var(--gray-50);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.vjt-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap;border-bottom:2px solid var(--navy-900);padding-bottom:10px;}
.vjt-section-head h2{font-family:'Source Serif 4',Georgia,serif;font-size:1.5rem;line-height:1.15;margin:.15rem 0 0;color:var(--navy-900);}
.vjt-more{color:var(--navy-700);font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:.35em;white-space:nowrap;font-size:.9rem;}
.vjt-more:hover{color:var(--gold-600);}

/* ---------- Hero = newsroom (featured + latest list) ---------- */
.vjt-hero-section{padding:30px 0 14px;}
.vjt-hero-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:0;border:1px solid var(--line);box-shadow:var(--shadow-sm);}
.vjt-hero-main{position:relative;background:linear-gradient(155deg,var(--navy-800),var(--navy-950));color:#fff;padding:40px 42px;display:flex;flex-direction:column;justify-content:center;min-height:360px;overflow:hidden;}
.vjt-hero-main.has-img{background:var(--navy-900) center/cover no-repeat;}
.vjt-hero-main.has-img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,26,46,.92) 35%,rgba(8,26,46,.5));}
.vjt-hero-main:not(.has-img)::after{content:"";position:absolute;right:-40px;bottom:-40px;width:280px;height:280px;background:url('assets/grb.png') no-repeat center/contain;opacity:.05;}
.vjt-hero-main > *{position:relative;z-index:1;}
.vjt-hero-meta{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.vjt-hero-meta time{color:#aebfd2;font-size:.84rem;font-weight:600;}
.vjt-hero-title{font-family:'Source Serif 4',Georgia,serif;font-size:2.05rem;line-height:1.16;margin:0 0 14px;max-width:20ch;}
.vjt-hero-title a{color:#fff;text-decoration:none;}
.vjt-hero-title a:hover{color:var(--gold-soft);}
.vjt-hero-lead{color:#c6d2e1;font-size:1.02rem;margin:0 0 22px;max-width:52ch;}
.vjt-hero-main .vjt-btn{align-self:flex-start;}
.vjt-hero-aside{background:var(--paper);padding:24px 26px;display:flex;flex-direction:column;}
.vjt-hero-aside h2{font-family:'Source Serif 4',Georgia,serif;font-size:1.12rem;color:var(--navy-900);margin:0 0 6px;padding-bottom:10px;border-bottom:2px solid var(--gold);}
.vjt-hero-list{list-style:none;margin:0;padding:0;flex:1;}
.vjt-hero-list li{padding:13px 0;border-bottom:1px solid var(--line);}
.vjt-hero-list li:last-child{border-bottom:0;}
.vjt-hero-list time{display:block;color:var(--muted);font-size:.76rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px;}
.vjt-hero-list a{font-family:'Source Serif 4',Georgia,serif;font-weight:600;font-size:1rem;line-height:1.32;color:var(--navy-900);text-decoration:none;}
.vjt-hero-list a:hover{color:var(--gold-600);}
.vjt-hero-aside .vjt-more{margin-top:14px;}
.vjt-hero-controls{display:flex;align-items:center;gap:10px;position:absolute;left:42px;bottom:26px;z-index:2;}
.vjt-carousel-btn{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.28);width:34px;height:34px;border-radius:2px;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;}
.vjt-carousel-btn:hover{background:var(--gold);border-color:var(--gold);color:#1c1606;}
.vjt-carousel-dots{display:flex;gap:6px;}
.vjt-carousel-dots button{width:8px;height:8px;border:0;background:rgba(255,255,255,.35);cursor:pointer;padding:0;}
.vjt-carousel-dots button[aria-current="true"]{background:var(--gold);width:20px;}
/* hero carousel mechanics */
.vjt-carousel{position:relative;}
.vjt-carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;}
.vjt-carousel-track::-webkit-scrollbar{display:none;}
.vjt-hslide{flex:0 0 100%;scroll-snap-align:start;}

/* ---------- Report CTA (primary action) ---------- */
.vjt-cta{display:flex;align-items:center;gap:20px;background:linear-gradient(120deg,var(--navy-900),var(--navy-700));color:#fff;border-left:4px solid var(--gold);padding:22px 26px;border-radius:var(--r);text-decoration:none;margin-bottom:22px;}
.vjt-cta .ico{flex:0 0 auto;width:48px;height:48px;color:var(--gold-soft);}
.vjt-cta .ico svg{width:100%;height:100%;}
.vjt-cta-text{flex:1;}
.vjt-cta-text strong{display:block;font-family:'Source Serif 4',Georgia,serif;font-size:1.22rem;line-height:1.2;}
.vjt-cta-text span{color:#bccadb;font-size:.92rem;}
.vjt-cta .go{flex:0 0 auto;font-weight:700;color:var(--gold-soft);white-space:nowrap;}
.vjt-cta:hover{box-shadow:var(--shadow);}
.vjt-cta:hover .go{color:#fff;}

/* ---------- Services (described cards) ---------- */
.vjt-services{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.vjt-svc{display:flex;gap:15px;padding:20px 20px;background:var(--paper);color:var(--ink);text-decoration:none;transition:background .14s;}
.vjt-svc:hover{background:var(--navy-50);}
.vjt-svc .ico{flex:0 0 auto;width:40px;height:40px;color:var(--navy-700);}
.vjt-svc .ico svg{width:100%;height:100%;}
.vjt-svc-text strong{display:block;font-weight:700;color:var(--navy-900);font-size:1rem;margin-bottom:2px;}
.vjt-svc-text span{color:var(--muted);font-size:.86rem;line-height:1.45;}

/* ---------- News (text-first, newspaper) ---------- */
.vjt-news-wrap{display:grid;grid-template-columns:1.5fr 1fr;gap:36px;align-items:start;}
.vjt-feat{display:block;text-decoration:none;color:inherit;}
.vjt-feat .vjt-feat-title{font-family:'Source Serif 4',Georgia,serif;font-size:1.7rem;line-height:1.22;color:var(--navy-900);margin:.55rem 0 .6rem;}
.vjt-feat:hover .vjt-feat-title{color:var(--navy-700);}
.vjt-feat p{color:var(--muted);margin:0 0 14px;}
.vjt-newslist{list-style:none;margin:0;padding:0;}
.vjt-newslist li{padding:15px 0;border-top:1px solid var(--line);}
.vjt-newslist li:first-child{padding-top:0;border-top:0;}
.vjt-newslist .meta{display:flex;gap:9px;align-items:center;margin-bottom:5px;}
.vjt-newslist time{color:var(--muted);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;}
.vjt-newslist a{font-family:'Source Serif 4',Georgia,serif;font-weight:600;font-size:1.04rem;line-height:1.3;color:var(--navy-900);text-decoration:none;}
.vjt-newslist a:hover{color:var(--gold-600);}

/* ---------- Documents (official rows) ---------- */
.vjt-docs,.vjt-sd-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.vjt-doc{display:flex;align-items:center;gap:14px;padding:15px 18px;background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:0 var(--r) var(--r) 0;color:var(--navy-900);text-decoration:none;}
.vjt-doc:hover{background:var(--navy-50);border-left-color:var(--navy-700);}
.vjt-doc .ico{flex:0 0 auto;width:30px;height:30px;color:var(--gold-600);}
.vjt-doc .meta{display:flex;flex-direction:column;}
.vjt-doc .meta strong{font-weight:600;line-height:1.3;}
.vjt-doc .meta small{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;}
.vjt-doc .dl{margin-left:auto;color:var(--muted-2);}

/* ---------- Institutions ---------- */
.vjt-institutions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.vjt-inst{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);color:var(--navy-900);font-weight:600;text-decoration:none;line-height:1.32;font-size:.94rem;}
.vjt-inst .arr{color:var(--gold-600);flex:0 0 auto;}
.vjt-inst:hover{border-color:var(--navy-700);background:var(--navy-50);}

/* ---------- Footer ---------- */
.vjt-footer{background:var(--navy-900);color:#aebfd2;border-top:3px solid var(--gold);}
.vjt-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:34px;padding:46px 0 38px;}
.vjt-footer h3{font-family:'Inter',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-soft);margin:0 0 16px;}
.vjt-footer ul{list-style:none;margin:0;padding:0;}
.vjt-footer li{margin-bottom:9px;}
.vjt-footer a{color:#aebfd2;text-decoration:none;}
.vjt-footer a:hover{color:#fff;}
.vjt-foot-brand{display:flex;gap:16px;align-items:flex-start;}
.vjt-foot-brand img{height:62px;width:auto;flex:0 0 auto;}
.vjt-foot-brand .sup{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft);}
.vjt-foot-brand .nm{font-family:'Source Serif 4',Georgia,serif;color:#fff;font-size:1.05rem;line-height:1.25;margin:3px 0 8px;}
.vjt-foot-brand address{font-style:normal;font-size:.9rem;line-height:1.6;}
.site-footer .inside-site-info,.site-info{background:var(--navy-950)!important;color:#8ea3bb;border-top:1px solid rgba(255,255,255,.07);font-size:.84rem;}
.site-info a{color:#aebfd2;}

/* ---------- Breadcrumbs ---------- */
.vjt-breadcrumbs{background:var(--gray-50);border-bottom:1px solid var(--line);font-size:.84rem;}
.vjt-breadcrumbs ol{list-style:none;margin:0;padding:10px 0;display:flex;flex-wrap:wrap;align-items:center;}
.vjt-breadcrumbs li{display:flex;align-items:center;}
.vjt-breadcrumbs li+li::before{content:"\203A";margin:0 .5rem;color:var(--muted-2);}
.vjt-breadcrumbs a{color:var(--navy-700);text-decoration:none;}
.vjt-breadcrumbs a:hover{color:var(--gold-600);}
.vjt-breadcrumbs [aria-current="page"]{color:var(--muted);}

/* ---------- Cookie ---------- */
.vjt-cookie{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:var(--navy-950);color:#dde6f1;box-shadow:0 -2px 16px rgba(0,0,0,.3);border-top:2px solid var(--gold);}
.vjt-cookie[hidden]{display:none;}
.vjt-cookie-inner{display:flex;align-items:center;gap:18px;padding:13px 24px;flex-wrap:wrap;justify-content:center;}
.vjt-cookie p{margin:0;font-size:.88rem;max-width:82ch;}

/* ---------- Strategic docs filter ---------- */
.vjt-sd-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
.vjt-sd-filter button{background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:2px;padding:.35rem 1rem;cursor:pointer;font-weight:600;}
.vjt-sd-filter button:hover{border-color:var(--gold);}
.vjt-sd-filter button[aria-current="true"]{background:var(--navy-900);color:#fff;border-color:var(--navy-900);}

/* ---------- Front page full width ---------- */
.vjt-front .site-content .content-area{width:100%;float:none;}
.vjt-front #right-sidebar,.vjt-front #left-sidebar{display:none;}
.vjt-front .site-main{margin:0;}
.vjt-front #content,.vjt-front .site-content{padding:0;margin:0;max-width:100%;}
.vjt-front .inside-article,.vjt-front .entry-content,.vjt-front .site-main>*{margin:0;padding:0;max-width:100%;}

/* ---------- High contrast ---------- */
html.vjt-contrast,html.vjt-contrast body{background:#000!important;color:#fff!important;}
html.vjt-contrast .site-header,html.vjt-contrast .main-navigation,html.vjt-contrast .main-navigation .inside-navigation,html.vjt-contrast .vjt-alt,html.vjt-contrast .vjt-svc,html.vjt-contrast .vjt-doc,html.vjt-contrast .vjt-inst,html.vjt-contrast .vjt-hero-aside,html.vjt-contrast .vjt-hero-main,html.vjt-contrast .vjt-cta,html.vjt-contrast .vjt-footer,html.vjt-contrast .site-info,html.vjt-contrast .vjt-breadcrumbs,html.vjt-contrast .vjt-sd-filter button{background:#000!important;color:#fff!important;border-color:#fff!important;}
html.vjt-contrast a,html.vjt-contrast .vjt-more,html.vjt-contrast .main-navigation a,html.vjt-contrast .vjt-inst,html.vjt-contrast .vjt-doc,html.vjt-contrast .vjt-brand-name,html.vjt-contrast .vjt-newslist a,html.vjt-contrast .vjt-hero-list a,html.vjt-contrast .vjt-feat-title,html.vjt-contrast .vjt-hero-title a,html.vjt-contrast .vjt-svc-text strong{color:#ff0!important;}
html.vjt-contrast .vjt-svc .ico,html.vjt-contrast .vjt-doc .ico,html.vjt-contrast .vjt-eyebrow,html.vjt-contrast .vjt-cta .ico{color:#ff0!important;}
html.vjt-contrast .vjt-svc,html.vjt-contrast .vjt-inst,html.vjt-contrast .vjt-doc,html.vjt-contrast .vjt-sd-filter button,html.vjt-contrast .vjt-hero-grid{border:1px solid #fff!important;}
html.vjt-contrast .vjt-btn,html.vjt-contrast .vjt-tag,html.vjt-contrast .vjt-a11y-btn[aria-pressed="true"],html.vjt-contrast .vjt-sd-filter button[aria-current="true"]{background:#ff0!important;color:#000!important;}
html.vjt-contrast *:focus{outline:3px solid #ff0!important;outline-offset:2px;}

a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .vjt-hero-grid{grid-template-columns:1fr;}
  .vjt-hero-main{min-height:300px;}
  .vjt-services{grid-template-columns:repeat(2,1fr);}
  .vjt-institutions{grid-template-columns:repeat(2,1fr);}
  .vjt-news-wrap{grid-template-columns:1fr;gap:26px;}
  .vjt-footer-grid{grid-template-columns:1fr 1fr;gap:28px;}
}
@media (max-width:768px){
  .vjt-topbar-inner{flex-wrap:wrap;justify-content:center;gap:7px;min-height:0;padding-top:7px;padding-bottom:7px;}
  .vjt-topbar-left{display:none;}
  .vjt-search input{width:140px;}
  .vjt-emblem img{height:54px;}.vjt-emblem{padding-right:15px;}
  .vjt-brand{gap:15px;}
  .vjt-brand-name{font-size:1.16rem;}.vjt-brand-sup{font-size:.66rem;letter-spacing:.16em;}
  .vjt-home section{padding:34px 0;}
  .vjt-hero-main{padding:28px 24px;}
  .vjt-hero-title{font-size:1.55rem;}
  .vjt-hero-controls{position:static;margin-top:18px;}
  .vjt-services,.vjt-docs,.vjt-sd-list{grid-template-columns:1fr;}
  .vjt-cta{flex-wrap:wrap;gap:12px;}
  .vjt-section-head h2{font-size:1.32rem;}
}
@media (max-width:560px){
  .vjt-institutions{grid-template-columns:1fr;}
  .vjt-footer-grid{grid-template-columns:1fr;gap:26px;}
}
@media (prefers-reduced-motion:reduce){.vjt-carousel-track{scroll-behavior:auto;}}
