/* ==========================================
   CONTATO - Página de Contato
   Estilos extraídos de index.php e sucesso.php
========================================== */

/* ==========================================
   HERO CONTATO
========================================== */
.contato-hero-section {
 position: relative;
 min-height: auto;
 display: flex;
 align-items: center;
 background: var(--lighter);
 padding: 100px 0 60px;
}

.contato-hero-overlay {
 display: none;
}

.contato-hero-content {
 position: relative;
 z-index: 1;
 text-align: center;
 color: var(--text-primary);
 max-width: 640px;
 margin: 0 auto;
}

.contato-hero-badge {
 display: inline-flex;
 align-items: center;
 gap: 8px;
 padding: 8px 18px;
 background: var(--surface-elevated);
 border: 1px solid var(--border-subtle);
 border-radius: var(--radius-full);
 font-size: var(--font-size-small);
 font-weight: 500;
 margin-bottom: 24px;
}

.contato-hero-content h1 {
 font-size: var(--font-size-display);
 font-weight: 700;
 line-height: 1.15;
 margin-bottom: 16px;
 letter-spacing: -0.02em;
}

.contato-hero-content h1 span {
 color: var(--primary);
}

.contato-hero-content p {
 font-size: 1.1rem;
 color: var(--text-secondary);
 margin-bottom: 32px;
 line-height: 1.6;
}

.contato-hero-actions {
 display: flex;
 gap: 14px;
 justify-content: center;
 flex-wrap: wrap;
}

.contato-hero-btn {
 display: inline-flex;
 align-items: center;
 gap: 10px;
 padding: 10px 24px;
 border-radius: var(--radius-full);
 font-size: var(--font-size-small);
 font-weight: 500;
 text-decoration: none;
 transition: all 0.2s ease;
}

.contato-hero-btn.whatsapp {
 background: var(--whatsapp);
 color: var(--white);
}

.contato-hero-btn.whatsapp:hover {
 background: var(--whatsapp-dark);
 transform: translateY(-1px);
}

.contato-hero-btn.phone {
 background: transparent;
 color: var(--text-primary);
 border: 1px solid var(--border-medium);
}

.contato-hero-btn.phone:hover {
 border-color: var(--primary);
 color: var(--primary);
}

/* ==========================================
   MAIN CONTENT
========================================== */
.contato-main-section {
 padding: 80px 0;
 background: var(--lighter);
}

.contato-main-grid {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 48px;
 align-items: start;
}

/* --- Info Panel --- */
.contato-info-panel {
 display: flex;
 flex-direction: column;
 gap: 24px;
}

/* Status + Horário do Sistema */
.contato-status-card {
 background: var(--bg-surface);
 border-radius: var(--radius-md);
 padding: 20px 24px;
 border: 1px solid var(--border-subtle);
}

.status-row {
 display: flex;
 align-items: center;
 justify-content: space-between;
 margin-bottom: 12px;
}

.status-indicator {
 display: flex;
 align-items: center;
 gap: 10px;
 font-size: 0.95rem;
 font-weight: 700;
}

.status-dot {
 width: 10px;
 height: 10px;
 border-radius: var(--radius-full);
 animation: pulse-dot 2s infinite;
}

.status-indicator.open .status-dot { background: var(--success); }
.status-indicator.open .status-text { color: var(--success-dark, #166534); }
.status-indicator.closed .status-dot { background: var(--text-muted); animation: none; }
.status-indicator.closed .status-text { color: var(--text-muted); }

@keyframes pulse-dot {
 0%, 100% { opacity: 1; transform: scale(1); }
 50% { opacity: 0.5; transform: scale(1.3); }
}

.status-24h-badge {
 display: inline-flex;
 align-items: center;
 gap: 6px;
 padding: 6px 14px;
 background: var(--info-light);
 color: var(--info);
 border-radius: var(--radius-full);
 font-size: var(--font-size-caption);
 font-weight: 600;
 letter-spacing: 0.05em;
}

.status-24h-badge i { font-size: var(--font-size-caption); }

.status-description {
 font-size: var(--font-size-small);
 color: var(--text-muted);
 line-height: 1.6;
 margin: 0;
}

.status-description strong {
 color: var(--text-primary);
}

/* Info Cards */
.contato-info-cards {
 display: flex;
 flex-direction: column;
 gap: 14px;
}

.info-card {
 display: flex;
 gap: 16px;
 background: var(--bg-surface);
 border-radius: var(--radius-md);
 padding: 20px;
 border: 1px solid var(--border-subtle);
 transition: all 0.2s ease;
}

.info-card:hover {
 transform: translateY(-3px);
 box-shadow: var(--shadow-md);
}

.info-card-icon {
 width: 44px;
 height: 44px;
 border-radius: var(--radius-md);
 display: flex;
 align-items: center;
 justify-content: center;
 flex-shrink: 0;
 background: var(--primary-subtle);
 color: var(--primary);
 font-size: 1.1rem;
}

.info-card-icon.phone { background: var(--info-light); color: var(--info); }
.info-card-icon.whatsapp { background: var(--success-light); color: var(--whatsapp); }
.info-card-icon.email { background: var(--warning-light); color: var(--warning); }
.info-card-icon.clock { background: var(--info-light); color: var(--info); }

.info-card-content h4 {
 font-size: var(--font-size-caption);
 font-weight: 600;
 color: var(--text-muted);
 text-transform: uppercase;
 letter-spacing: 0.05em;
 margin-bottom: 4px;
}

.info-card-content p {
 font-size: var(--font-size-small);
 color: var(--text-primary);
 font-weight: 500;
 margin-bottom: 6px;
}

.info-card-link {
 display: inline-flex;
 align-items: center;
 gap: 5px;
 font-size: var(--font-size-caption);
 font-weight: 600;
 color: var(--primary);
 text-decoration: none;
 transition: color 0.2s;
}

.info-card-link:hover { color: var(--primary-dark); }
.info-card-link.whatsapp-link { color: var(--whatsapp); }
.info-card-link.whatsapp-link:hover { color: var(--whatsapp-dark); }

/* Redes Sociais */
.contato-redes {
 padding: 20px;
 background: var(--bg-surface);
 border-radius: var(--radius-md);
 border: 1px solid var(--border-subtle);
}

.contato-redes h4 {
 font-size: var(--font-size-caption);
 font-weight: 600;
 color: var(--text-muted);
 text-transform: uppercase;
 letter-spacing: 0.05em;
 margin-bottom: 14px;
}

.redes-grid {
 display: flex;
 gap: 10px;
}

.rede-btn {
 width: 40px;
 height: 40px;
 border-radius: var(--radius-sm);
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 1.1rem;
 background: transparent;
 color: var(--text-muted);
 text-decoration: none;
 transition: color 0.2s ease;
}

.rede-btn:hover { transform: translateY(-1px); }
.rede-instagram:hover { background: #E1306c; color: var(--text-inverse); }
.rede-facebook:hover { background: #1877f2; color: var(--text-inverse); }
.rede-tiktok:hover { background: var(--black); color: var(--text-inverse); }
.rede-youtube:hover { background: var(--error); color: var(--text-inverse); }
.rede-whatsapp:hover { background: var(--whatsapp); color: var(--text-inverse); }

/* --- Form Panel --- */
.contato-form-panel {
 position: sticky;
 top: 24px;
}

.form-card {
 background: var(--bg-surface);
 border-radius: var(--radius-lg);
 padding: 40px;
 border: 1px solid var(--border-subtle);
}

.form-card-header {
 text-align: center;
 margin-bottom: 32px;
 padding-bottom: 24px;
 border-bottom: 1px solid var(--border-subtle);
}

.form-card-header h2 {
 font-size: var(--font-size-h3);
 font-weight: 700;
 color: var(--text-primary);
 margin-bottom: 8px;
 letter-spacing: -0.02em;
}

.form-card-header h2 i { color: var(--primary); margin-right: 8px; }
.form-card-header p { font-size: var(--font-size-small); color: var(--text-muted); }

/* Alert */
.form-alert {
 display: flex;
 gap: 12px;
 padding: 16px;
 border-radius: var(--radius-md);
 margin-bottom: 24px;
}

.form-alert.error {
 background: var(--error-light);
 border: 1px solid var(--error-light);
 color: var(--error-dark, #991B1B);
}

.form-alert.error i { color: var(--error); font-size: 1.1rem; flex-shrink: 0; margin-top: 2px; }
.form-alert ul { margin-top: 6px; padding-left: 18px; }

/* Form Fields */
.form-row {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 16px;
}

.form-group {
 margin-bottom: 20px;
}

.form-group label {
 display: block;
 font-size: var(--font-size-small);
 font-weight: 500;
 color: var(--text-primary);
 margin-bottom: 8px;
}

.input-wrapper {
 position: relative;
}

.input-wrapper i {
 position: absolute;
 left: 14px;
 top: 50%;
 transform: translateY(-50%);
 color: var(--text-muted);
 font-size: 14px;
 pointer-events: none;
}

.input-wrapper input,
.input-wrapper select {
 width: 100%;
 height: 48px;
 padding: 0 16px 0 44px;
 border: 1px solid var(--border-medium);
 border-radius: var(--radius-md);
 font-size: var(--font-size-small);
 color: var(--text-primary);
 background: var(--bg-surface);
 font-family: inherit;
 transition: border-color 0.2s ease;
 appearance: none;
 -webkit-appearance: none;
}

.input-wrapper input:focus,
.input-wrapper select:focus {
 outline: none;
 border-color: var(--primary);
 box-shadow: var(--shadow-glow);
}

.input-wrapper input:focus + i,
.input-wrapper select:focus + i { color: var(--primary); }

.input-wrapper input::placeholder { color: var(--text-muted); }

textarea {
 width: 100%;
 padding: 14px 16px;
 border: 1px solid var(--border-medium);
 border-radius: var(--radius-md);
 font-size: var(--font-size-small);
 color: var(--text-primary);
 font-family: inherit;
 resize: vertical;
 min-height: 120px;
 transition: border-color 0.2s ease;
}

textarea:focus {
 outline: none;
 border-color: var(--primary);
 box-shadow: var(--shadow-glow);
}

textarea::placeholder { color: var(--text-muted); }

/* Submit */
.btn-enviar {
 width: 100%;
 height: 48px;
 background: var(--primary);
 color: var(--white);
 border: none;
 border-radius: var(--radius-full);
 font-size: var(--font-size-small);
 font-weight: 500;
 cursor: pointer;
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 10px;
 font-family: inherit;
 transition: all 0.2s ease;
}

.btn-enviar:hover {
 background: var(--primary-dark);
 transform: translateY(-1px);
}

.btn-enviar:active { transform: translateY(0); }

.btn-enviar:disabled {
 opacity: 0.6;
 cursor: not-allowed;
 transform: none;
}

.form-trust {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 8px;
 margin-top: 16px;
 font-size: var(--font-size-caption);
 color: var(--text-muted);
}

.form-trust i { color: var(--success); }

/* ==========================================
   FAQ
========================================== */
.contato-faq-section {
 padding: 80px 0;
 background: var(--bg-surface);
}

.faq-header {
 text-align: center;
 margin-bottom: 48px;
}

.faq-badge {
 display: inline-flex;
 align-items: center;
 gap: 8px;
 padding: 8px 18px;
 background: var(--primary-subtle);
 border-radius: var(--radius-full);
 font-size: var(--font-size-caption);
 font-weight: 500;
 color: var(--primary);
 margin-bottom: 16px;
}

.faq-header h2 {
 font-size: var(--font-size-h2);
 font-weight: 700;
 color: var(--text-primary);
 letter-spacing: -0.02em;
}

.faq-grid {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 20px;
}

.faq-card {
 background: var(--lighter);
 border: 1px solid var(--border-subtle);
 border-radius: var(--radius-md);
 padding: 28px 24px;
 transition: all 0.2s ease;
}

.faq-card:hover {
 transform: translateY(-3px);
 box-shadow: var(--shadow-md);
}

.faq-icon {
 width: 44px;
 height: 44px;
 background: var(--primary-subtle);
 border-radius: var(--radius-md);
 display: flex;
 align-items: center;
 justify-content: center;
 color: var(--primary);
 font-size: 1.1rem;
 margin-bottom: 16px;
}

.faq-card h3 {
 font-size: var(--font-size-body);
 font-weight: 600;
 color: var(--text-primary);
 margin-bottom: 10px;
}

.faq-card p {
 font-size: var(--font-size-small);
 color: var(--text-muted);
 line-height: 1.6;
}


/* ==========================================
   RESPONSIVO
========================================== */
@media (max-width: 1024px) {
 .contato-main-grid {
  grid-template-columns: 1fr;
 }

 .contato-form-panel {
  position: static;
 }
}

@media (max-width: 768px) {
 .contato-hero-section {
  padding: 100px 0 60px;
  min-height: auto;
 }

 .contato-hero-content h1 {
  font-size: var(--font-size-display);
 }

 .contato-hero-actions {
  flex-direction: column;
  align-items: center;
 }

 .contato-hero-btn {
  width: 100%;
  justify-content: center;
 }

 .contato-main-section {
  padding: 50px 0;
 }

 .form-card {
  padding: 28px 20px;
  border-radius: var(--radius-lg);
 }

 .form-row {
  grid-template-columns: 1fr;
 }

 .faq-grid {
  grid-template-columns: 1fr 1fr;
 }

 .status-row {
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
 }

 .sucesso-card {
  padding: 40px 20px;
  border-radius: var(--radius-lg);
 }

 .sucesso-card h1 {
  font-size: 1.5rem;
 }
}

@media (max-width: 480px) {
 .contato-hero-content h1 {
  font-size: var(--font-size-display);
 }

 .faq-grid {
  grid-template-columns: 1fr;
 }
}

/* ========================================
 Contato Sucesso
======================================== */
.sucesso-section {
 min-height: 70vh;
 display: flex;
 align-items: center;
 padding: 100px 0;
 background: var(--lighter);
}

.sucesso-card {
 max-width: 520px;
 margin: 0 auto;
 text-align: center;
 background: var(--bg-surface);
 padding: 56px 40px;
 border-radius: var(--radius-lg);
 border: 1px solid var(--border-subtle);
}

.sucesso-icon-wrap { margin-bottom: 28px; }

.sucesso-icon {
 width: 80px;
 height: 80px;
 margin: 0 auto;
 background: var(--success-light);
 border-radius: var(--radius-full);
 display: flex;
 align-items: center;
 justify-content: center;
}

.sucesso-icon i { font-size: 2rem; color: var(--success); }

.sucesso-card h1 {
 font-family: var(--font-display);
 font-size: var(--font-size-h2);
 font-weight: 700;
 color: var(--text-primary);
 margin-bottom: 12px;
 letter-spacing: -0.02em;
}

.sucesso-texto {
 font-size: var(--font-size-small);
 color: var(--text-secondary);
 line-height: 1.6;
 margin-bottom: 28px;
}

.sucesso-detalhes {
 background: var(--lighter);
 padding: 18px;
 border-radius: var(--radius-md);
 margin-bottom: 32px;
 text-align: left;
}

.sucesso-detalhe-item {
 display: flex;
 align-items: center;
 gap: 12px;
 padding: 8px 0;
 font-size: var(--font-size-small);
 color: var(--text-primary);
}

.sucesso-detalhe-item:first-child { padding-top: 0; }

.sucesso-detalhe-item:last-child {
 padding-bottom: 0;
 border-top: 1px solid var(--border-subtle);
 margin-top: 4px;
 padding-top: 12px;
}

.sucesso-detalhe-item i {
 color: var(--primary);
 font-size: 1rem;
 width: 20px;
 text-align: center;
 flex-shrink: 0;
}

.sucesso-acoes { display: flex; flex-direction: column; gap: 12px; }

.sucesso-btn {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 gap: 10px;
 padding: 10px 24px;
 border-radius: var(--radius-full);
 font-size: var(--font-size-small);
 font-weight: 500;
 text-decoration: none;
 transition: all 0.2s ease;
}

.sucesso-btn.primary {
 background: var(--primary);
 color: var(--white);
}

.sucesso-btn.primary:hover {
 background: var(--primary-dark);
 transform: translateY(-1px);
}

.sucesso-btn.secondary {
 background: transparent;
 color: var(--text-primary);
 border: 1px solid var(--border-medium);
}

.sucesso-btn.secondary:hover {
 border-color: var(--primary);
 color: var(--primary);
}

@media (max-width: 768px) {
 .sucesso-card { padding: 40px 20px; border-radius: var(--radius-lg); }
 .sucesso-card h1 { font-size: var(--font-size-h2); }
}

