/* Quote form — Figma: Teklif formu (111:7810 · mobile 115:1014), Form header (259:6602),
   Benefit item (259:6521). Fields use the form-field component.
   States (Figma 358:61917 · tablet 362:18137–18269): sending (fields disabled, button spinner),
   failed (Form alert 259:6632 under the header, button "Tekrar dene"), sent (Success panel 259:6650). */

/* ---------- Benefit item ---------- */
.benefit-item {
  display: flex;
  align-items: flex-start;
  gap: var(--space-10);
  font-size: 15px;
  line-height: 1.5;
}
.benefit-item__check { font-weight: 600; color: var(--color-brand-primary); }
.benefit-item__mobile { flex: 1 1 0; font-weight: 500; color: var(--color-text-primary); }
.benefit-item__title,
.benefit-item__text { display: none; }

@media (min-width: 1024px) {
  .benefit-item {
    gap: var(--space-16);
    padding-block: var(--space-14);
    border-top: 1px solid var(--color-border-divider);
    letter-spacing: -0.002em;
  }
  .benefit-item__check,
  .benefit-item__mobile { display: none; }
  .benefit-item__title {
    display: block;
    flex: 0 0 120px;
    line-height: 1.3;
    font-weight: 600;
    color: var(--color-text-link);
  }
  .benefit-item__text { display: block; flex: 1 1 0; line-height: 1.55; color: var(--color-text-secondary); }
}

/* ---------- Form card ---------- */
.quote-form {
  padding: var(--space-24) var(--space-16);
  border-radius: var(--radius-lg);
  background: var(--color-brand-tint);
}
.quote-form__form { display: flex; flex-direction: column; gap: var(--space-16); }
.quote-form__row { display: flex; flex-direction: column; gap: var(--space-16); }
.quote-form__row > * { flex: 1 1 0; min-width: 0; }

.quote-form__head { display: flex; flex-direction: column; gap: var(--space-4); }
.quote-form__title { font-size: 18px; line-height: 1.5; font-weight: 600; color: var(--color-text-primary); }
.quote-form__lead { font-size: 14px; line-height: 1.5; color: var(--color-text-secondary); }
.quote-form__privacy { font-size: 12px; line-height: 1.5; font-weight: 500; color: var(--color-text-secondary); }

/* Sending: fields use the form-field disabled look, the button dims a little */
.quote-form__submit[aria-busy="true"] { opacity: 0.72; }

/* Failed */
.quote-form__alert {
  display: flex;
  align-items: flex-start;
  gap: var(--space-12);
  padding: var(--space-14) var(--space-16);
  border: 1px solid var(--color-feedback-error-border);
  border-radius: var(--radius-md);
  background: var(--color-feedback-error-tint);
  font-size: 15px;
  line-height: 1.5;
}
.quote-form__alert[hidden] { display: none; }
.quote-form__alert-icon { flex: 0 0 auto; font-weight: 600; color: var(--color-feedback-error); }
.quote-form__alert-text { display: flex; flex: 1 1 auto; flex-direction: column; gap: 2px; min-width: 0; }
.quote-form__alert-title { font-weight: 600; color: var(--color-text-primary); }
.quote-form__alert-message { font-size: 14px; color: var(--color-text-secondary); }

/* Sent: the panel takes the form's place (mobile / tablet: py 40, 56 px icon) */
.quote-form__success {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-14);
  padding-block: var(--space-40);
  text-align: center;
  outline: none;
  animation: quote-success-in 600ms var(--ease-out-soft);
}
.quote-form__success[hidden] { display: none; }
.quote-form__success-icon { width: 56px; height: 56px; }
.quote-form__success-title { font-size: 20px; line-height: 1.2; font-weight: 600; letter-spacing: -0.02em; color: var(--color-text-primary); }
.quote-form__success-text { font-size: 15px; line-height: 1.5; color: var(--color-text-secondary); }
@keyframes quote-success-in {
  from { opacity: 0; transform: translate3d(0, 12px, 0); }
}

/* Tablet (Figma: Anasayfa — tablet 768 › Teklif formu): paired fields side by side */
@media (min-width: 768px) and (max-width: 1023px) {
  .quote-form { padding: var(--space-32); border-radius: 20px; }
  .quote-form__row { flex-direction: row; }
}

@media (min-width: 1024px) {
  .quote-form {
    padding: var(--space-40);
    border-radius: 28px;
  }
  .quote-form__form { gap: var(--space-20); }
  .quote-form__row { flex-direction: row; }
  .quote-form__row--tablet { flex-direction: column; gap: var(--space-20); }
  .quote-form__head { gap: var(--space-6); }
  .quote-form__title { font-size: 22px; line-height: normal; }
  .quote-form__lead { font-size: 15px; line-height: normal; }
  .quote-form__privacy { line-height: 1.4; }
  .quote-form__submit { height: 56px; font-size: 17px; }

  /* Sent: the card keeps the form's height, the panel sits in its middle */
  .quote-form.is-sent { display: flex; align-items: center; justify-content: center; min-height: var(--quote-form-height, auto); }
  .quote-form__success { gap: var(--space-16); padding: 0 var(--space-40); }
  .quote-form__success-icon { width: 64px; height: 64px; }
  .quote-form__success-title { font-size: 28px; line-height: normal; }
  .quote-form__success-text { font-size: 17px; }
}

@media (prefers-reduced-motion: reduce) {
  .quote-form__success { animation: none; }
}
