/* Contato */
.contato-hero { position: relative; overflow: hidden; background: var(--azul-bebe); }
/* Original: foto em "cover" deslocada 200px para a direita + degradê do azul-gelo da esquerda. */
.contato-hero__bg { position: absolute; top: 0; left: 12.5rem; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: left top; }
.contato-hero::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, var(--azul-gelo) 30%, rgba(222, 239, 250, 0) 70%); }
.contato-hero__conteudo { position: relative; z-index: 2; min-height: 18.75rem; display: flex; flex-direction: column; justify-content: center; gap: 1.5rem; padding-block: 2rem; }
.contato-hero__eyebrow { margin: 0; font-size: 1.25rem; font-weight: 600; line-height: 1.2; color: var(--azul); }
.contato-hero__titulo { max-width: 40%; font-size: 2.5rem; font-weight: 400; line-height: 1.2; color: var(--marinho); }
.contato-hero__titulo strong { font-weight: 700; }

.contato-bloco { padding-block: 5rem; }
.contato-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2.5rem; align-items: start; }
.contato-info { display: flex; flex-direction: column; align-items: flex-start; gap: 1.5rem; }
.contato-info__texto { font-size: 1.125rem; font-weight: 500; }
.contato-info__texto p { margin-bottom: 1rem; }
.contato-info__texto strong { font-weight: 700; }
.contato-lista { max-width: 75%; display: flex; flex-direction: column; gap: .625rem; font-size: .9375rem; font-weight: 500; }
.contato-lista li, .contato-lista a { display: flex; align-items: center; gap: .875rem; }
.contato-lista a:hover { color: var(--azul); }
.contato-lista__ico { flex: none; display: grid; place-items: center; width: 1.875rem; height: 1.875rem; border-radius: .5rem; background: rgba(0, 112, 242, .15); }
.contato-lista__ico svg { width: .875rem; height: .875rem; }
.contato-whats { display: inline-flex; align-items: center; justify-content: center; padding: .75rem 1.5rem; border-radius: .75rem; background: var(--verde); color: #000; font-size: .875rem; font-weight: 600; line-height: 1.2; transition: background .2s, color .2s; }
.contato-whats:hover { background: #00FF37; color: var(--marinho); }

.contato-form { gap: 1rem; }
.contato-form .status:empty { display: none; }
.contato-form input, .contato-form select { border-radius: 1rem; padding: 1.125rem 1.25rem; font-size: 1.0625rem; }
.contato-form .btn { border-radius: 1rem; padding: .875rem 1.5rem; font-size: .875rem; font-weight: 500; }

.contato-faq-sec { padding-bottom: 5rem; }
.contato-faq-sec__titulo { text-align: center; font-size: 2.5rem; font-weight: 600; line-height: 1.2; margin-bottom: 2.5rem; }
.contato-faq { width: 64%; margin-inline: auto; }
.contato-faq details { border-bottom: 0; }
.contato-faq summary { padding: 1rem; font-size: 1rem; font-weight: 600; border-bottom: 1px solid rgba(1, 17, 50, .12); transition: color .2s; }
.contato-faq summary:hover { color: var(--azul); }
.contato-faq summary::after { display: none; }
.contato-faq details[open] summary { background: var(--cinza); border-radius: 1rem 0 0 0; }
.contato-faq details[open] summary:hover { color: var(--marinho); }
.contato-faq details > div { padding: 1rem; background: var(--cinza); border-radius: 0 0 1rem 1rem; font-size: .9375rem; }

@media (max-width: 1366px) {
  .contato-hero__titulo { font-size: 1.9375rem; }
  .contato-grid { gap: 1.5rem; }
  .contato-info__texto { font-size: 1rem; }
  .contato-faq-sec__titulo { font-size: 1.9375rem; margin-bottom: 1.5rem; }
}
@media (max-width: 1024px) {
  .contato-hero__bg { left: 0; object-position: 61% top; }
  .contato-hero::before { opacity: .75; }
  .contato-hero__eyebrow { font-size: 2rem; }
  .contato-hero__titulo { max-width: 50%; }
  .contato-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
  .contato-hero { z-index: 1; margin-bottom: -1.5rem; }
  .contato-hero__bg { object-position: 44% top; }
  .contato-hero::before { background: var(--azul-gelo); opacity: .8; }
  .contato-hero__conteudo { min-height: 12.5rem; padding-block: 3rem; }
  .contato-hero__eyebrow { font-size: 1.5rem; }
  .contato-hero__titulo { max-width: none; font-size: 1.5625rem; }
  .contato-bloco { padding-block: 5rem; }
  .contato-lista { max-width: none; font-size: 1rem; }
  .contato-form .acoes { justify-content: flex-end; }
  .contato-faq-sec__titulo { font-size: 1.5625rem; }
  .contato-faq { width: 100%; }
}
