/* ─── Fit Design – main.css (additional) ─── */

/* ─── Accessibility ─── */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

:focus-visible {
  outline: 2px solid var(--clr-gold);
  outline-offset: 3px;
}

/* ─── Skip to content ─── */
.skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  background: var(--clr-gold);
  color: var(--clr-dark);
  padding: 8px 16px;
  z-index: 999;
  font-size: 0.875rem;
  font-weight: 500;
  border-radius: 0 0 4px 0;
}

.skip-link:focus { top: 0; }

/* ─── Hero layout fix for container ─── */
.hero .container { width: 100%; }

.hero__inner {
  width: 100%;
}

/* ─── Dividers ─── */
.section + .section { border-top: 1px solid var(--clr-border); }
.section--dark + .section,
.section + .section--dark,
.section--soft + .section--soft { border-top: none; }

/* ─── Print ─── */
@media print {
  .site-header,
  .nav__cta,
  .cta-section,
  .btn { display: none !important; }

  body { font-size: 12pt; color: #000; }
  a    { color: #000; text-decoration: underline; }
}

/* ─── WP Admin Bar fix ─── */
@media screen {
  html.wp-toolbar .site-header { top: 32px; }
}

@media screen and (max-width: 782px) {
  html.wp-toolbar .site-header { top: 46px; }
}

/* ─── Projekt placeholder ─── */
.projekt-placeholder {
  display: block;
  width: 100%;
  line-height: 0;
}

.projekt-placeholder svg {
  display: block;
  width: 100%;
  height: auto;
}

.project-placeholder-single {
  max-width: 860px;
  margin: 0 auto;
  border-radius: var(--radius-sm, 6px);
  overflow: hidden;
}

/* ─── Page content (Politika privatnosti, Uvjeti korištenja…) ─── */
.page-content {
  max-width: 720px;
  margin: 0 auto;
  padding: 3rem 0 5rem;
}

.page-content h1 {
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 700;
  color: var(--clr-dark);
  margin-bottom: 0.5rem;
  line-height: 1.15;
}

.page-content > p:first-of-type {
  font-size: 1.0625rem;
  color: var(--clr-text-muted);
  margin-bottom: 2.5rem;
  line-height: 1.65;
}

.page-content h2 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--clr-dark);
  margin: 2.25rem 0 0.625rem;
  padding-bottom: 0.375rem;
  border-bottom: 2px solid var(--clr-gold);
  display: inline-block;
}

.page-content p {
  font-size: 0.9375rem;
  line-height: 1.75;
  color: var(--clr-text);
  margin-bottom: 1rem;
}

.page-content ul,
.page-content ol {
  padding-left: 1.25rem;
  margin-bottom: 1rem;
}

.page-content li {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: var(--clr-text);
  margin-bottom: 0.375rem;
}

.page-content a {
  color: var(--clr-dark);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: var(--clr-gold);
}

.page-content a:hover {
  color: var(--clr-gold);
}

.page-content strong {
  font-weight: 600;
  color: var(--clr-dark);
}

@media (max-width: 640px) {
  .page-content {
    padding: 2rem 0 3.5rem;
  }
}

/* ─── Contact Form 7 overrides (if used) ─── */
.contact-form .wpcf7-form p { margin: 0; }
.contact-form .wpcf7-form input[type="text"],
.contact-form .wpcf7-form input[type="email"],
.contact-form .wpcf7-form input[type="tel"],
.contact-form .wpcf7-form textarea {
  width: 100%;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius-sm);
  padding: 0.625rem 0.875rem;
  font-size: 0.875rem;
  color: var(--clr-white);
  font-family: var(--font-sans);
}

.contact-form .wpcf7-form input[type="submit"] {
  background: var(--clr-gold);
  color: var(--clr-dark);
  border: none;
  padding: 0.875rem 1.5rem;
  border-radius: var(--radius-sm);
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  width: 100%;
}

.contact-form .wpcf7-not-valid-tip {
  color: #ff6b6b;
  font-size: 0.75rem;
}

.contact-form .wpcf7-response-output {
  border: none !important;
  font-size: 0.875rem;
  padding: 0.5rem 0 !important;
  color: var(--clr-gold);
  margin: 0 !important;
}
