/* ═══════════════════════════════════════
   AlarmO'Clock — Contact Page Styles
   ═══════════════════════════════════════ */

/* ── NAV CLOCK ── */
.nav-clock { opacity: 1; transform: translateY(0); }

/* ── PAGE HERO — no bottom padding ── */
.page-hero { padding-bottom: 0; }

/* ── LAYOUT ── */
.contact-wrap {
  padding-bottom: 64px;
}

.contact-card { margin-bottom: 0; }

.contact-body { padding: 32px 36px; }

/* ── CF7 FORM RESET ── */
.wpcf7 { width: 100%; }
.wpcf7-form { display: flex; flex-direction: column; gap: 20px; }

/* Neutralise WordPress auto-p and br tags inside CF7 */
.wpcf7-form p {
  margin: 0;
  display: contents;
}
.wpcf7-form br { display: none; }

/* ── NAME + EMAIL SIDE BY SIDE ── */
.wpcf7-form .name-email-row {
  display: flex;
  gap: 16px;
}
.wpcf7-form .name-email-row label {
  flex: 1;
}

/* ── LABELS ── */
.wpcf7-form label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-family: 'DM Mono', monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}

/* ── INPUTS ── */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"] {
  width: 100%;
  height: 52px;
  padding: 0 18px;
  background: rgba(255,255,255,0.6);
  border: 1px solid rgba(255,255,255,0.8);
  border-radius: 12px;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
  outline: none;
  transition: all 0.2s;
  -webkit-appearance: none;
}
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus {
  border-color: var(--accent);
  background: rgba(255,255,255,0.85);
  box-shadow: 0 0 0 3px rgba(124,92,191,0.12);
}
.wpcf7-form input::placeholder { color: var(--muted); font-weight: 400; }

/* ── TEXTAREA ── */
.wpcf7-form textarea {
  width: 100%;
  min-height: 140px;
  padding: 16px 18px;
  background: rgba(255,255,255,0.6);
  border: 1px solid rgba(255,255,255,0.8);
  border-radius: 12px;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
  outline: none;
  resize: vertical;
  transition: all 0.2s;
  line-height: 1.6;
  -webkit-appearance: none;
}
.wpcf7-form textarea:focus {
  border-color: var(--accent);
  background: rgba(255,255,255,0.85);
  box-shadow: 0 0 0 3px rgba(124,92,191,0.12);
}
.wpcf7-form textarea::placeholder { color: var(--muted); font-weight: 400; }

/* ── SUBMIT BUTTON ── */
.wpcf7-form input[type="submit"],
.wpcf7-submit {
  width: 100%;
  height: 52px;
  background: var(--accent);
  color: white;
  border: none;
  border-radius: 12px;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s;
  letter-spacing: 0.02em;
  margin-top: 4px;
}
.wpcf7-form input[type="submit"]:hover,
.wpcf7-submit:hover {
  background: #6a4aad;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(124,92,191,0.3);
}
.wpcf7-form input[type="submit"]:active { transform: translateY(0); }

/* ── SPINNER ── */
.wpcf7-spinner { display: none !important; }

/* ── VALIDATION ERRORS ── */
.wpcf7-not-valid {
  border-color: rgba(220,80,80,0.6) !important;
  background: rgba(255,240,240,0.7) !important;
}
.wpcf7-not-valid-tip {
  font-family: 'DM Mono', monospace;
  font-size: 11px;
  color: #c05050;
  margin-top: 4px;
  display: block;
}

/* ── RESPONSE OUTPUT ── */
.wpcf7-response-output {
  margin: 0 !important;
  padding: 14px 18px !important;
  border-radius: 10px !important;
  font-family: 'DM Mono', monospace !important;
  font-size: 13px !important;
  border: none !important;
  text-align: center;
}
.wpcf7-mail-sent-ok {
  background: rgba(80,180,120,0.15) !important;
  color: #2d7a50 !important;
  border: 1px solid rgba(80,180,120,0.3) !important;
}
.wpcf7-mail-sent-ng,
.wpcf7-aborted {
  background: rgba(220,80,80,0.1) !important;
  color: #c05050 !important;
  border: 1px solid rgba(220,80,80,0.25) !important;
}
.wpcf7-validation-errors,
.wpcf7-acceptance-missing {
  background: rgba(240,180,60,0.12) !important;
  color: #8a6020 !important;
  border: 1px solid rgba(240,180,60,0.3) !important;
}

/* ── HONEYPOT ── */
.wpcf7-form .honeypot-field,
.wpcf7-form p:has(.wpcf7-honeypot) { display: none !important; }

/* ── MOBILE — stack name/email ── */
@media (max-width: 768px) {
  .contact-body { padding: 24px 20px; }
  .wpcf7-form .name-email-row { flex-direction: column; gap: 20px; }
}

.contact-card { margin-bottom: 0; }

.contact-body { padding: 32px 36px; }



/* ── LABELS ── */
.wpcf7-form label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-family: 'DM Mono', monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}

/* ── INPUTS ── */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"] {
  width: 100%;
  height: 52px;
  padding: 0 18px;
  background: rgba(255,255,255,0.6);
  border: 1px solid rgba(255,255,255,0.8);
  border-radius: 12px;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
  outline: none;
  transition: all 0.2s;
  -webkit-appearance: none;
}
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus {
  border-color: var(--accent);
  background: rgba(255,255,255,0.85);
  box-shadow: 0 0 0 3px rgba(124,92,191,0.12);
}
.wpcf7-form input::placeholder { color: var(--muted); font-weight: 400; }

/* ── TEXTAREA ── */
.wpcf7-form textarea {
  width: 100%;
  min-height: 140px;
  padding: 16px 18px;
  background: rgba(255,255,255,0.6);
  border: 1px solid rgba(255,255,255,0.8);
  border-radius: 12px;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
  outline: none;
  resize: vertical;
  transition: all 0.2s;
  line-height: 1.6;
  -webkit-appearance: none;
}
.wpcf7-form textarea:focus {
  border-color: var(--accent);
  background: rgba(255,255,255,0.85);
  box-shadow: 0 0 0 3px rgba(124,92,191,0.12);
}
.wpcf7-form textarea::placeholder { color: var(--muted); font-weight: 400; }

/* ── SUBMIT BUTTON ── */
.wpcf7-form input[type="submit"],
.wpcf7-submit {
  width: 100%;
  height: 52px;
  background: var(--accent);
  color: white;
  border: none;
  border-radius: 12px;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s;
  letter-spacing: 0.02em;
  margin-top: 4px;
}
.wpcf7-form input[type="submit"]:hover,
.wpcf7-submit:hover {
  background: #6a4aad;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(124,92,191,0.3);
}
.wpcf7-form input[type="submit"]:active { transform: translateY(0); }

/* ── SPINNER ── */
.wpcf7-spinner {
  display: none !important; /* we rely on the response output instead */
}

/* ── VALIDATION ERRORS ── */
.wpcf7-not-valid {
  border-color: rgba(220,80,80,0.6) !important;
  background: rgba(255,240,240,0.7) !important;
}
.wpcf7-not-valid-tip {
  font-family: 'DM Mono', monospace;
  font-size: 11px;
  color: #c05050;
  margin-top: 4px;
  display: block;
}

/* ── RESPONSE OUTPUT ── */
.wpcf7-response-output {
  margin: 0 !important;
  padding: 14px 18px !important;
  border-radius: 10px !important;
  font-family: 'DM Mono', monospace !important;
  font-size: 13px !important;
  border: none !important;
  text-align: center;
}

/* Success */
.wpcf7-mail-sent-ok {
  background: rgba(80,180,120,0.15) !important;
  color: #2d7a50 !important;
  border: 1px solid rgba(80,180,120,0.3) !important;
}

/* Error */
.wpcf7-mail-sent-ng,
.wpcf7-aborted {
  background: rgba(220,80,80,0.1) !important;
  color: #c05050 !important;
  border: 1px solid rgba(220,80,80,0.25) !important;
}

/* Validation failed */
.wpcf7-validation-errors,
.wpcf7-acceptance-missing {
  background: rgba(240,180,60,0.12) !important;
  color: #8a6020 !important;
  border: 1px solid rgba(240,180,60,0.3) !important;
}

/* ── HONEYPOT (always hidden) ── */
.wpcf7-form .honeypot-field,
.wpcf7-form p:has(.wpcf7-honeypot) {
  display: none !important;
}

/* ── MOBILE ── */
@media (max-width: 768px) {
  .contact-body { padding: 24px 20px; }
}
