html,
body {
  max-width: 100%;
  overflow-x: clip;
}

body {
  font-family: "Montserrat", Arial, Helvetica, sans-serif;
}

img {
  max-width: 100%;
}

main,
section,
.navigation-root,
.footer-root,
.navigation-wrapper,
.footer-wrapper {
  max-width: 100%;
}

input,
select,
textarea,
button {
  min-width: 0;
  max-width: 100%;
}

.contact-static,
.footer-social-static {
  cursor: default;
}

.footer-description,
.footer-contact-text,
.footer-contact-link,
.footer-nav-link,
.footer-copyright,
.footer-legal-link {
  color: var(--color-on-primary);
}

.btn-secondary {
  color: #ffffff;
  border-color: #906520;
  background-color: #906520;
}

.form-status {
  width: 100%;
  margin-top: var(--spacing-md);
  font-size: var(--font-size-sm);
  line-height: 1.5;
}

@media (max-width: 767px) {
  .hero-title,
  .section-title,
  .section-title-sm,
  .oprema-card-title,
  .timeline-title,
  .footer-column-title,
  main h1,
  main h2,
  main h3 {
    text-align: center;
    overflow-wrap: anywhere;
  }

  .hero-title {
    font-size: clamp(2rem, 9vw, 2.75rem);
  }

  .section-title {
    font-size: clamp(1.65rem, 7vw, 2.15rem);
  }

  .section-title-sm,
  main h3 {
    font-size: clamp(1.15rem, 5vw, 1.45rem);
  }

  .navigation-container {
    gap: var(--spacing-md);
    padding-left: var(--spacing-md);
    padding-right: var(--spacing-md);
  }

  .navigation-logo .section-title,
  .footer-brand-name {
    max-width: min(72vw, 19rem);
    font-size: clamp(1rem, 4.8vw, 1.35rem);
    overflow-wrap: anywhere;
  }

  .podrobnosti-grid,
  .form-group-row,
  .kontakt-split,
  .zemljevid-split,
  .o-studiu-columns,
  .cta-container,
  .cta-buttons,
  .hero-studio-actions,
  .hero-vizija-actions,
  .hero-storitve-actions,
  .footer-bottom-content {
    flex-direction: column;
  }

  .obrazec-card,
  .cta-form-wrapper,
  .kontakt-form-col,
  .podrobnosti-card,
  .o-nas-mnenja-card,
  .domov-mnenja-card {
    max-width: 100%;
  }

  .cta-card {
    padding: var(--spacing-xl);
  }

  .o-nas-cta-info {
    width: 100%;
    max-width: 100%;
    padding: var(--spacing-md);
  }

  .o-nas-cta-info p,
  .o-nas-cta-info span {
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .cta-buttons > a {
    width: 100%;
  }

  .obrazec-container,
  .rezervacije-container,
  .podrobnosti-container,
  .storitve-seznam-container,
  .tehnicni-container,
  .mnenja-container,
  .cta-container,
  .o-studiu-container,
  .oprema-container,
  .o-nas-cta-container,
  .storitve-container,
  .kontakt-container,
  .cta-final-container {
    padding-left: var(--spacing-md);
    padding-right: var(--spacing-md);
  }

  section:not(.galerija-section):not(.projekti-galerija):not(.produkcije-galerija) {
    padding-top: max(var(--spacing-3xl), 3.5rem);
    padding-bottom: max(var(--spacing-3xl), 3.5rem);
  }

  .footer-main-grid,
  .footer-legal-links {
    width: 100%;
  }
}

@media (max-width: 479px) {
  .btn,
  .btn-primary,
  .btn-secondary,
  .btn-accent,
  .btn-outline {
    width: 100%;
    white-space: normal;
  }

  .navigation-overlay-content,
  .navigation-overlay-header,
  .footer-container {
    padding-left: var(--spacing-md);
    padding-right: var(--spacing-md);
  }
}
