/*
Theme Name: Građevinska Berza
Description: Tema za berzu građevinskih radova (radi uz dodatak „Građevinska Berza”).
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Author: Građevinska Berza
License: GPL-2.0-or-later
Text Domain: gb-tema
*/
@font-face { font-family: 'Archivo GB'; font-style: normal; font-display: swap; font-weight: 100 900; font-stretch: 62% 125%;
  src: url(fonts/archivo-latin-ext-wdth-normal.woff2) format('woff2-variations');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Archivo GB'; font-style: normal; font-display: swap; font-weight: 100 900; font-stretch: 62% 125%;
  src: url(fonts/archivo-latin-wdth-normal.woff2) format('woff2-variations');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--gb-concrete, #eceeec); color: var(--gb-ink, #102a43); font-family: 'Archivo GB', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif; font-size: 1rem; line-height: 1.55; }
h1, h2, h3, h4 { font-stretch: 75%; font-weight: 800; line-height: 1.08; letter-spacing: -.005em; text-wrap: balance; }
h1 { font-size: clamp(2.1rem, 4.6vw, 3.4rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2.1rem); }
h3 { font-size: 1.25rem; }
a { color: var(--gb-ink, #102a43); text-underline-offset: .15em; }
a:hover { text-decoration-color: var(--gb-signal, #f2c200); text-decoration-thickness: 3px; }
img { max-width: 100%; height: auto; }
::selection { background: #f2c200; color: #102a43; }
:focus-visible { outline: 3px solid #f2c200; outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 100; width: auto; height: auto; clip: auto; background: #f2c200; padding: .6em 1em; font-weight: 700; }

.wrap-gb { width: 100%; max-width: 1180px; margin: 0 auto; padding: 0 16px; }
.site-header { background: #102a43; color: #fff; border-bottom: 5px solid #f2c200; }
.site-header .wrap-gb { display: flex; align-items: center; gap: 1rem; min-height: 68px; flex-wrap: wrap; }
.brand { display: flex; align-items: center; gap: .6rem; color: #fff; text-decoration: none; font-weight: 800; font-stretch: 75%; font-size: 1.35rem; letter-spacing: .01em; }
.brand:hover { color: #fff; }
.brand__mark { width: 34px; height: 34px; flex: none; }
.brand em { font-style: normal; color: #f2c200; }
.nav-toggle { display: none; margin-left: auto; background: transparent; color: #fff; border: 2px solid #f2c200; border-radius: 4px; min-height: 40px; padding: 0 .8em; font: inherit; font-weight: 700; cursor: pointer; }
.main-nav { display: flex; align-items: center; gap: .25rem; margin-left: auto; }
.main-nav ul { list-style: none; display: flex; gap: .15rem; margin: 0; padding: 0; }
.main-nav a { display: block; color: #fff; text-decoration: none; padding: .5rem .7rem; font-weight: 600; border-radius: 4px; }
.main-nav a:hover, .main-nav .current-menu-item > a { background: rgba(255,255,255,.1); color: #f2c200; }
.header-cta { display: flex; gap: .5rem; align-items: center; margin-left: .5rem; }
.header-cta .gb-btn { min-height: 40px; }
.header-cta .gb-btn--ghost { color: #fff !important; border-color: #fff; }
.header-cta .gb-btn--ghost:hover { background: rgba(255,255,255,.12); }
.site-main { padding: 1.75rem 0 3rem; min-height: 60vh; }
.page-title { margin: 0 0 1.25rem; }
.entry-content > *:first-child { margin-top: 0; }
.site-footer { background: #102a43; color: #d9e2ec; padding: 2rem 0; font-size: .95rem; }
.site-footer a { color: #fff; }
.site-footer .wrap-gb { display: flex; justify-content: space-between; gap: 1.5rem; flex-wrap: wrap; }
.site-footer ul { list-style: none; display: flex; flex-wrap: wrap; gap: .4rem 1.2rem; padding: 0; margin: 0; }
.site-footer p { margin: 0 0 .3rem; }
.not-found { text-align: center; padding: 3rem 0; }
@media (max-width: 900px) {
  .nav-toggle { display: inline-flex; align-items: center; }
  .main-nav { display: none; width: 100%; flex-direction: column; align-items: stretch; padding-bottom: 1rem; margin-left: 0; }
  .main-nav.is-open { display: flex; }
  .main-nav ul { flex-direction: column; }
  .header-cta { margin: .5rem 0 0; flex-wrap: wrap; }
}