/* ─ CONTATO PAGE CSS ─ */

.contato-hero { position:relative; overflow:hidden; background: transparent !important; }
.page-hero-content { display:flex; flex-direction:column; gap:var(--sp-5); }
.page-hero-content h1 { font-size:clamp(2.5rem,5.5vw,4.5rem); }

/* Grid layout */
.contato-section { position:relative; }
.contato-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:var(--sp-8);
  align-items:start;
}
@media (min-width:1024px) {
  .contato-grid { grid-template-columns:1.1fr 0.9fr; gap:var(--sp-12); }
}

/* Form card */
.contato-form-card { padding:clamp(1.5rem,4vw,3rem); }

/* Canais */
.contato-info { display:flex; flex-direction:column; gap:var(--sp-8); }
.contato-info-title {
  font-size:var(--text-sm); font-weight:700;
  letter-spacing:.08em; text-transform:uppercase;
  color:var(--text-muted); margin-bottom:var(--sp-4);
}
.contato-channel-card {
  display:flex; align-items:center; gap:var(--sp-4);
  background:var(--glass-bg);
  border:1px solid var(--glass-border);
  border-radius:var(--radius-lg);
  padding:var(--sp-5);
  text-decoration:none; color:inherit;
  margin-bottom:var(--sp-4);
  transition:transform var(--t-spring), border-color var(--t-base), box-shadow var(--t-base);
}
.contato-channel-card:hover {
  transform:translateY(-3px);
  border-color:var(--cyan);
  box-shadow:var(--shadow-cyan);
}
.contato-channel-icon {
  width:46px; height:46px; border-radius:var(--radius-md);
  border:1px solid transparent;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
}
.contato-channel-info { flex:1; text-align:left; display:flex; flex-direction:column; gap:2px; }
.contato-channel-info strong { font-size:var(--text-sm); font-weight:700; color:var(--text-primary); }
.contato-channel-info span { font-size:var(--text-xs); color:var(--text-secondary); }
.contato-channel-sub { color:var(--text-muted) !important; }
.contato-channel-arrow { font-size:var(--text-lg); color:var(--text-muted); transition:transform var(--t-spring); }
.contato-channel-card:hover .contato-channel-arrow { transform:translateX(4px); }

/* Sociais */
.contato-socials { display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-3); }
.contato-social-card {
  display:flex; align-items:center; gap:var(--sp-3);
  background:var(--glass-bg);
  border:1px solid var(--glass-border);
  border-radius:var(--radius-md);
  padding:var(--sp-4);
  text-decoration:none; color:inherit;
  transition:transform var(--t-spring), border-color var(--t-base);
}
.contato-social-card:hover { transform:translateY(-2px); border-color:var(--cyan); }
.cs-icon { font-size:22px; }
.contato-social-card div { display:flex; flex-direction:column; gap:2px; }
.contato-social-card strong { font-size:var(--text-xs); font-weight:700; color:var(--text-primary); }
.contato-social-card span { font-size:10px; color:var(--text-muted); }

/* FAQ */
.faq-list { display:flex; flex-direction:column; gap:var(--sp-2); }
.faq-item {
  background:var(--glass-bg);
  border:1px solid var(--glass-border);
  border-radius:var(--radius-md);
  overflow:hidden;
  transition:border-color var(--t-base);
}
.faq-item[open] { border-color:rgba(0,212,255,.3); }
.faq-question {
  list-style:none; cursor:pointer;
  padding:var(--sp-4) var(--sp-5);
  font-size:var(--text-sm); font-weight:600; color:var(--text-primary);
  display:flex; align-items:center; justify-content:space-between; gap:var(--sp-3);
  transition:color var(--t-base);
  user-select:none;
}
.faq-question::-webkit-details-marker { display:none; }
.faq-question::after {
  content:'+'; font-size:18px; color:var(--cyan);
  transition:transform var(--t-base); flex-shrink:0;
}
.faq-item[open] .faq-question::after { transform:rotate(45deg); }
.faq-item:hover .faq-question { color:var(--cyan); }
.faq-answer {
  padding:0 var(--sp-5) var(--sp-4);
  font-size:var(--text-sm); color:var(--text-secondary);
  line-height:1.75;
}

/* Radio options */
.contato-como { margin-top:var(--sp-2); }
.contato-como-options { display:flex; flex-wrap:wrap; gap:var(--sp-3); }
.radio-option {
  display:flex; align-items:center; gap:var(--sp-2); cursor:pointer;
  font-size:var(--text-sm); color:var(--text-secondary);
  transition:color var(--t-base);
}
.radio-option:hover { color:var(--text-primary); }
.radio-option input[type="radio"] { position:absolute; opacity:0; pointer-events:none; }
.radio-custom {
  width:16px; height:16px; border-radius:50%;
  border:2px solid var(--glass-border);
  flex-shrink:0; transition:border-color var(--t-base), background var(--t-base);
  position:relative;
}
.radio-custom::after {
  content:''; position:absolute; top:50%; left:50%;
  transform:translate(-50%,-50%) scale(0);
  width:6px; height:6px; border-radius:50%;
  background:var(--cyan);
  transition:transform var(--t-base);
}
.radio-option input[type="radio"]:checked ~ .radio-custom {
  border-color:var(--cyan);
}
.radio-option input[type="radio"]:checked ~ .radio-custom::after {
  transform:translate(-50%,-50%) scale(1);
}

/* Trust badges */
.contato-trust {
  display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-2);
}
.trust-badge {
  background:var(--glass-bg);
  border:1px solid var(--glass-border);
  border-radius:var(--radius-md);
  padding:var(--sp-3) var(--sp-4);
  font-size:var(--text-xs); font-weight:600; color:var(--text-secondary);
  display:flex; align-items:center; gap:var(--sp-2);
}
.trust-badge span { color:var(--green); font-size:var(--text-sm); }

/* form-success state */
.form-success {
  display:none; flex-direction:column; align-items:center;
  text-align:center; padding:var(--sp-8) var(--sp-4);
}
.form-success.show { display:flex; }

/* Adjustments for mobile & tablet (max-width: 991px) */
@media (max-width: 991px) {
  .contato-hero {
    padding-top: calc(var(--nav-height) + var(--sp-2)) !important;
    padding-block-start: calc(var(--nav-height) + var(--sp-2)) !important;
    padding-bottom: var(--sp-6) !important;
    padding-block: calc(var(--nav-height) + var(--sp-2)) var(--sp-6) !important;
    min-height: auto !important;
  }
  .contato-info-block:nth-of-type(3) .contato-info-title {
    margin-top: 40px !important;
  }
  .contato-trust {
    margin-top: 40px !important;
  }
}


