/* ================================================
   PRÓ-CRIAR – Página da Propriedade
   Arquivo: single-propriedade.css | Versão: 2.1
   Mobile-first | Fundo desfocado no carrossel e animais
================================================ */

.single-propriedade .site-content {
    background: #f3f4f6 !important;
}

.pc-prop-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
================================================ */
.pc-prop-header {
    text-align: center !important;
    margin-bottom: 20px !important;
}

.pc-prop-logo {
    max-width: 280px !important;
    margin: 0 auto 16px !important;
}

.pc-prop-logo img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    border-radius: 12px !important;
}

.pc-prop-title {
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #111827 !important;
    margin: 0 0 10px !important;
    line-height: 1.2 !important;
}

.pc-prop-localizacao {
    font-size: 14px !important;
    color: #6b7280 !important;
    margin: 0 0 16px !important;
}

/* ================================================
   BOTÕES DE AÇÃO
================================================ */
.pc-prop-main-content .pc-emp-acoes {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-bottom: 14px !important;
    width: 100% !important;
}

.pc-prop-main-content .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-prop-main-content .pc-emp-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(15,23,42,0.18) !important;
    text-decoration: none !important;
}

.pc-prop-main-content .pc-emp-btn-mapa {
    background: #dbeafe !important;
    color: #1d4ed8 !important;
    border: 1.5px solid #93c5fd !important;
}

.pc-prop-main-content .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;
}

.pc-prop-main-content .pc-emp-btn-email {
    background: #f9fafb !important;
    color: #374151 !important;
    border: 1.5px solid #d1d5db !important;
}

.pc-prop-main-content .pc-emp-btn-site {
    background: #ede9fe !important;
    color: #5b21b6 !important;
    border: 1.5px solid #c4b5fd !important;
}

/* ================================================
   REDES SOCIAIS
================================================ */
.pc-prop-main-content .pc-emp-redes {
    margin-bottom: 8px !important;
    text-align: center !important;
}

.pc-prop-main-content .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-prop-main-content .pc-emp-redes-botoes {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    width: 100% !important;
}

.pc-prop-main-content .pc-emp-btn-instagram {
    background: linear-gradient(135deg, #f9ce34 0%, #ee2a7b 50%, #6228d7 100%) !important;
    color: #ffffff !important;
}

.pc-prop-main-content .pc-emp-btn-facebook {
    background: #1877f2 !important;
    color: #ffffff !important;
}

/* ================================================
   DESCRIÇÃO
================================================ */
.pc-prop-main-content .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;
}

.pc-prop-main-content .pc-emp-box-titulo {
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.09em !important;
    color: #15803d !important;
    font-weight: 800 !important;
    margin-bottom: 10px !important;
}

.pc-prop-main-content .pc-emp-desc {
    font-size: 15px !important;
    color: #111827 !important;
    line-height: 1.8 !important;
    margin: 0 !important;
}

/* ================================================
   FOTOS
================================================ */
.pc-prop-main-content .pc-emp-fotos {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    margin: 20px 0 0 !important;
}

.pc-prop-main-content .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-prop-main-content .pc-emp-fotos img {
    width: 100% !important;
    height: 160px !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.25s ease !important;
}

.pc-prop-main-content .pc-emp-fotos a:hover img {
    transform: scale(1.05) !important;
}

/* ================================================
   DESTAQUES – CARROSSEL COM FUNDO DESFOCADO
   Camada 1 = div.pc-dest-bg  (fundo desfocado)
   Camada 2 = img              (imagem inteira, contain)
================================================ */
.pc-prop-destaques {
    margin-top: 24px !important;
}

.pc-dest-header {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 14px !important;
}

.pc-dest-header h2 {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #111827 !important;
    margin: 0 !important;
}

.pc-dest-carrossel-wrap {
    position: relative !important;
    width: 100% !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    background: #111827 !important;
    box-shadow: 0 4px 16px rgba(15,23,42,0.12) !important;
}

.pc-dest-slides {
    position: relative !important;
    width: 100% !important;
}

.pc-dest-slide {
    display: none !important;
    width: 100% !important;
    position: relative !important;
}

.pc-dest-slide.ativo {
    display: block !important;
}

.pc-dest-slide-link {
    display: block !important;
    text-decoration: none !important;
    color: inherit !important;
}

.pc-dest-slide-img {
    position: relative !important;
    width: 100% !important;
    height: 280px !important;
    overflow: hidden !important;
    background: #111827 !important;
}

/* Camada 1 – fundo desfocado (carrossel) */
.pc-dest-slide-img .pc-dest-bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
    filter: blur(20px) brightness(0.45) !important;
    transform: scale(1.15) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

/* Camada 2 – imagem principal (carrossel) */
.pc-dest-slide-img img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block !important;
    transition: transform 0.4s ease !important;
}

.pc-dest-slide:hover .pc-dest-slide-img img {
    transform: scale(1.03) !important;
}

.pc-dest-sem-foto {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    font-size: 13px !important;
    color: #9ca3af !important;
}

.pc-dest-slide-info {
    padding: 14px 16px 16px !important;
    text-align: center !important;
    background: #ffffff !important;
}

.pc-dest-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: 3px 12px !important;
    margin-bottom: 6px !important;
}

.pc-dest-nome {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #111827 !important;
    margin: 0 0 4px !important;
    line-height: 1.3 !important;
}

.pc-dest-sub {
    font-size: 12px !important;
    color: #6b7280 !important;
    margin: 0 !important;
    font-weight: 500 !important;
}

.pc-dest-seta {
    position: absolute !important;
    top: 130px !important;
    transform: translateY(-50%) !important;
    background: rgba(255,255,255,0.92) !important;
    border: none !important;
    border-radius: 50% !important;
    width: 40px !important;
    height: 40px !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.22) !important;
    transition: background 0.2s ease !important;
    line-height: 1 !important;
    padding: 0 !important;
}

.pc-dest-seta:hover {
    background: #ffffff !important;
}

.pc-dest-prev { left: 10px !important; }
.pc-dest-next { right: 10px !important; }

.pc-dest-bolinhas {
    display: flex !important;
    justify-content: center !important;
    gap: 7px !important;
    padding: 10px 0 14px !important;
    background: #ffffff !important;
}

.pc-dest-bolinha {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #d1d5db !important;
    border: none !important;
    cursor: pointer !important;
    padding: 0 !important;
    transition: background 0.2s ease, transform 0.2s ease !important;
}

.pc-dest-bolinha.ativa {
    background: #16a34a !important;
    transform: scale(1.3) !important;
}

/* Desktop e celular paisagem – carrossel */
@media (min-width: 568px) {
    .pc-dest-slide-img {
        height: 420px !important;
    }

    .pc-dest-seta {
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 48px !important;
        height: 48px !important;
        font-size: 30px !important;
    }

    .pc-dest-prev { left: 16px !important; }
    .pc-dest-next { right: 16px !important; }
}

/* ================================================
   PROFISSIONAIS PARCEIROS
================================================ */
.pc-prop-main-content .pc-emp-parceiros {
    margin-top: 24px !important;
}

.pc-prop-main-content .pc-emp-section-title {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #111827 !important;
    margin: 0 0 14px !important;
}

.pc-prop-main-content .pc-parceiros-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 12px !important;
}

.pc-prop-main-content .pc-parceiro-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-decoration: none !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 12px 10px !important;
    text-align: center !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
    overflow: hidden !important;
}

.pc-prop-main-content .pc-parceiro-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 18px rgba(0,0,0,0.12) !important;
    text-decoration: none !important;
}

.pc-prop-main-content .pc-parceiro-logo {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    max-width: 72px !important;
    max-height: 72px !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #f3f4f6 !important;
    border: 1px solid #e5e7eb !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 8px !important;
    padding: 6px !important;
    flex-shrink: 0 !important;
}

.pc-prop-main-content .pc-parceiro-logo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    display: block !important;
}

.pc-prop-main-content .pc-parceiro-sem-logo {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #1d4ed8 !important;
    background: #dbeafe !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px !important;
    text-transform: uppercase !important;
}

.pc-prop-main-content .pc-parceiro-nome {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 3px !important;
    line-height: 1.3 !important;
}

.pc-prop-main-content .pc-parceiro-esp {
    font-size: 10px !important;
    color: #6b7280 !important;
    margin: 0 !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
}

/* ================================================
   FRASE DE IMPACTO
================================================ */
.pc-prop-main-content .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;
    text-align: center !important;
    box-shadow: 0 6px 20px rgba(29,78,216,0.35) !important;
}

.pc-prop-main-content .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;
}

/* ================================================
   QR CODE
================================================ */
.pc-prop-main-content .pc-prop-qr-section {
    margin-top: 28px !important;
    margin-bottom: 8px !important;
}

/* ================================================
   DESKTOP (min-width: 768px)
================================================ */
@media (min-width: 768px) {

    .pc-prop-title { font-size: 30px !important; }

    .pc-prop-logo { max-width: 320px !important; }

    .pc-prop-main-content .pc-emp-acoes {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
    }

    .pc-prop-main-content .pc-emp-btn {
        width: auto !important;
        flex: 0 1 auto !important;
    }

    .pc-prop-main-content .pc-emp-redes-botoes {
        flex-direction: row !important;
        justify-content: center !important;
    }

    .pc-prop-main-content .pc-emp-fotos {
        grid-template-columns: repeat(4, 1fr) !important;
    }

    .pc-prop-main-content .pc-emp-fotos img {
        height: 170px !important;
    }

    .pc-prop-main-content .pc-parceiros-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* ================================================
   MOBILE (max-width: 767px)
================================================ */
@media (max-width: 767px) {
    .pc-prop-main-content .pc-parceiros-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    .pc-prop-main-content .pc-parceiro-logo {
        width: 60px !important;
        height: 60px !important;
        min-width: 60px !important;
        min-height: 60px !important;
        max-width: 60px !important;
        max-height: 60px !important;
    }
}

/* ================================================
   ANIMAIS DA PROPRIEDADE – fundo desfocado
   Camada 1 = div.pc-dest-bg  (fundo desfocado)
   Camada 2 = img              (imagem inteira, contain)
================================================ */
.pc-prop-animais .pc-grid-animais {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    margin-top: 8px !important;
}

.pc-prop-animais .pc-card-animal {
    background: #ffffff !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    display: flex !important;
    flex-direction: column !important;
}

.pc-prop-animais .pc-card-animal:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 18px rgba(0,0,0,0.12) !important;
}

.pc-prop-animais .pc-card-link {
    display: flex !important;
    flex-direction: column !important;
    text-decoration: none !important;
    color: inherit !important;
    height: 100% !important;
}

/* Container da foto com fundo desfocado */
.pc-prop-animais .pc-card-thumb {
    width: 100% !important;
    height: 140px !important;
    overflow: hidden !important;
    background: #111827 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    position: relative !important;
}

/* Camada 1 – fundo desfocado (animais) */
.pc-prop-animais .pc-card-thumb .pc-dest-bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
    filter: blur(16px) brightness(0.45) !important;
    transform: scale(1.15) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

/* Camada 2 – imagem principal inteira (animais) */
.pc-prop-animais .pc-card-thumb img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    display: block !important;
    transition: transform 0.25s ease !important;
}

.pc-prop-animais .pc-card-animal:hover .pc-card-thumb img {
    transform: scale(1.03) !important;
}

.pc-prop-animais .pc-card-thumb-placeholder {
    font-size: 12px !important;
    color: #9ca3af !important;
    text-align: center !important;
    padding: 20px !important;
    position: relative !important;
    z-index: 2 !important;
}

.pc-prop-animais .pc-card-body {
    padding: 10px 12px 14px !important;
    text-align: center !important;
    background: #ffffff !important;
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.pc-prop-animais .pc-card-title {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 !important;
    line-height: 1.3 !important;
}

.pc-prop-animais .pc-section-title {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #111827 !important;
    margin: 0 0 14px !important;
}

/* Desktop: 3 colunas, altura maior */
@media (min-width: 768px) {
    .pc-prop-animais .pc-grid-animais {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 16px !important;
    }

    .pc-prop-animais .pc-card-thumb {
        height: 170px !important;
    }
}