/* Start custom CSS for html, class: .elementor-element-69378dd *//* ════════════════════════════════════════
   SMILE DENTAL LAB — Professional CF7 Form
   Paste → Elementor Section > Advanced > Custom CSS
   ════════════════════════════════════════ */

/* ── Variables ── */
.sdl-pf {
  --pf-blue:    #1a6fe8;
  --pf-blue-2:  #1258bc;
  --pf-green:   #10b981;
  --pf-green-2: #059669;
  --pf-deep:    #0f1e38;
  --pf-muted:   #60758f;
  --pf-icy:     #eef6ff;
  --pf-border:  rgba(26,111,232,0.16);
  --pf-radius:  14px;
  --pf-gap:     16px;
  width: 100%;
  display: grid;
  gap: var(--pf-gap);
}

/* ── Grid Rows ── */
.sdl-pf__row-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--pf-gap);
}
.sdl-pf__row-3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--pf-gap);
}

/* ── Field wrapper ── */
.sdl-pf__field {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

/* ── Labels ── */
.sdl-pf__label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--pf-deep) !important;
  letter-spacing: -0.01em !important;
  margin: 0 !important;
  display: block !important;
}
.sdl-pf__label span {
  color: #e5534b;
  margin-left: 2px;
}

/* ── Inputs & Textarea ── */
.sdl-pf .wpcf7-form-control:not(.wpcf7-radio):not(.wpcf7-checkbox):not(.wpcf7-submit),
.sdl-pf input[type="text"],
.sdl-pf input[type="tel"],
.sdl-pf input[type="email"],
.sdl-pf textarea {
  width: 100% !important;
  padding: 13px 16px !important;
  background: #ffffff !important;
  border: 1.5px solid var(--pf-border) !important;
  border-radius: var(--pf-radius) !important;
  font-size: 14px !important;
  color: var(--pf-deep) !important;
  font-family: inherit !important;
  outline: none !important;
  box-shadow: 0 2px 8px rgba(26,111,232,0.05) !important;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s !important;
  box-sizing: border-box !important;
  resize: vertical !important;
  line-height: 1.5 !important;
}
.sdl-pf input[type="text"]::placeholder,
.sdl-pf input[type="tel"]::placeholder,
.sdl-pf input[type="email"]::placeholder,
.sdl-pf textarea::placeholder {
  color: #a8bdd0 !important;
  font-size: 13px !important;
}
.sdl-pf input[type="text"]:focus,
.sdl-pf input[type="tel"]:focus,
.sdl-pf input[type="email"]:focus,
.sdl-pf textarea:focus {
  border-color: var(--pf-blue) !important;
  background: var(--pf-icy) !important;
  box-shadow: 0 0 0 4px rgba(26,111,232,0.10) !important;
}
.sdl-pf textarea {
  min-height: 120px !important;
}

/* ── CF7 default <p> strip ── */
.sdl-pf .wpcf7-form > p,
.sdl-pf p {
  margin: 0 !important;
}
.sdl-pf span.wpcf7-form-control-wrap {
  display: block !important;
}

/* ── Pills wrapper ── */
.sdl-pf__pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
.sdl-pf__pills .wpcf7-radio,
.sdl-pf__pills .wpcf7-checkbox {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

/* ── Radio Pills ── */
.sdl-pf__pills .wpcf7-radio .wpcf7-list-item,
.sdl-pf__pills .wpcf7-checkbox .wpcf7-list-item {
  margin: 0 !important;
}
.sdl-pf__pills .wpcf7-radio .wpcf7-list-item label,
.sdl-pf__pills .wpcf7-checkbox .wpcf7-list-item label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 9px 18px !important;
  border-radius: 999px !important;
  border: 1.5px solid var(--pf-border) !important;
  background: #ffffff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--pf-deep) !important;
  cursor: pointer !important;
  transition: all 0.18s ease !important;
  white-space: nowrap !important;
  margin: 0 !important;
  line-height: 1 !important;
  user-select: none !important;
}
.sdl-pf__pills .wpcf7-list-item label:hover {
  border-color: var(--pf-blue) !important;
  background: var(--pf-icy) !important;
  color: var(--pf-blue) !important;
}

/* Radio: selected state */
.sdl-pf__pills .wpcf7-radio .wpcf7-list-item:has(input:checked) label {
  background: linear-gradient(135deg, var(--pf-blue), var(--pf-blue-2)) !important;
  border-color: var(--pf-blue-2) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 16px rgba(26,111,232,0.28) !important;
}

/* Checkbox: selected state */
.sdl-pf__pills .wpcf7-checkbox .wpcf7-list-item:has(input:checked) label {
  background: linear-gradient(135deg, var(--pf-green), var(--pf-green-2)) !important;
  border-color: var(--pf-green-2) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 16px rgba(16,185,129,0.26) !important;
}

/* Hide native radio/checkbox dots */
.sdl-pf__pills input[type="radio"],
.sdl-pf__pills input[type="checkbox"] {
  display: none !important;
}

/* ── Submit Button ── */
.sdl-pf__submit {
  display: flex !important;
  justify-content: center !important;
  margin-top: 6px !important;
}
.sdl-pf__btn,
.sdl-pf input[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px 52px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--pf-blue), var(--pf-blue-2)) !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  border: none !important;
  cursor: pointer !important;
  box-shadow: 0 14px 36px rgba(26,111,232,0.32) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  font-family: inherit !important;
  min-width: 220px !important;
}
.sdl-pf__btn:hover,
.sdl-pf input[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 20px 48px rgba(26,111,232,0.42) !important;
}

/* ── Validation ── */
.sdl-pf .wpcf7-not-valid-tip {
  font-size: 12px !important;
  color: #e5534b !important;
  margin-top: 5px !important;
  display: block !important;
  font-weight: 600 !important;
}
.sdl-pf .wpcf7-not-valid {
  border-color: #e5534b !important;
  background: #fff8f7 !important;
}

/* ── Response Banner ── */
.sdl-pf .wpcf7-response-output {
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 14px 20px !important;
  margin-top: 4px !important;
  border: 1.5px solid !important;
  text-align: center !important;
}
.sdl-pf .wpcf7-mail-sent-ok {
  background: #ecfdf5 !important;
  border-color: var(--pf-green) !important;
  color: var(--pf-green-2) !important;
}
.sdl-pf .wpcf7-mail-sent-ng {
  background: #fff1f0 !important;
  border-color: #e5534b !important;
  color: #c0392b !important;
}

/* ── Mobile ── */
@media (max-width: 768px) {
  .sdl-pf__row-2,
  .sdl-pf__row-3 {
    grid-template-columns: 1fr !important;
  }
  .sdl-pf__btn,
  .sdl-pf input[type="submit"] {
    width: 100% !important;
  }
}/* End custom CSS */