/* ================================================
   PRÓ-CRIAR – Página do Profissional
   Arquivo: single-prestador.css | Versão: 1.0
   Mobile-first
================================================ */

/* RESET INTERNO */
.pc-emp-main-content *,
.pc-emp-main-content *::before,
.pc-emp-main-content *::after {
  box-sizing: border-box;
}

/* ================================================
   CONTAINER PRINCIPAL
================================================ */
.single-prestador_servico .site-content {
  background: #f3f4f6 !important;
}

.pc-emp-main-content {
  max-width: 860px !important;
  margin: 20px auto 32px !important;
  padding: 20px 16px !important;
  background: #ffffff !important;
  border-radius: 16px !important;
  box-shadow: 0 6px 24px rgba(15,23,42,0.10) !important;
  font-family: 'Segoe UI', Arial, sans-serif !important;
}

/* ================================================
   CABEÇALHO DO PROFISSIONAL
================================================ */
.pc-emp-header {
  text-align: center !important;
  margin-bottom: 20px !important;
}

.pc-emp-logo {
  max-width: 280px !important;
  margin: 0 auto 16px !important;
}

.pc-emp-logo img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  border-radius: 12px !important;
}

/* Nome do profissional */
.pc-emp-title {
  font-size: 26px !important;
  font-weight: 800 !important;
  color: #111827 !important;
  margin: 0 0 10px !important;
  line-height: 1.2 !important;
}

/* Badge de especialidade */
.pc-emp-segmento {
  display: inline-block !important;
  background: linear-gradient(135deg, #f0fdf4, #dcfce7) !important;
  color: #15803d !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 5px 16px !important;
  border-radius: 999px !important;
  border: 1.5px solid #86efac !important;
  margin-bottom: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

/* Cidade / Estado */
.pc-emp-localizacao {
  font-size: 14px !important;
  color: #6b7280 !important;
  margin: 0 0 6px !important;
}

/* Regiões atendidas */
.pc-prest-regioes {
  font-size: 13px !important;
  color: #374151 !important;
  margin: 0 0 18px !important;
  line-height: 1.5 !important;
}

.pc-prest-regioes strong {
  color: #1d4ed8 !important;
}

/* ================================================
   BOTÕES DE AÇÃO – COLUNA NO MOBILE
================================================ */
.pc-emp-acoes {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
  width: 100% !important;
}

.pc-emp-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 14px 20px !important;
  border-radius: 12px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  border: none !important;
  cursor: pointer !important;
  width: 100% !important;
  text-align: center !important;
  line-height: 1.3 !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.pc-emp-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(15,23,42,0.18) !important;
  text-decoration: none !important;
}

/* Mapa */
.pc-emp-btn-mapa {
  background: #dbeafe !important;
  color: #1d4ed8 !important;
  border: 1.5px solid #93c5fd !important;
}

/* WhatsApp – destaque máximo */
.pc-emp-btn-whatsapp {
  background: linear-gradient(135deg, #16a34a, #15803d) !important;
  color: #ffffff !important;
  font-size: 16px !important;
  box-shadow: 0 4px 16px rgba(22,163,74,0.45) !important;
  letter-spacing: 0.02em !important;
}

/* E-mail */
.pc-emp-btn-email {
  background: #f9fafb !important;
  color: #374151 !important;
  border: 1.5px solid #d1d5db !important;
}

/* Site */
.pc-emp-btn-site {
  background: #ede9fe !important;
  color: #5b21b6 !important;
  border: 1.5px solid #c4b5fd !important;
}

/* ================================================
   REDES SOCIAIS
================================================ */
.pc-emp-redes {
  margin-bottom: 8px !important;
  text-align: center !important;
}

.pc-emp-redes-titulo {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #9ca3af !important;
  margin: 0 0 10px !important;
}

.pc-emp-redes-botoes {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  width: 100% !important;
}

.pc-emp-btn-instagram {
  background: linear-gradient(135deg, #f9ce34 0%, #ee2a7b 50%, #6228d7 100%) !important;
  color: #ffffff !important;
  font-size: 15px !important;
}

.pc-emp-btn-facebook {
  background: #1877f2 !important;
  color: #ffffff !important;
  font-size: 15px !important;
}

/* ================================================
   APRESENTAÇÃO – DESTAQUE FORTE
================================================ */
.pc-emp-desc-box {
  margin: 16px 0 !important;
  padding: 20px 18px 20px 22px !important;
  background: linear-gradient(135deg, #f0fdf4, #ecfdf5) !important;
  border-radius: 14px !important;
  border: 1px solid #86efac !important;
  border-left: 5px solid #16a34a !important;
  position: relative !important;
}

.pc-emp-desc-box .pc-emp-box-titulo {
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.09em !important;
  color: #15803d !important;
  font-weight: 800 !important;
  margin-bottom: 10px !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.pc-emp-desc {
  font-size: 15px !important;
  color: #111827 !important;
  line-height: 1.8 !important;
  margin: 0 !important;
}

.pc-emp-desc p {
  margin: 0 0 8px !important;
}

.pc-emp-desc p:last-child {
  margin-bottom: 0 !important;
}

/* ================================================
   FOTOS – GRID COM ESPAÇAMENTO
================================================ */
.pc-emp-fotos {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 12px !important;
  margin: 20px 0 0 !important;
}

.pc-emp-fotos a {
  display: block !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #f9fafb !important;
  box-shadow: 0 3px 10px rgba(15,23,42,0.10) !important;
}

.pc-emp-fotos img {
  width: 100% !important;
  height: 160px !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.25s ease !important;
}

.pc-emp-fotos a:hover img {
  transform: scale(1.05) !important;
}

/* ================================================
   CAIXAS DE CONTEÚDO (Serviços, Diferenciais, Planos)
================================================ */
.pc-emp-box {
  margin-top: 16px !important;
  padding: 16px 18px !important;
  border-radius: 14px !important;
  background: #f9fafb !important;
  border: 1px solid #e5e7eb !important;
}

.pc-emp-box-titulo {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #111827 !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

/* Serviços – azul */
.pc-emp-servicos {
  background: #eff6ff !important;
  border-color: #93c5fd !important;
  border-left: 4px solid #2563eb !important;
}

/* Diferenciais – dourado/âmbar */
.pc-prest-diferenciais {
  background: #fffbeb !important;
  border-color: #fcd34d !important;
  border-left: 4px solid #f59e0b !important;
}

/* Planos – roxo */
.pc-prest-planos {
  background: #f5f3ff !important;
  border-color: #c4b5fd !important;
  border-left: 4px solid #7c3aed !important;
}

.pc-emp-lista {
  margin: 0 !important;
  padding-left: 20px !important;
  font-size: 14px !important;
  color: #374151 !important;
  line-height: 2 !important;
}

.pc-emp-lista li {
  margin-bottom: 2px !important;
}

/* ================================================
   FRASE DE IMPACTO – CALL TO ACTION
================================================ */
.pc-emp-call-to-action {
  margin-top: 20px !important;
  padding: 20px 18px !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, #1e3a8a, #1d4ed8, #2563eb) !important;
  border: none !important;
  text-align: center !important;
  box-shadow: 0 6px 20px rgba(29,78,216,0.35) !important;
}

.pc-emp-call-to-action p {
  margin: 0 !important;
  font-size: 15px !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
}

/* ================================================
   VÍDEOS
================================================ */
.pc-emp-videos {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  margin-top: 12px !important;
}

.pc-emp-video-wrap {
  position: relative !important;
  padding-bottom: 56.25% !important;
  height: 0 !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: #000 !important;
}

.pc-emp-video-wrap iframe {
  position: absolute !important;
  top: 0; left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: none !important;
}

.pc-emp-video-local video {
  width: 100% !important;
  border-radius: 12px !important;
}

/* ================================================
   VÍNCULOS – ONDE ESTE PROFISSIONAL ATUA
================================================ */
.pc-emp-animais {
  margin-top: 24px !important;
}

.pc-emp-section-title {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #111827 !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}

.pc-prest-vinculos-bloco {
  margin-bottom: 20px !important;
}

/* Card de vínculo com logo */
.pc-card-animal {
  background: #ffffff !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.pc-card-animal:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.11) !important;
}

.pc-card-link {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
  color: inherit !important;
  padding: 12px !important;
}

/* Logo miniatura no card de vínculo */
.pc-prest-vinculo-logo {
  width: 42px !important;
  height: 42px !important;
  border-radius: 8px !important;
  object-fit: contain !important;
  background: #f3f4f6 !important;
  flex-shrink: 0 !important;
  border: 1px solid #e5e7eb !important;
  padding: 3px !important;
}

.pc-card-title {
  font-size: 13px !important;
  font-weight: 700 !important;
  margin: 0 !important;
  color: #111827 !important;
  line-height: 1.3 !important;
}

/* Grid dos cards de vínculo */
.pc-grid-animais {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 10px !important;
}

/* ================================================
   QR CODE
================================================ */
.pc-prop-qr-section {
  margin-top: 28px !important;
  margin-bottom: 40px !important;
  max-width: 860px !important;
  padding: 24px 18px !important;
  background: #e8f6ff !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.06) !important;
}

.pc-prop-qr-main {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  align-items: center !important;
  text-align: center !important;
}

.pc-prop-qr-title {
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  color: #1b3a57 !important;
  margin: 0 0 6px !important;
}

.pc-prop-qr-subtitle {
  font-size: 0.9rem !important;
  color: #4b5563 !important;
  margin: 0 0 18px !important;
}

.pc-prop-qr-botoes {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  justify-content: center !important;
}

.pc-prop-btn-download {
  background: #2563eb !important;
  color: #ffffff !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  border: none !important;
  cursor: pointer !important;
}

.pc-prop-btn-share {
  background: #ffffff !important;
  color: #1f2933 !important;
  border: 1px solid #cbd5e1 !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}

.pc-prop-qr-imagem img {
  width: 180px !important;
  height: 180px !important;
  object-fit: contain !important;
  display: block !important;
}

/* ================================================
   ANIMAIS DESTE PROFISSIONAL
================================================ */
.pc-prest-animais-section {
  margin-top: 24px !important;
}

.pc-card-sub {
  font-size: 12px !important;
  color: #6b7280 !important;
  margin: 3px 0 0 !important;
  font-weight: 500 !important;
}

.pc-card-thumb {
  width: 100% !important;
  background: #f9fafb !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px !important;
  min-height: 120px !important;
}

.pc-card-thumb img {
  width: 100% !important;
  height: auto !important;
  max-height: 180px !important;
  object-fit: contain !important;
  display: block !important;
  border-radius: 6px !important;
}

.pc-card-thumb-placeholder {
  font-size: 12px !important;
  color: #9ca3af !important;
}

.pc-card-body {
  padding: 10px 12px 12px !important;
  text-align: center !important;
}

/* ================================================
   DESKTOP (min-width: 768px)
================================================ */
@media (min-width: 768px) {

  .pc-emp-title { font-size: 30px !important; }

  .pc-emp-logo { max-width: 320px !important; }

  /* Botões em linha no desktop */
  .pc-emp-acoes {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .pc-emp-btn {
    width: auto !important;
    flex: 0 1 auto !important;
  }

  .pc-emp-redes-botoes {
    flex-direction: row !important;
    justify-content: center !important;
  }

  /* Fotos 4 colunas */
  .pc-emp-fotos {
    grid-template-columns: repeat(4, 1fr) !important;
  }

  .pc-emp-fotos img {
    height: 170px !important;
  }

  /* Vídeos lado a lado */
  .pc-emp-videos {
    flex-direction: row !important;
    flex-wrap: wrap !important;
  }

  .pc-emp-video-wrap {
    flex: 1 1 45% !important;
  }

  /* QR em linha */
  .pc-prop-qr-main {
    flex-direction: row !important;
    text-align: left !important;
  }

  .pc-prop-qr-botoes {
    justify-content: flex-start !important;
  }

  .pc-prop-qr-imagem {
    flex-shrink: 0 !important;
  }

  /* Grid de vínculos: 3 colunas */
  .pc-grid-animais {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

/* ================================================
   ANIMAIS DESTE PROFISSIONAL
================================================ */
.pc-prest-animais-section {
    margin-top: 28px !important;
}

.pc-prest-animais-section .pc-grid-animais {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
}

.pc-prest-animais-section .pc-card-animal {
    display: flex !important;
    flex-direction: column !important;
}

.pc-prest-animais-section .pc-card-link {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 !important;
    gap: 0 !important;
}

.pc-card-thumb {
    width: 100% !important;
    background: #f3f4f6 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 120px !important;
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
}

.pc-card-thumb img {
    width: 100% !important;
    height: 130px !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.25s ease !important;
}

.pc-card-animal:hover .pc-card-thumb img {
    transform: scale(1.05) !important;
}

.pc-card-thumb-placeholder {
    font-size: 12px !important;
    color: #9ca3af !important;
    padding: 20px !important;
    text-align: center !important;
}

.pc-card-body {
    padding: 10px 12px 14px !important;
    text-align: center !important;
}

.pc-card-status {
    display: inline-block !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: #15803d !important;
    background: #dcfce7 !important;
    border-radius: 999px !important;
    padding: 2px 10px !important;
    margin-bottom: 6px !important;
}

.pc-card-sub {
    font-size: 12px !important;
    color: #6b7280 !important;
    margin: 4px 0 0 !important;
    font-weight: 500 !important;
}

/* ================================================
   VÍNCULOS – PROPRIEDADES E EMPRESAS
   1 coluna no mobile para ficar grande e clicável
================================================ */
.pc-prest-vinculos .pc-grid-animais {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
}

.pc-prest-vinculos .pc-card-link {
    flex-direction: row !important;
    align-items: center !important;
    padding: 14px !important;
    gap: 12px !important;
}

/* Logo maior nos vínculos */
.pc-prest-vinculo-logo {
    width: 52px !important;
    height: 52px !important;
    border-radius: 8px !important;
    object-fit: contain !important;
    background: #f3f4f6 !important;
    flex-shrink: 0 !important;
    border: 1px solid #e5e7eb !important;
    padding: 4px !important;
}

.pc-prest-vinculos .pc-card-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    text-align: left !important;
}

/* ================================================
   DESKTOP (min-width: 768px)
================================================ */
@media (min-width: 768px) {

    /* Animais: 3 colunas */
    .pc-prest-animais-section .pc-grid-animais {
        grid-template-columns: repeat(3, 1fr) !important;
    }

    .pc-card-thumb img {
        height: 160px !important;
    }

    /* Vínculos: 2 colunas no desktop */
    .pc-prest-vinculos .pc-grid-animais {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
