/* ===== Adoption landing (scoped) ===== */
.adopt-landing{ max-width:925px; margin:22px auto 28px; padding:0 16px; }
.adopt-landing .intro{ text-align:center; max-width:62ch; margin:0 auto 18px; }
.adopt-landing h2{ margin:0 0 10px; }

/* grid: 3 across on desktop, wrap down */
.adopt-landing .adopt-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(180px,1fr));
  gap:14px;
  margin-bottom:18px;
}
@media (min-width:900px){
  .adopt-landing .adopt-grid{ grid-template-columns: repeat(3, 1fr); }
}

/* whole tile clickable; dotted underline only on text when hovered */
.adopt-landing .adopt-card{
  display:grid; place-items:center; text-align:center;
  padding:18px 14px; border-radius:14px;
  background:#fcfcfb;
  border:1px solid rgba(167,124,207,.18);
  outline:1px solid rgba(0,0,0,.04);
  box-shadow:0 4px 12px rgba(70,56,104,.10);
  transition: transform .12s ease, box-shadow .18s ease;
  color:var(--text); text-decoration:none;
}
.adopt-landing .adopt-card:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(70,56,104,.16),
             0 0 0 3px rgba(90,201,180,.10) inset;
}
.adopt-landing .adopt-card i{
  font-size:1.25rem; color:#5ac9b4; margin-bottom:6px;
}
.adopt-landing .adopt-card .label{
  font-family:'Raleway',sans-serif; font-weight:700; letter-spacing:.04em;
  color:var(--text); text-transform:uppercase; text-decoration:none;
}
.adopt-landing .adopt-card:hover .label,
.adopt-landing .adopt-card:focus-visible .label{
  text-decoration-line:underline;
  text-decoration-style:dotted;
  text-underline-offset:6px;
  text-decoration-thickness:2px;
  color:var(--link-hover);
}

/* dropdown block */
.adopt-landing .adopt-block{
  background:#fcfcfb; border-radius:14px; padding:14px 16px; margin-top:14px;
  outline:1px solid rgba(0,0,0,.04); border:1px solid rgba(167,124,207,.18);
  box-shadow:0 4px 12px rgba(70,56,104,.10);
}
.adopt-landing .adopt-block summary{
  cursor:pointer; list-style:none;
  font-family:'Raleway',sans-serif; font-weight:700;
  text-transform:uppercase; letter-spacing:.06em; color:var(--title);
}
.adopt-landing .adopt-block summary::-webkit-details-marker{ display:none; }
.adopt-landing .adopt-block summary::after{
  content:"▾"; margin-left:8px; font-weight:700;
  color:color-mix(in srgb, var(--title) 70%, #000 30%);
}
.adopt-landing .adopt-block[open] summary::after{ content:"▴"; }

/* lists inside */
.adopt-landing .qa{ margin:10px 0 0; }
.adopt-landing .qa li + li{ margin-top:6px; }
.adopt-landing .rules{
  margin:8px 0 0 22px;
  padding:0;
}
.adopt-landing .rules li{ margin:4px 0; }
