/* ===== Bizim Eller — Modern CF7 & Phone Input Styles ===== */

/* Typography & General Base */
.bizim-iletisim-h1 { 
  letter-spacing: -0.02em; 
}
.bizim-iletisim-hero-sub { 
  opacity: 0.85; 
}

.bizim-iletisim-form-karti { 
  transition: transform 0.25s ease, box-shadow 0.25s ease; 
}
.bizim-iletisim-form-karti:hover { 
  box-shadow: 0 20px 40px -15px rgba(15, 23, 42, 0.12); 
}

/* CF7 Grid Layout */
.bizim-cf7-wrap .wpcf7, 
.bizim-cf7-wrap .wpcf7 form { 
  margin: 0; 
}

.bizim-cf7 .bizim-cf7-row { 
  display: grid; 
  grid-template-columns: 1fr 1fr; 
  gap: 20px; 
  margin-bottom: 20px; 
}

.bizim-cf7 .bizim-cf7-field { 
  display: flex; 
  flex-direction: column; 
  gap: 6px; 
  margin-bottom: 20px; 
}

.bizim-cf7 .bizim-cf7-row .bizim-cf7-field { 
  margin-bottom: 0; 
}

.bizim-cf7 .bizim-cf7-field--full { 
  margin-bottom: 24px; 
}

/* Labels */
.bizim-cf7-label { 
  font-family: 'Kanit', sans-serif; 
  font-weight: 500; 
  font-size: 14px; 
  color: var(--bricks-color-a56685, #334155); 
  display: flex; 
  align-items: center; 
  gap: 6px; 
}

.bizim-cf7-label .req { 
  color: #ef4444; 
  font-weight: 700; 
}

.bizim-cf7-label .opt { 
  color: #94a3b8; 
  font-weight: 400; 
  font-size: 12px; 
}

/* Form Inputs (Text, Email, Tel, Textarea) */
.bizim-cf7 input.bizim-cf7-input, 
.bizim-cf7 textarea.bizim-cf7-input { 
  width: 100%; 
  box-sizing: border-box; 
  background: var(--bricks-color-31a009, #ffffff); 
  border: 1px solid var(--bricks-color-465d1d, #cbd5e1); 
  border-radius: 10px; 
  padding: 12px 16px; 
  font-family: 'Kanit', sans-serif; 
  font-weight: 400; 
  font-size: 15px; 
  color: var(--bricks-color-a56685, #1e293b); 
  line-height: 1.5; 
  transition: all 0.2s ease-in-out; 
  -webkit-appearance: none; 
  appearance: none; 
}

.bizim-cf7 .bizim-cf7-textarea { 
  min-height: 140px; 
  resize: vertical; 
}

.bizim-cf7 .bizim-cf7-input::placeholder { 
  color: #94a3b8; 
  opacity: 1; 
}

.bizim-cf7 .bizim-cf7-input:hover { 
  border-color: var(--bricks-color-e44a9b, #94a3b8); 
}

.bizim-cf7 .bizim-cf7-input:focus { 
  outline: none; 
  border-color: var(--bricks-color-e44a9b, #2563eb); 
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12); 
}

/* Validation Styling */
.bizim-cf7 .bizim-cf7-input.bizim-valid { 
  border-color: #10b981; 
}

.bizim-cf7 .wpcf7-not-valid { 
  border-color: #ef4444 !important; 
  box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.12) !important; 
}

.bizim-cf7 .wpcf7-not-valid-tip { 
  color: #ef4444; 
  font-family: 'Kanit', sans-serif; 
  font-size: 12.5px; 
  font-weight: 500; 
  margin-top: 4px; 
  display: block; 
}

/* =========================================================
   FIXED: PHONE INPUT (intl-tel-input)
   ========================================================= */
.bizim-cf7 .iti { 
  width: 100%; 
  display: block; 
  position: relative; 
}

/* Pushes input text to the right so it doesn't overlap the flag */
.bizim-cf7 .iti input.bizim-cf7-input { 
  padding-left: 52px !important; 
}

/* Flag Trigger Box inside input */
.bizim-cf7 .iti__selected-flag { 
  border-radius: 10px 0 0 10px; 
  padding: 0 8px 0 12px; 
  background-color: transparent; 
  transition: background-color 0.2s ease; 
}

.bizim-cf7 .iti__selected-flag:hover { 
  background-color: rgba(0, 0, 0, 0.04); 
}

/* Country Selector Dropdown Menu */
.bizim-cf7 .iti__country-list { 
  font-family: 'Kanit', sans-serif; 
  border-radius: 12px; 
  border: 1px solid #e2e8f0; 
  box-shadow: 0 12px 30px -5px rgba(15, 23, 42, 0.18); 
  z-index: 50; 
  margin-top: 6px; 
  padding: 6px 0; 
  max-height: 220px; 
  overflow-y: auto; 
  background: #ffffff; 
}

.bizim-cf7 .iti__country { 
  padding: 8px 12px; 
  font-size: 14px; 
  color: #334155; 
  transition: background-color 0.15s ease; 
}

.bizim-cf7 .iti__country:hover, 
.bizim-cf7 .iti__country.iti__highlight { 
  background-color: #f1f5f9; 
  color: #0f172a; 
}

.bizim-cf7 .iti__dial-code { 
  color: #64748b; 
}

/* Submit Button */
.bizim-cf7 .bizim-cf7-submit { 
  margin-top: 4px; 
}

.bizim-cf7 .bizim-cf7-btn { 
  width: 100%; 
  cursor: pointer; 
  border: 0; 
  background: var(--bricks-color-e44a9b, #2563eb); 
  color: #ffffff; 
  font-family: 'Kanit', sans-serif; 
  font-weight: 600; 
  font-size: 16px; 
  padding: 14px 24px; 
  border-radius: 10px; 
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.2); 
  transition: all 0.2s ease; 
	text-align:center;
}

.bizim-cf7 .bizim-cf7-btn:hover { 
  transform: translateY(-1px); 
  box-shadow: 0 6px 16px rgba(37, 99, 235, 0.3); 
  filter: brightness(1.05); 
}

.bizim-cf7 .bizim-cf7-btn:active { 
  transform: translateY(0); 
  box-shadow: 0 2px 6px rgba(37, 99, 235, 0.2); 
}

.bizim-cf7 .wpcf7-spinner { 
  margin: 0 0 0 10px; 
}

/* Response Notifications */
.bizim-cf7-wrap .wpcf7-response-output { 
  margin: 20px 0 0; 
  padding: 14px 18px; 
  border-radius: 10px; 
  font-family: 'Kanit', sans-serif; 
  font-size: 14px; 
  border-width: 1px; 
  border-style: solid; 
}

.bizim-cf7-wrap form.sent .wpcf7-response-output { 
  background: #ecfdf5; 
  border-color: #10b981; 
  color: #065f46; 
}

.bizim-cf7-wrap form.invalid .wpcf7-response-output, 
.bizim-cf7-wrap form.failed .wpcf7-response-output, 
.bizim-cf7-wrap form.spam .wpcf7-response-output { 
  background: #fef2f2; 
  border-color: #ef4444; 
  color: #991b1b; 
}

/* Info Cards & Maps */
.bizim-bilgi-kart { 
  transition: transform 0.2s ease, box-shadow 0.2s ease; 
  height: 100%; 
}

.bizim-bilgi-kart:hover { 
  transform: translateY(-3px); 
  box-shadow: 0 12px 24px -10px rgba(15, 23, 42, 0.12); 
}

.bizim-bilgi-ico i { 
  line-height: 1; 
}

.bizim-bilgi-kart a { 
  color: inherit; 
  text-decoration: none; 
}

.bizim-iletisim-harita { 
  overflow: hidden; 
  border-radius: 16px; 
  box-shadow: 0 10px 30px -12px rgba(15, 23, 42, 0.15); 
}

.bizim-iletisim-harita .leaflet-container { 
  border-radius: 16px; 
  font-family: 'Kanit', sans-serif; 
}

/* Mobile Responsiveness */
@media (max-width: 860px) { 
  .bizim-iletisim-h1 { 
    font-size: 36px !important; 
  } 
}

@media (max-width: 640px) { 
  .bizim-cf7 .bizim-cf7-row { 
    grid-template-columns: 1fr; 
    gap: 0; 
  } 
  .bizim-iletisim-h1 { 
    font-size: 28px !important; 
  } 
  .bizim-iletisim-form-karti { 
    padding: 20px !important; 
  } 
}