:root {
  --vijesti-navy: #071f3d;
  --vijesti-blue: #0756a6;
  --vijesti-red: #c8102e;
  --vijesti-ink: #151a20;
  --vijesti-muted: #59616b;
  --vijesti-line: #d9dde2;
  --vijesti-soft: #f4f6f8;
  --vijesti-focus: #f4c542;
}

.elementor-kit-7 {
  --e-global-typography-primary-font-family: "IBM Plex Sans";
  --e-global-typography-primary-font-weight: 700;
  --e-global-typography-secondary-font-family: "IBM Plex Sans";
  --e-global-typography-secondary-font-weight: 600;
  --e-global-typography-text-font-family: Manrope;
  --e-global-typography-text-font-weight: 400;
  --e-global-typography-accent-font-family: Manrope;
  --e-global-typography-accent-font-weight: 700;
}

body {
  color: var(--vijesti-ink);
  font-family: Manrope, Arial, sans-serif;
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6,
.cs-entry__title,
.cs-header__nav-inner,
.cs-header__nav-container {
  font-family: "IBM Plex Sans", Arial, sans-serif;
}

.vijesti-skip-link {
  background: #fff;
  border: 3px solid var(--vijesti-navy);
  color: var(--vijesti-navy);
  font-weight: 700;
  left: 1rem;
  padding: .75rem 1rem;
  position: fixed;
  top: 1rem;
  transform: translateY(-180%);
  transition: transform .15s ease;
  z-index: 100000;
}

.vijesti-skip-link:focus {
  transform: translateY(0);
}

.vijesti-national-bar {
  align-items: center;
  background: var(--vijesti-navy);
  border-top: 4px solid var(--vijesti-red);
  color: #fff;
  display: flex;
  font-size: .75rem;
  font-weight: 700;
  justify-content: center;
  letter-spacing: .08em;
  min-height: 34px;
  position: relative;
  text-transform: uppercase;
}

.vijesti-national-bar::after {
  background: var(--vijesti-blue);
  bottom: -3px;
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
}

.vijesti-desktop-masthead {
  background: #fff;
  border-bottom: 1px solid var(--vijesti-line);
}

.vijesti-desktop-masthead__inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1320px;
  min-height: 82px;
  padding: 12px 30px;
}

.vijesti-wordmark {
  color: var(--vijesti-navy);
  font-family: "IBM Plex Sans", Arial, sans-serif;
  font-size: clamp(1.8rem, 2.6vw, 2.7rem);
  font-weight: 800;
  letter-spacing: -.045em;
  line-height: 1;
  text-decoration: none;
}

.vijesti-wordmark span {
  color: var(--vijesti-red);
}

.vijesti-wordmark img {
  display: block;
  height: auto;
  max-height: 56px;
  width: auto;
}

.vijesti-desktop-masthead p {
  color: var(--vijesti-muted);
  font-size: .875rem;
  margin: 0;
  max-width: 31rem;
  text-align: right;
}

.vijesti-desktop-masthead p strong {
  color: var(--vijesti-navy);
  font-family: "IBM Plex Sans", Arial, sans-serif;
  font-size: .75rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

:where(a, button, input, select, textarea, [role="button"]):focus-visible {
  outline: 3px solid var(--vijesti-focus);
  outline-offset: 3px;
}

:where(button, input[type="button"], input[type="submit"], .cs-button, [role="button"]),
.cs-header__nav-inner > li > a {
  min-height: 44px;
}

[role="button"] {
  cursor: pointer;
}

.vijesti-facebook-link {
  align-items: center;
  color: currentColor;
  display: inline-flex;
  justify-content: center;
  min-height: 44px;
  min-width: 44px;
  text-decoration: none;
}

.vijesti-facebook-link svg {
  fill: currentColor;
  height: 24px;
  width: 24px;
}

.vijesti-facebook-link:is(:hover, :focus-visible) {
  color: var(--vijesti-blue);
}

.cs-footer .vijesti-social {
  align-items: center;
  display: flex;
}

.entry-content a,
.page-content a,
.cs-entry__content a {
  color: var(--vijesti-blue);
  text-decoration: underline;
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
}

.entry-content,
.cs-entry__content {
  font-size: 1.125rem;
  line-height: 1.65;
}

.single-post .entry-content > :where(p, ul, ol, blockquote),
.single-post .cs-entry__content > :where(p, ul, ol, blockquote) {
  max-width: 72ch;
}

.cs-entry__category,
.post-categories,
.wp-block-latest-posts__category {
  font-size: .75rem;
  letter-spacing: .06em;
  line-height: 1.3;
}

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

body[data-scheme="dark"] {
  --vijesti-ink: #f7faff;
  --vijesti-muted: #cad5e2;
  --vijesti-line: #29415f;
  --vijesti-soft: #07172e;
  background: #050d21;
  color: var(--vijesti-ink);
}

body[data-scheme="dark"] .entry-content a,
body[data-scheme="dark"] .page-content a,
body[data-scheme="dark"] .cs-entry__content a {
  color: #7ab7ff;
}

/* WCAG AA: editorial headings must stay readable on the navy desktop canvas. */
@media (min-width: 1020px) {
  body[data-scheme="dark"] .cs-entry__title,
  body[data-scheme="dark"] .cs-entry__title a,
  body[data-scheme="dark"] .cs-heading__title,
  body[data-scheme="dark"] .cs-heading__title a,
  body[data-scheme="dark"] .wp-block-heading,
  body[data-scheme="dark"] .wp-block-latest-posts__post-title,
  body[data-scheme="dark"] .wp-block-latest-posts__post-title a,
  body[data-scheme="dark"] a.wp-block-latest-posts__post-title,
  body[data-scheme="dark"] .widget-title {
    color: #f1f6ff !important;
  }

  /* Elementor writes per-widget colors with a higher selector specificity. */
  html body.home.page[data-scheme="dark"] .elementor .elementor-widget .cs-entry__title a,
  html body.home.page[data-scheme="dark"] .elementor .elementor-widget a.wp-block-latest-posts__post-title,
  html body.home.page[data-scheme="dark"] .elementor .elementor-widget .cs-heading__title a {
    color: #f1f6ff !important;
  }

  body[data-scheme="dark"] .cs-entry__title a:hover,
  body[data-scheme="dark"] .cs-entry__title a:focus-visible,
  body[data-scheme="dark"] .cs-heading__title a:hover,
  body[data-scheme="dark"] .cs-heading__title a:focus-visible,
  body[data-scheme="dark"] .wp-block-latest-posts__post-title a:hover,
  body[data-scheme="dark"] .wp-block-latest-posts__post-title a:focus-visible,
  body[data-scheme="dark"] a.wp-block-latest-posts__post-title:hover,
  body[data-scheme="dark"] a.wp-block-latest-posts__post-title:focus-visible {
    color: #9dccff !important;
  }

  body[data-scheme="dark"] .cs-meta-category,
  body[data-scheme="dark"] .cs-meta-category a,
  body[data-scheme="dark"] .cs-entry__category,
  body[data-scheme="dark"] .cs-entry__category a {
    color: #d5e3f5 !important;
  }
}

/* Keep the complete county directory usable without an excessively tall menu. */
@media (min-width: 1020px) {
  .cs-header__nav-inner > .county-columns-menu > .sub-menu {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px 8px;
    width: min(540px, calc(100vw - 48px));
    padding: 12px;
  }

  .cs-header__nav-inner > .county-columns-menu > .sub-menu > li,
  .cs-header__nav-inner > .county-columns-menu > .sub-menu > li > a {
    min-width: 0;
    width: 100%;
  }

  .cs-header__nav-inner > .county-columns-menu > .sub-menu > li > a {
    min-height: 44px;
    padding: 8px 12px;
    white-space: normal;
  }
}

@media (min-width: 1280px) {
  .cs-header__nav-inner > .county-columns-menu > .sub-menu {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: min(780px, calc(100vw - 48px));
  }
}

@media (max-width: 991.98px) {
  .vijesti-desktop-masthead {
    display: none;
  }
}

@media (max-width: 767.98px) {
  .vijesti-national-bar {
    font-size: .6875rem;
    min-height: 30px;
  }

  .cs-header__nav-inner,
  .cs-offcanvas__inner {
    overflow-wrap: anywhere;
  }

  .entry-content,
  .cs-entry__content {
    font-size: 1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
