.connecto-hero-form .jet-form-builder,
.connecto-contact-form-shell .jet-form-builder,
.connecto-managed-form-shell .jet-form-builder { max-width:none; }
.connecto-hero-form .jet-form-builder-row,
.connecto-contact-form-shell .jet-form-builder-row,
.connecto-managed-form-shell .jet-form-builder-row { margin-bottom:.75rem; }
.connecto-hero-form .jet-form-builder__label,
.connecto-contact-form-shell .jet-form-builder__label,
.connecto-managed-form-shell .jet-form-builder__label { display:block;margin:0 0 .375rem;padding-left:.25rem;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--color-foreground);opacity:.65; }
.connecto-hero-form .jet-form-builder .jet-form-builder__field,
.connecto-contact-form-shell .jet-form-builder .jet-form-builder__field,
.connecto-managed-form-shell .jet-form-builder .jet-form-builder__field { width:100%;min-height:var(--height-input);padding:0 1rem;border:var(--border-width-input) solid var(--border-color-input);border-radius:var(--radius-button);background:var(--color-surface-subtle);color:var(--color-foreground);font-weight:600; }
.connecto-hero-form .jet-form-builder .jet-form-builder__field::placeholder,
.connecto-contact-form-shell .jet-form-builder .jet-form-builder__field::placeholder,
.connecto-managed-form-shell .jet-form-builder .jet-form-builder__field::placeholder { color:var(--color-foreground);opacity:.6; }
.connecto-hero-form .jet-form-builder textarea.jet-form-builder__field,
.connecto-contact-form-shell .jet-form-builder textarea.jet-form-builder__field,
.connecto-managed-form-shell .jet-form-builder textarea.jet-form-builder__field { min-height:calc(var(--height-input) * 1.45);padding-top:.75rem;line-height:1.5;resize:vertical; }
.connecto-hero-form .jet-form-builder .jet-form-builder__submit,
.connecto-contact-form-shell .jet-form-builder .jet-form-builder__submit,
.connecto-managed-form-shell .jet-form-builder .jet-form-builder__submit { width:100%;min-height:var(--height-btn);padding:.75rem 1rem;border-radius:var(--radius-button);background:var(--color-accent);color:var(--color-on-primary);text-align:center;justify-content:center;align-items:center;line-height:1.2;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:normal;cursor:pointer; }
.connecto-hero-form .jet-form-builder .jet-form-builder__submit:hover,
.connecto-hero-form .jet-form-builder .jet-form-builder__submit:focus,
.connecto-contact-form-shell .jet-form-builder .jet-form-builder__submit:hover,
.connecto-contact-form-shell .jet-form-builder .jet-form-builder__submit:focus,
.connecto-managed-form-shell .jet-form-builder .jet-form-builder__submit:hover,
.connecto-managed-form-shell .jet-form-builder .jet-form-builder__submit:focus { background:var(--color-accent-hover); }
.connecto-hero-form .jet-form-builder .jet-form-builder-message,
.connecto-contact-form-shell .jet-form-builder .jet-form-builder-message,
.connecto-managed-form-shell .jet-form-builder .jet-form-builder-message { padding:.75rem 1rem;border-radius:var(--radius-card);background:var(--color-surface-subtle);color:var(--color-foreground);font-weight:700; }

.connecto-review-flow { padding-top:clamp(2.5rem,6vw,5rem);text-align:center; }
.connecto-review-title { margin:0 0 2rem; }
.connecto-review-step[hidden],
.connecto-managed-form-shell .jet-form-builder-row[hidden] { display:none; }
.connecto-review-step-label { margin:0 0 .75rem;color:var(--color-accent);font-size:.75rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase; }
.connecto-review-prompt { margin:1.5rem 0 .75rem; }
.connecto-rating-picker { display:flex;flex-direction:column;align-items:center;gap:.75rem;margin:0 auto;max-width:30rem; }
.connecto-rating-picker button { display:flex;align-items:center;justify-content:center;gap:.8rem;width:100%;min-height:4.5rem;padding:.65rem 1rem;border:var(--border-width-input) solid var(--border-color-input);border-radius:var(--radius-button);background:var(--color-surface-subtle);color:var(--color-foreground);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease; }
.connecto-rating-picker button:hover,
.connecto-rating-picker button:focus-visible { border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,transparent);transform:translateY(-1px);outline:0; }
.connecto-rating-picker button[aria-pressed="true"] { border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface)); }
.connecto-rating-stars { color:#f5a623;font-size:clamp(1.65rem,5vw,2.4rem);letter-spacing:.06em;line-height:1; }
.connecto-rating-caption { min-width:4.6rem;font-size:.95rem;font-weight:800;text-align:left; }
.connecto-review-response { min-height:1.5rem;margin-top:1rem;font-weight:700; }
.connecto-review-feedback-step { margin-top:2rem;text-align:left;scroll-margin-top:2rem; }
.connecto-review-feedback-step .connecto-review-step-label,
.connecto-review-feedback-step>h2,
.connecto-review-feedback-step>p { text-align:center; }
.connecto-review-google-alternative { display:flex;align-items:center;justify-content:center;gap:.35rem;margin-top:1.5rem;text-align:center; }
.connecto-review-google-alternative a { color:var(--color-accent);font-weight:800;text-decoration:underline;text-underline-offset:.2em; }

.connecto-appointment-form-shell .jet-form-builder__label { margin-bottom:.5rem;padding-left:0;font-size:.875rem;line-height:1.35;letter-spacing:.08em;opacity:.82; }
.connecto-appointment-form-shell .jet-form-builder-row { display:block; }
.connecto-appointment-form-shell .jet-form-builder__label,
.connecto-appointment-form-shell .jet-form-builder__field-wrap { width:100%;max-width:none; }
.connecto-appointment-form-shell .jet-form-builder .jet-form-builder__field { font-size:1rem;cursor:text; }
.connecto-appointment-form-shell .jet-form-builder input[name="preferred_date"],
.connecto-appointment-form-shell .jet-form-builder input[name="preferred_time"],
.connecto-appointment-form-shell .jet-form-builder .connecto-picker-input { cursor:pointer; }
.connecto-appointment-form-shell .jet-form-builder .jet-form-builder__field:focus,
.connecto-appointment-form-shell .jet-form-builder .connecto-picker-input:focus { border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,transparent);outline:0; }
.connecto-appointment-form-shell .jet-form-builder-messages-wrap { grid-column:1/-1; }

.flatpickr-calendar.connecto-appointment-picker { width:min(22rem,calc(100vw - 2rem));padding:.75rem;border:var(--border-width-card) solid var(--border-color-card);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-float);font-family:var(--font-ui);font-size:1rem; }
.flatpickr-calendar.connecto-appointment-picker::before,
.flatpickr-calendar.connecto-appointment-picker::after { display:none; }
.connecto-appointment-picker .flatpickr-months,
.connecto-appointment-picker .flatpickr-month { height:3rem; }
.connecto-appointment-picker .flatpickr-current-month { height:3rem;padding-top:.55rem;font-size:1.05rem; }
.connecto-appointment-picker .flatpickr-current-month .flatpickr-monthDropdown-months,
.connecto-appointment-picker .flatpickr-current-month input.cur-year { font-weight:800; }
.connecto-appointment-picker .flatpickr-weekdays { height:2.25rem; }
.connecto-appointment-picker span.flatpickr-weekday { color:var(--color-foreground);font-size:.8rem; }
.connecto-appointment-picker .flatpickr-rContainer,
.connecto-appointment-picker .flatpickr-days,
.connecto-appointment-picker .dayContainer { width:100%;max-width:none;min-width:0; }
.connecto-appointment-picker .flatpickr-day { flex-basis:14.2857%;max-width:none;height:2.65rem;border-radius:var(--radius-button);line-height:2.65rem;color:var(--color-foreground); }
.connecto-appointment-picker .flatpickr-day:hover,
.connecto-appointment-picker .flatpickr-day:focus { border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,var(--color-surface)); }
.connecto-appointment-picker .flatpickr-day.selected { border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-primary); }
.flatpickr-calendar.connecto-appointment-time-picker { width:min(20rem,calc(100vw - 2rem)); }
.connecto-appointment-picker .flatpickr-time { height:4.25rem;max-height:4.25rem;border-top:0; }
.connecto-appointment-picker .flatpickr-time input,
.connecto-appointment-picker .flatpickr-time .flatpickr-am-pm { color:var(--color-foreground);font-size:1.2rem;font-weight:800; }
.connecto-appointment-picker .flatpickr-time input:hover,
.connecto-appointment-picker .flatpickr-time input:focus,
.connecto-appointment-picker .flatpickr-time .flatpickr-am-pm:hover,
.connecto-appointment-picker .flatpickr-time .flatpickr-am-pm:focus { background:var(--color-surface-subtle); }

@media (min-width:768px) {
  .connecto-appointment-form-shell .jet-form-builder { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.25rem;row-gap:1rem; }
  .connecto-appointment-form-shell .jet-form-builder-row { margin-bottom:0; }
  .connecto-appointment-form-shell .field-type-textarea-field,
  .connecto-appointment-form-shell .field-type-submit-field { grid-column:1/-1; }
}
@media (max-width:480px) {
  .connecto-rating-picker button { min-height:4rem;gap:.55rem;padding-inline:.65rem; }
  .connecto-rating-stars { font-size:clamp(1.4rem,8vw,2rem); }
}
