/* Bloco Informações para as Famílias */
.family-info-section{background:linear-gradient(180deg,#fff 0%,#f7fbff 100%)}
.family-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.family-info-card{min-width:0;border:1px solid rgba(8,39,69,.10);border-radius:22px;background:#fff;color:#082745;box-shadow:0 10px 28px rgba(8,39,69,.07);overflow:hidden;display:flex;flex-direction:column;text-align:left;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;cursor:pointer;text-decoration:none}
.family-info-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(8,39,69,.12);border-color:rgba(23,106,164,.25)}
.family-info-card.workshops{grid-column:span 2;display:grid;grid-template-columns:minmax(180px,.86fr) 1.14fr;min-height:245px;background:linear-gradient(145deg,#fff7fb,#f5fbff)}
.family-info-media{position:relative;min-height:220px;background:linear-gradient(135deg,#ffe5f1,#dff3ff);overflow:hidden}
.family-info-media img{width:100%;height:100%;object-fit:cover;display:block}
.family-info-media::after{content:"Ampliar";position:absolute;right:12px;bottom:12px;padding:7px 10px;border-radius:999px;background:rgba(8,39,69,.86);color:#fff;font-size:.72rem;font-weight:850;backdrop-filter:blur(8px)}
.family-info-card-body{padding:22px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.family-info-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#eef7fd;color:#176aa4;font-size:1.35rem;margin-bottom:15px}
.family-info-card.workshops .family-info-icon{background:#ffe9f3;color:#e81579}
.family-info-card h3{font-size:1.14rem;line-height:1.18;margin:0 0 8px;color:#082745;letter-spacing:-.015em}
.family-info-card p{margin:0;color:#617181;font-size:.9rem;line-height:1.45}
.family-info-action{margin-top:16px;color:#176aa4;font-weight:850;font-size:.86rem}
.family-info-card.workshops .family-info-action{color:#d10f6b}
.family-info-card.is-disabled{opacity:.58;cursor:default;pointer-events:none}

.family-workshops-modal{position:fixed;inset:0;z-index:120;background:rgba(3,18,33,.72);display:none;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(7px)}
.family-workshops-modal.open{display:flex}
.family-workshops-dialog{width:min(900px,96vw);max-height:94vh;background:#fff;border-radius:24px;box-shadow:0 28px 80px rgba(0,0,0,.28);overflow:hidden;position:relative;display:flex;flex-direction:column}
.family-workshops-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid rgba(8,39,69,.10)}
.family-workshops-head strong{color:#082745;font-size:1rem}
.family-workshops-close{border:0;background:#eef4f8;color:#082745;width:40px;height:40px;border-radius:12px;font-size:1.5rem;cursor:pointer;line-height:1}
.family-workshops-scroll{overflow:auto;padding:14px;background:#f6f9fb}
.family-workshops-scroll img{width:min(100%,760px);height:auto;margin:auto;border-radius:18px;box-shadow:0 10px 30px rgba(8,39,69,.10)}

@media(max-width:900px){
  .family-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .family-info-card.workshops{grid-column:1/-1}
}
@media(max-width:620px){
  .family-info-grid{grid-template-columns:1fr;gap:12px}
  .family-info-card.workshops{grid-column:auto;grid-template-columns:1fr;min-height:0}
  .family-info-media{min-height:0;aspect-ratio:4/3}
  .family-info-card-body{padding:19px}
  .family-workshops-modal{padding:8px}
  .family-workshops-dialog{max-height:97vh;border-radius:18px}
  .family-workshops-scroll{padding:8px}
}
