@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=DM+Sans:wght@300;400;500;600;700;800;900&display=swap");

[x-cloak] {
  display: none !important;
}

body {
  font-family: "DM Sans", sans-serif;
}

.eyebrow-text {
  font-family: "DM Mono", monospace;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  font-kerning: normal;
  text-transform: uppercase;
}

p {
  font-weight: 400 !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "DM Sans", sans-serif;
  font-weight: 600;
}

.bg-primary {
  background-color: #1b6b81;
}

.text-primary {
  color: #1b6b81;
}

.border-primary {
  border-color: #1b6b81;
}

.border-primary\/20 {
  border-color: rgba(27, 107, 129, 0.2);
}

.hover\:bg-primary:hover {
  background-color: #1b6b81;
}

.hover\:text-primary:hover {
  color: #1b6b81;
}

.hover\:border-primary:hover {
  border-color: #1b6b81;
}

.bg-primary\/10 {
  background-color: rgba(27, 107, 129, 0.1);
}

.bg-primary\/20 {
  background-color: rgba(27, 107, 129, 0.2);
}

.text-primary\/10 {
  color: rgba(27, 107, 129, 0.1);
}

.text-primary\/20 {
  color: rgba(27, 107, 129, 0.2);
}

.focus\:border-primary:focus {
  border-color: #1b6b81;
}

.bg-secondary {
  background-color: #4a5d4e;
}

.text-secondary {
  color: #4a5d4e;
}

.border-secondary {
  border-color: #4a5d4e;
}

.hover\:bg-secondary:hover {
  background-color: #4a5d4e;
}

.hover\:border-secondary:hover {
  border-color: #4a5d4e;
}

.bg-secondary\/10 {
  background-color: rgba(74, 93, 78, 0.1);
}

.text-secondary\/10 {
  color: rgba(74, 93, 78, 0.1);
}

.bg-tertiary {
  background-color: #a67c52;
}

.text-tertiary {
  color: #a67c52;
}

.border-tertiary {
  border-color: #a67c52;
}

.bg-tertiary\/10 {
  background-color: rgba(166, 124, 82, 0.1);
}

.text-tertiary\/10 {
  color: rgba(166, 124, 82, 0.1);
}

.bg-neutral {
  background-color: #fcfcf9;
}

.hover\:bg-neutral:hover {
  background-color: #fcfcf9;
}

.text-white\/80 {
  color: rgba(255, 255, 255, 0.8);
}

.text-white\/70 {
  color: rgba(255, 255, 255, 0.7);
}

.text-white\/60 {
  color: rgba(255, 255, 255, 0.6);
}

.border-white\/20 {
  border-color: rgba(255, 255, 255, 0.2);
}

.border-white\/10 {
  border-color: rgba(255, 255, 255, 0.1);
}

.bg-white\/10 {
  background-color: rgba(255, 255, 255, 0.1);
}

.bg-white\/20 {
  background-color: rgba(255, 255, 255, 0.2);
}

.hover-surface-dark:hover {
  background-color: rgba(15, 23, 42, 0.12);
}

.shadow-dark-soft {
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.08);
}

.hover-shadow-dark:hover {
  box-shadow: 0 20px 42px rgba(15, 23, 42, 0.08);
}

.hover-shadow-dark-sm:hover {
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.08);
}

.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.no-scrollbar::-webkit-scrollbar {
  display: none;
}

.carousel-control:disabled {
  opacity: 0.32;
  pointer-events: none;
}

.text-\[10px\] {
  font-size: 0.75rem !important;
  line-height: 1rem !important;
}

.text-\[11px\] {
  font-size: 0.8125rem !important;
  line-height: 1.125rem !important;
}

.text-xs {
  font-size: 0.875rem !important;
  line-height: 1.25rem !important;
}

.text-sm {
  font-size: 1rem !important;
  line-height: 1.5rem !important;
}

.text-base {
  font-size: 1.125rem !important;
  line-height: 1.75rem !important;
}

.text-lg {
  font-size: 1.25rem !important;
  line-height: 1.75rem !important;
}

.text-xl {
  font-size: 1.5rem !important;
  line-height: 2rem !important;
}

.text-2xl {
  font-size: 1.875rem !important;
  line-height: 2.25rem !important;
}

.text-3xl {
  font-size: 2.25rem !important;
  line-height: 2.5rem !important;
}

.text-4xl {
  font-size: 3rem !important;
  line-height: 1 !important;
}

.text-5xl {
  font-size: 3.75rem !important;
  line-height: 1 !important;
}

@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(22px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-up {
  animation: fadeUp 0.7s ease-out both;
}

.fade-up-1 {
  animation: fadeUp 0.7s 0.12s ease-out both;
}

.fade-up-2 {
  animation: fadeUp 0.7s 0.24s ease-out both;
}

.fade-up-3 {
  animation: fadeUp 0.7s 0.38s ease-out both;
}

.fade-up-4 {
  animation: fadeUp 0.7s 0.52s ease-out both;
}

input,
textarea,
select {
  outline: none;
}

input:focus,
textarea:focus,
select:focus {
  border-color: #1b6b81;
  box-shadow: 0 0 0 3px rgba(27, 107, 129, 0.1);
}

.motion-reduce *,
.motion-reduce *::before,
.motion-reduce *::after {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
  scroll-behavior: auto !important;
}
