
body.bptp-city-page{margin:0;background:#080d18;color:#f7f8fc}
body.bptp-city-page .wp-site-blocks,
body.bptp-city-page .wp-block-post-content,
body.bptp-city-page .entry-content{margin:0!important;padding:0!important;max-width:none!important}
.bptp{min-height:100vh;background:#080d18;color:#f7f8fc;font-family:'DM Sans',system-ui,sans-serif}
.bptp *{box-sizing:border-box}
.bptp h1,.bptp h2,.bptp h3{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.bptp__wrap{width:min(1120px,calc(100% - 36px));margin:0 auto}
.bptp__breadcrumb{padding:16px 0;font-size:.8rem;color:#8a90a0}
.bptp__breadcrumb a{color:#3ecfab;text-decoration:none}
.bptp__hero{padding:82px 0 72px;text-align:center;border-block:1px solid rgba(255,255,255,.09);background:radial-gradient(circle at 50% 0%,rgba(62,207,171,.15),transparent 36%),linear-gradient(180deg,#09101d,#0b1323)}
.bptp__eyebrow{display:inline-flex;padding:7px 13px;border:1px solid rgba(62,207,171,.35);border-radius:999px;background:rgba(62,207,171,.07);color:#3ecfab;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.bptp__hero h1{max-width:920px;margin:24px auto 20px;font-size:clamp(2.4rem,6vw,4.9rem);line-height:1.02;letter-spacing:-.05em;text-wrap:balance}
.bptp__hero h1 span{display:block;margin-top:8px;color:#3ecfab}
.bptp__lead{max-width:840px;margin:0 auto 28px;color:#c8cdd8;font-size:clamp(1.08rem,1.8vw,1.25rem);line-height:1.75}
.bptp__meta{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.bptp__meta span{padding:8px 13px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.035);color:#c8cdd8;font-size:.8rem}
.bptp__meta strong{color:#f5a623}
.bptp__section{padding:64px 0;border-bottom:1px solid rgba(255,255,255,.09)}
.bptp__section--alt{background:#0b1020;box-shadow:0 0 0 100vmax #0b1020;clip-path:inset(0 -100vmax)}
.bptp__label{margin-bottom:12px;color:#3ecfab;font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.bptp__section h2{max-width:900px;margin:0 0 18px;font-size:clamp(1.8rem,3.7vw,2.7rem);line-height:1.12;letter-spacing:-.03em}
.bptp__section p{max-width:900px;margin:0 0 16px;color:#c8cdd8;font-size:1.06rem;line-height:1.85}
.bptp__story{margin-top:24px;padding:24px;border:1px solid rgba(62,207,171,.3);border-radius:16px;background:rgba(62,207,171,.055)}
.bptp__links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.bptp__links a{padding:9px 14px;border:1px solid rgba(62,207,171,.26);border-radius:999px;color:#3ecfab;text-decoration:none;font-weight:700}
.bptp__profiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px}
.bptp__card{overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:#141e35}
.bptp__photo{height:250px;background:linear-gradient(135deg,#16223a,#24385c);display:flex;align-items:center;justify-content:center;color:#3ecfab;font:800 3rem 'Outfit',sans-serif}
.bptp__photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.bptp__card-body{padding:22px}
.bptp__card h3{margin:0 0 8px;font-size:1.35rem}
.bptp__sub{color:#8a90a0;font-size:.9rem;line-height:1.6}
.bptp__tags{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}
.bptp__tags span{padding:5px 9px;border:1px solid rgba(255,255,255,.09);border-radius:999px;color:#c8cdd8;font-size:.72rem}
.bptp__btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 17px;border-radius:999px;background:#3ecfab;color:#071017;text-decoration:none;font-weight:800}
.bptp__b2b{padding:30px;border:1px solid rgba(62,207,171,.3);border-radius:20px;background:radial-gradient(circle at 90% 10%,rgba(43,130,217,.12),transparent 34%),#141e35}
.bptp__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.bptp__btn--outline{background:transparent;color:#3ecfab;border:1px solid rgba(62,207,171,.45)}
.bptp__rights{margin-top:18px!important;color:#8a90a0!important;font-size:.88rem!important}
.bptp__rights a{color:#3ecfab}
@media(max-width:720px){
  .bptp__hero{padding:58px 0 52px}
  .bptp__profiles{grid-template-columns:1fr}
  .bptp__meta{display:grid;grid-template-columns:1fr}
  .bptp__actions{flex-direction:column}
  .bptp__actions .bptp__btn{width:100%}
  .bptp__links a{width:calc(50% - 5px);text-align:center}
}


/* =========================================================
   v1.0.2 — isolamento dal design system globale BeastPick
   ========================================================= */

/* Il CSS globale usa .beastpick-page a e può vincere sui pulsanti
   territoriali. Qui aumentiamo la specificità e blindiamo contrasto. */
body.bptp-city-page .bptp a.bptp__btn,
body.bptp-city-page .bptp a.bptp__btn:visited{
  color:#071017 !important;
  background:#3ecfab !important;
  border-color:#3ecfab !important;
  text-decoration:none !important;
}
body.bptp-city-page .bptp a.bptp__btn:hover,
body.bptp-city-page .bptp a.bptp__btn:focus{
  color:#071017 !important;
  background:#55d8b8 !important;
  transform:translateY(-1px);
}
body.bptp-city-page .bptp a.bptp__btn--outline,
body.bptp-city-page .bptp a.bptp__btn--outline:visited{
  color:#3ecfab !important;
  background:transparent !important;
  border-color:rgba(62,207,171,.55) !important;
}
body.bptp-city-page .bptp a.bptp__btn--outline:hover,
body.bptp-city-page .bptp a.bptp__btn--outline:focus{
  color:#071017 !important;
  background:#3ecfab !important;
}

/* Evita che le regole globali delle card alterino padding e radius. */
body.bptp-city-page .bptp .bptp__card{
  padding:0 !important;
  border-radius:16px !important;
  background:#141e35 !important;
}
body.bptp-city-page .bptp .bptp__card:hover{
  transform:none !important;
}

/* Foto meno aggressive: formato 4:3 e punto focale più naturale. */
body.bptp-city-page .bptp .bptp__photo{
  height:auto !important;
  aspect-ratio:4 / 3;
  overflow:hidden;
}
body.bptp-city-page .bptp .bptp__photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 24% !important;
}

/* Gerarchia e leggibilità card. */
body.bptp-city-page .bptp .bptp__card-body{
  padding:22px !important;
}
body.bptp-city-page .bptp .bptp__card h3{
  color:#f7f8fc !important;
}
body.bptp-city-page .bptp .bptp__sub{
  color:#aeb6c8 !important;
  font-size:.88rem;
}
body.bptp-city-page .bptp .bptp__tags span{
  color:#c8cdd8 !important;
  background:#101a2e;
}

/* CTA: limita la riga di testo e rende i pulsanti più leggibili. */
body.bptp-city-page .bptp .bptp__b2b{
  padding:clamp(24px,4vw,34px) !important;
}
body.bptp-city-page .bptp .bptp__b2b > p{
  max-width:760px;
}
body.bptp-city-page .bptp .bptp__actions{
  align-items:center;
}
body.bptp-city-page .bptp .bptp__rights{
  max-width:900px;
}

/* Mobile */
@media(max-width:720px){
  body.bptp-city-page .bptp .bptp__photo{
    aspect-ratio:16 / 10;
  }
  body.bptp-city-page .bptp .bptp__actions a.bptp__btn{
    width:100%;
  }
}


/* v1.0.7 — etichetta ambito territoriale/nazionale */
.bptp__scope{
  display:inline-flex;
  align-items:center;
  margin:0 0 10px;
  padding:5px 9px;
  border:1px solid rgba(62,207,171,.28);
  border-radius:999px;
  background:rgba(62,207,171,.06);
  color:#3ecfab;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}






/* v1.4.0 — verifica documentale OCF */
.bptp__verification{
  display:grid;
  gap:8px;
  margin:14px 0 16px;
  padding:14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  background:rgba(255,255,255,.025);
}
.bptp__verification div{
  display:grid;
  grid-template-columns:minmax(110px,.8fr) minmax(0,1.2fr);
  gap:12px;
}
.bptp__verification dt{
  color:rgba(255,255,255,.62);
  font-size:.76rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.bptp__verification dd{
  margin:0;
  color:rgba(255,255,255,.90);
  font-size:.86rem;
}
.bptp__verification a{
  color:inherit;
  text-decoration:underline;
  text-underline-offset:3px;
}
@media (max-width:620px){
  .bptp__verification div{
    grid-template-columns:1fr;
    gap:3px;
  }
}


/* v1.4.1 — attribuzione fonte territoriale */
.bptp__source{
  margin-top:16px!important;
  font-size:.78rem!important;
  line-height:1.5!important;
  opacity:.72;
}
.bptp__source a{
  color:inherit!important;
  text-decoration:underline;
  text-underline-offset:3px;
}
