.clfc-rooted-form {
  background: linear-gradient(145deg, #fff, #fff8ea);
  border: 1px solid rgba(233, 217, 195, .9);
  border-radius: 34px;
  box-shadow: 0 22px 60px rgba(37, 24, 16, .12);
  display: grid;
  gap: 16px;
  padding: clamp(24px, 4vw, 36px);
  color: #201b1b;
}
.clfc-rooted-form h3 {
  font-family: Georgia, serif;
  font-size: clamp(1.9rem, 3.6vw, 3.1rem);
  letter-spacing: -.045em;
  line-height: 1;
  margin: 4px 0 0;
}
.clfc-rooted-form p { margin: 0; color: #6b5d54; line-height: 1.7; }
.clfc-rooted-eyebrow {
  color: #2c7b6c !important;
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.clfc-rooted-form label {
  display: grid;
  gap: 8px;
  font-weight: 800;
}
.clfc-rooted-form input,
.clfc-rooted-form textarea {
  border: 1px solid rgba(32, 27, 27, .14);
  border-radius: 18px;
  font: inherit;
  padding: 13px 14px;
  width: 100%;
}
.clfc-rooted-form input:focus,
.clfc-rooted-form textarea:focus {
  border-color: #2c7b6c;
  box-shadow: 0 0 0 4px rgba(44, 123, 108, .12);
  outline: none;
}
.clfc-rooted-form button {
  background: #dc6f4a;
  border: 0;
  border-radius: 999px;
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-weight: 900;
  min-height: 48px;
  padding: 13px 18px;
}
.clfc-rooted-form button[disabled] { cursor: wait; opacity: .7; }
.clfc-rooted-note { color: #2c7b6c !important; font-weight: 800; }
.clfc-rooted-pass-link { align-self: start; background: #dc6f4a; border-radius: 999px; color: #fff !important; display: inline-flex; font-weight: 950; justify-content: center; margin-top: 4px; padding: 13px 18px; text-decoration: none; box-shadow: 0 12px 28px rgba(220,111,74,.22); }
.clfc-rooted-pass-link:hover { filter: brightness(.96); }
.clfc-rooted-confirmation {
  background: #fffaf1;
  border: 1px solid rgba(44, 123, 108, .2);
  border-radius: 22px;
  color: #201b1b;
  display: grid;
  gap: 12px;
  margin-top: 4px;
  padding: 18px;
}
.clfc-rooted-confirmation-title { color: #2c7b6c; display: block; font-size: 1.15rem; }
.clfc-rooted-confirmation-message { color: #4f453e; display: block; font-weight: 700; line-height: 1.55; }
.clfc-rooted-confirmation-code {
  align-self: start;
  background: #fff;
  border: 2px solid #2c7b6c;
  border-radius: 16px;
  color: #201b1b;
  display: inline-block;
  font-size: clamp(1.35rem, 6vw, 2rem);
  font-weight: 950;
  letter-spacing: .08em;
  padding: 12px 16px;
}
.clfc-rooted-confirmation-qr {
  align-self: start;
  background: #fff;
  border: 1px solid #eedfca;
  border-radius: 18px;
  display: inline-grid;
  place-items: center;
  padding: 12px;
  width: max-content;
}
.clfc-rooted-confirmation-qr svg { display: block; height: auto; max-width: min(220px, 65vw); }
.clfc-rooted-confirmation-help { color: #6b5d54; display: block; font-size: .95rem; font-weight: 800; }
.clfc-rooted-loading {
  background: linear-gradient(145deg, #fffaf1, #fff4e3);
  border: 1px solid rgba(44, 123, 108, .16);
  border-radius: 22px;
  color: #201b1b;
  display: grid;
  gap: 12px;
  margin-top: 4px;
  padding: 18px;
}
.clfc-rooted-loading-title { color: #2c7b6c; display: block; font-size: 1.08rem; font-weight: 900; }
.clfc-rooted-loading-message { color: #4f453e; display: block; font-weight: 700; line-height: 1.55; }
.clfc-rooted-loading-dots { align-items: center; display: inline-flex; gap: 8px; }
.clfc-rooted-loading-dots span {
  animation: clfc-rooted-bounce 1.1s infinite ease-in-out;
  background: #dc6f4a;
  border-radius: 999px;
  display: inline-block;
  height: 10px;
  opacity: .55;
  width: 10px;
}
.clfc-rooted-loading-dots span:nth-child(2) { animation-delay: .14s; }
.clfc-rooted-loading-dots span:nth-child(3) { animation-delay: .28s; }
@keyframes clfc-rooted-bounce {
  0%, 80%, 100% { opacity: .35; transform: translateY(0) scale(.92); }
  40% { opacity: 1; transform: translateY(-2px) scale(1); }
}
.clfc-rooted-hp { display: none !important; }
.clfc-rooted-two { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.clfc-rooted-progress { display: flex; gap: 8px; align-items: center; }
.clfc-rooted-progress span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 999px; background: #f4e8d6; color: #6b5d54; font-weight: 900; }
.clfc-rooted-progress span.active { background: #2c7b6c; color: #fff; }
.clfc-rooted-step { display: none; gap: 14px; }
.clfc-rooted-step.active { display: grid; }
.clfc-rooted-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.clfc-rooted-form select { border: 1px solid rgba(32, 27, 27, .14); border-radius: 18px; font: inherit; padding: 13px 14px; width: 100%; background: #fff; }
.clfc-rooted-back { background: #2c7b6c !important; }
@media (max-width: 680px) { .clfc-rooted-two { grid-template-columns: 1fr; } }

.clfc-rooted-form,.clfc-rooted-form *{box-sizing:border-box}.clfc-rooted-form input,.clfc-rooted-form textarea,.clfc-rooted-form select{max-width:100%;min-width:0}.clfc-rooted-form label{min-width:0}.clfc-rooted-form h3{font-size:clamp(1.75rem,2.45vw,2.65rem);line-height:1.02}.clfc-rooted-intro{font-size:.98rem!important}

.clfc-rooted-form[data-submitted="true"] > :not(.clfc-rooted-note) { display: none !important; }
.clfc-rooted-form[data-submitted="true"] { gap: 0; }
.clfc-rooted-form[data-submitted="true"] .clfc-rooted-step,
.clfc-rooted-form[data-submitted="true"] .clfc-rooted-progress,
.clfc-rooted-form[data-submitted="true"] > .eyebrow,
.clfc-rooted-form[data-submitted="true"] > h3,
.clfc-rooted-form[data-submitted="true"] > .form-intro,
.clfc-rooted-form[data-submitted="true"] > .clfc-rooted-eyebrow,
.clfc-rooted-form[data-submitted="true"] > .clfc-rooted-intro,
.clfc-rooted-form[data-submitted="true"] > label:not(.clfc-rooted-note) {
  display: none !important;
}
[data-clfc-rooted-form][data-submitted="true"] .clfc-rooted-step,
[data-clfc-rooted-form][data-submitted="true"] .clfc-rooted-progress,
[data-clfc-rooted-form][data-submitted="true"] > :not(.clfc-rooted-note) {
  display: none !important;
}
[data-clfc-rooted-form][data-submitted="true"] {
  gap: 0 !important;
}
.clfc-rooted-form[data-submitting="true"] button,
.clfc-rooted-form[data-submitting="true"] input,
.clfc-rooted-form[data-submitting="true"] textarea,
.clfc-rooted-form[data-submitting="true"] select {
  pointer-events: none;
}
.clfc-rooted-form[data-submitting="true"] button[type="submit"] {
  background: #c8603f;
  box-shadow: 0 12px 28px rgba(220,111,74,.22);
}
