:root {
  --text-default-color: #333333;
}
html {
  font-size: 16px;
}
body {
  font-size: 1rem;
  color: var(--text-default-color);
  line-height: 1.5;
}

p {
  margin-block-end: 0.5em;
}
p:last-child {
  margin-bottom: 0;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  font-weight: bold;
  line-height: 1.2;
}

h1,
.h1 {
  font-size: clamp(2.25rem, 4.2824vw, 4.625rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.01em;
}

h2,
.h2 {
  font-size: clamp(2rem, 3.4722vw, 3.75rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
}

h3,
.h3 {
  font-size: clamp(1.75rem, 2.3148vw, 2.5rem);
  font-weight: 600;
  line-height: 1.2;
}

h4,
.h4 {
  font-size: clamp(1.5rem, 1.7361vw, 1.875rem);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.01em;
}

h5,
.h5 {
  font-size: clamp(1.25rem, 1.3889vw, 1.5rem);
  font-weight: 400;
}

h6,
.h6 {
  font-size: 0.9375rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}

.text-lg {
  font-size: clamp(1.0625rem, 1.0995vw, 1.1875rem);
  line-height: 1.3;
}

.text-base {
  font-size: 1rem;
  line-height: 1.3;
}

.text-sm {
  font-size: 0.875rem;
}

.text-button {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.1;
}

.text-button-lg {
  font-size: clamp(1.0625rem, 1.0995vw, 1.1875rem);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.btn {
  display: inline-block;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.1;
  padding: 0.9375rem 1.875rem;
  color: #ffffff;
  background-color: var(--primary-color);
  border-radius: 6.25rem;
}
.btn:hover {
  color: #ffffff;
  background-color: var(--secondary-color);
}

.btn.btn-large {
  font-size: clamp(1.0625rem, 1.0995vw, 1.1875rem);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.text-default {
  color: var(--text-default-color);
}

.text-primary {
  color: var(--primary-color);
}

.text-secondary {
  color: var(--secondary-color);
}

.text-accent {
  color: var(--accent-color);
}

.text-green {
  color: var(--green-color);
}
.visible-hidden {
  visibility: hidden;
}
.opacity-0 {
  opacity: 0;
}
.opacity-60 {
  opacity: 60%;
}
.opacity-70 {
  opacity: 70%;
}
.opacity-80 {
  opacity: 80%;
}
/*  */
.px-0 {
  padding-inline: 0 !important;
}

.my-0 {
  margin-block: 0 !important;
}

.fw-thin {
  font-weight: 100;
}
.fw-extralight {
  font-weight: 200;
}
.fw-light {
  font-weight: 300;
}
.fw-normal {
  font-weight: 400;
}
.fw-medium {
  font-weight: 500;
}
.fw-semibold {
  font-weight: 600;
}
.fw-bold {
  font-weight: 700;
}
.fw-extrabold {
  font-weight: 800;
}
.fw-black {
  font-weight: 900;
}

.flex-full {
  flex: 1 !important;
}

.flex-full {
  flex: 1 !important;
}

.text-white,
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white a {
  color: #ffffff !important;
}

input[type="date"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
select,
textarea {
  background-color: transparent;
  border: 1px solid;
  border-radius: 0;
  padding: 8px 15px;
  font-size: clamp(16px,1.52778vw,22px);
}

.form--style-light {
  color: #ffffff;
}
.form--style-light input[type="date"],
.form--style-light input[type="email"],
.form--style-light input[type="number"],
.form--style-light input[type="password"],
.form--style-light input[type="search"],
.form--style-light input[type="tel"],
.form--style-light input[type="text"],
.form--style-light input[type="url"],
.form--style-light select,
.form--style-light textarea {
  background-color: transparent;
  color: #ffffff;
}

.form--style-light input[type="date"]::placeholder,
.form--style-light input[type="email"]::placeholder,
.form--style-light input[type="number"]::placeholder,
.form--style-light input[type="password"]::placeholder,
.form--style-light input[type="search"]::placeholder,
.form--style-light input[type="tel"]::placeholder,
.form--style-light input[type="text"]::placeholder,
.form--style-light input[type="url"]::placeholder,
.form--style-light select::placeholder,
.form--style-light textarea::placeholder {
  color: #ec9601;
}

.hidden_label .gfield_label {
  display: none;
}

.gform_fields .gfield {
  margin-block-end: 6px;
}

textarea.textarea.small {
  max-height: 80px;
}

[type="button"],
[type="submit"] {
  width: 100%;
  padding: 10px;
  background-color: #ffffff;
  color: #ec9601;
  border-radius: 0;
  border: none;
  font-size: clamp(16px,1.3889vw,20px);
}

[type="button"]:hover,
[type="submit"]:hover {
  background-color: #ec9601;
  color: #ffffff;
}

.gform_validation_errors {
  display: none;
}
.gfield_validation_message {
  font-size: .875rem;
  color: rgb(255, 54, 54);
}
