
/* PetsDirect v3.6 — visual, legal & IMOscoring patch */

/* Registo profissional — secção mais visual */
.pro-community-section{padding:42px 0}
.pro-community-card{
  display:grid;grid-template-columns:minmax(0, .9fr) minmax(420px,1.1fr);
  align-items:stretch;overflow:hidden;border:1px solid #e5e7e9;border-radius:28px;
  background:linear-gradient(135deg,#fff 0%,#fff8f2 48%,#f6f1eb 100%);
  box-shadow:0 18px 50px rgba(17,24,39,.08)
}
.pro-community-copy{padding:46px 44px;display:flex;flex-direction:column;justify-content:center}
.pro-community-copy h2{font-size:clamp(2.15rem,4vw,3.55rem);line-height:.98;max-width:10ch;margin:8px 0 18px}
.pro-community-copy p:not(.eyebrow){font-size:1.05rem;line-height:1.65;color:var(--muted);max-width:54ch}
.pro-community-copy .ctas{margin-top:24px}
.pro-community-visual{min-height:365px;position:relative;background:#f5eee7}
.pro-community-visual img{width:100%;height:100%;display:block;object-fit:cover;object-position:58% center}
.pro-community-badge{
  display:inline-flex;align-items:center;gap:8px;width:max-content;margin-top:22px;padding:8px 12px;
  border:1px solid #eadfd5;border-radius:999px;background:#fff;color:#59636a;font-size:.86rem;font-weight:700
}

/* Links legais / consumidor */
.legal-links{display:flex;gap:10px 16px;flex-wrap:wrap;align-items:center}
.legal-links a{text-decoration:underline;text-underline-offset:3px}
.legal-links .legal-complaints-link{
  text-decoration:none!important;display:inline-flex;align-items:center;gap:7px;padding:7px 11px;
  border:1px solid #ff6a22;border-radius:999px;color:#fff;background:#ff6a22;font-weight:800
}
.legal-links .legal-complaints-link:hover{filter:brightness(.96)}
.consumer-legal-note{margin-top:8px;font-size:.78rem;opacity:.75}

/* IMOscoring modal */
.pd-location-modal[hidden]{display:none!important}
.pd-location-modal{
  position:fixed;inset:0;z-index:100500;display:grid;place-items:center;padding:20px;
  background:rgba(12,18,22,.72);backdrop-filter:blur(7px)
}
.pd-location-dialog{
  width:min(1080px,96vw);max-height:94vh;overflow:auto;position:relative;
  background:#fff;border-radius:24px;box-shadow:0 28px 90px rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.65)
}
.pd-location-close{
  position:absolute;right:14px;top:14px;z-index:5;width:42px;height:42px;border:0;border-radius:999px;
  background:rgba(255,255,255,.94);box-shadow:0 5px 18px rgba(0,0,0,.16);font-size:30px;line-height:1;cursor:pointer;color:#333
}
.pd-location-art{display:block;width:100%;height:auto;border-radius:24px 24px 0 0}
.pd-location-actions{
  display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:center;padding:17px 20px 20px;background:#fff
}
.pd-location-actions .btn{min-width:230px;justify-content:center}
.pd-location-caption{
  margin:0;padding:0 24px 18px;text-align:center;color:var(--muted);font-size:.92rem
}

/* Páginas legais */
.legal-page-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}
.legal-call-note{font-size:.88em;color:var(--muted)}
.legal-box{padding:18px 20px;border:1px solid #dde3e5;border-radius:16px;background:#f8faf9;margin:18px 0}

@media(max-width:900px){
  .pro-community-card{grid-template-columns:1fr}
  .pro-community-copy{padding:34px 26px}
  .pro-community-copy h2{max-width:15ch}
  .pro-community-visual{min-height:285px}
}
@media(max-width:640px){
  .pro-community-section{padding:26px 0}
  .pro-community-card{border-radius:20px}
  .pro-community-copy{padding:28px 20px}
  .pro-community-visual{min-height:235px}
  .pd-location-modal{padding:10px}
  .pd-location-dialog{border-radius:18px}
  .pd-location-art{border-radius:18px 18px 0 0}
  .pd-location-actions{padding:14px}
  .pd-location-actions .btn{width:100%;min-width:0}
}
