
/**
* CSS Modal
* http://drublic.github.com/css-modal
*
* @author Hans Christian Reinl - @drublic
*/

/**
* CSS Modal Configuration
* http://drublic.github.com/css-modal
*
* @author Hans Christian Reinl - @drublic
*/

html {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}


:root {
  --primary: #0F5F7A;
  --primary-dark: #073047;
  --accent: #7EE2B8;
  --accent-dark: #22A879;
  --text-dark: #102331;
  --soft-bg: #F3FAF8;
  --white: #ffffff;
}

body {
  font-family: "Josefin Sans", sans-serif;
  color: var(--text-dark);
}

.site-header,
.css-19eb01s,
.css-hywctv {
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 8px 28px rgba(7, 48, 71, 0.12) !important;
  backdrop-filter: blur(10px);
}

.header-logo-element {
  width: 88px !important;
}

.lp-button-react,
.css-uj3hps {
  background: linear-gradient(135deg, var(--primary), var(--accent-dark)) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 15px 26px !important;
  box-shadow: 0 12px 28px rgba(15, 95, 122, 0.28) !important;
  letter-spacing: 0.4px !important;
  text-transform: uppercase;
  transition: all 0.25s ease;
}

.lp-button-react:hover,
.css-uj3hps:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(15, 95, 122, 0.36) !important;
}

.headline {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 800 !important;
  letter-spacing: -0.8px;
}

.quiz-container {
  margin: 30px auto 0 !important;
  padding: 28px !important;
  border-radius: 28px !important;
  min-height: auto !important;
  height: auto !important;
}

.form-control,
.address-field {
  height: 62px !important;
  border-radius: 16px !important;
  border: 2px solid rgba(15, 95, 122, 0.18) !important;
  background: #F8FCFB !important;
  color: var(--text-dark) !important;
  font-family: "Josefin Sans", sans-serif;
  font-size: 17px !important;
  padding: 0 20px !important;
  box-shadow: none !important;
}

.form-control:focus,
.address-field:focus {
  border-color: var(--accent-dark) !important;
  box-shadow: 0 0 0 4px rgba(126, 226, 184, 0.22) !important;
  outline: none !important;
}

.question-answer {
  background: #ffffff !important;
  border: 1.5px solid rgba(15, 95, 122, 0.16) !important;
  border-radius: 18px !important;
  padding: 17px 20px !important;
  margin-bottom: 12px !important;
  box-shadow: 0 10px 28px rgba(7, 48, 71, 0.08) !important;
  transition: all 0.22s ease;
}

.question-answer:hover {
  border-color: var(--accent-dark) !important;
  transform: translateY(-2px);
  background: var(--soft-bg) !important;
}

.question-answer label {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 700 !important;
  color: var(--primary-dark) !important;
}

.H2-123,
.node-title {
  font-family: "Josefin Sans", sans-serif;
  color: var(--primary-dark) !important;
  font-weight: 800 !important;
  letter-spacing: -0.4px;
}

.H6-123 {
  color: #5E7180 !important;
  font-family: "Josefin Sans", sans-serif;
  font-weight: 500 !important;
}

.next-btn-image {
  filter: hue-rotate(120deg) saturate(0.9) brightness(0.95);
  transition: all 0.25s ease;
}

.next-btn-image:hover {
  transform: translateY(-2px) scale(1.02);
}

.css-1qkamst {
  background: #F3FAF8 !important;
}

.lp-nav__link {
  font-family: "Josefin Sans", sans-serif;
  color: var(--primary-dark) !important;
  font-weight: 700 !important;
}

.address-autocomplete-wrap {
  position: relative;
  width: 100%;
}

.address-suggestions {
  position: absolute;
  top: 120px;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid rgba(15, 95, 122, 0.18);
  border-radius: 14px;
  box-shadow: 0 14px 35px rgba(7, 48, 71, 0.18);
  z-index: 99999;
  overflow: hidden;
  display: none;
  text-align: left;
}

.address-suggestion-item {
  padding: 13px 16px;
  cursor: pointer;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 14px;
  color: #102331;
  border-bottom: 1px solid #eef4f3;
}

.address-suggestion-item:hover {
  background: #F3FAF8;
}

.address-error {
  margin-top: 8px;
  color: #d93025;
  font-size: 13px;
  font-weight: 600;
  font-family: "Manrope", Arial, sans-serif;
  text-align: left;
}

/* @media only screen and (max-width: 600px) {
  .node-form-168677 {
    width: 115% !important;
  }
} */