/* Lawyer profile: "Personal Details" (attorneys/_template.php). Site gold #b89b5e, charcoal #343434. */
.cs-profile { display: grid; gap: 30px; margin: 30px 0 60px; }

/* Key facts */
.cs-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid #ece4d3; background: #fbf8f2; }
.cs-fact { padding: 18px 16px; display: flex; flex-direction: column; gap: 4px; text-align: center; }
.cs-fact + .cs-fact { border-left: 1px solid #ece4d3; }
.cs-fact-value { font-family: "Poppins", sans-serif; font-size: 26px; font-weight: 600; line-height: 1.1; color: #343434; }
.cs-fact-label { font-family: "Roboto", sans-serif; font-size: 11px; letter-spacing: 1.4px; text-transform: uppercase; color: #b89b5e; }

/* Details table */
.cs-details { margin: 0; border-top: 1px solid #ece4d3; }
.cs-row { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 20px; padding: 14px 0; border-bottom: 1px solid #ece4d3; }
.cs-row dt { font-family: "Roboto", sans-serif; font-size: 11px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: #b89b5e; padding-top: 3px; }
.cs-row dd { margin: 0; font-family: "Roboto", sans-serif; font-size: 15px; line-height: 1.6; color: #343434; }

/* Small section titles */
.cs-block { display: grid; gap: 14px; }
.cs-block-title { margin: 0; font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 600; letter-spacing: 1.6px; text-transform: uppercase; color: #343434; display: flex; align-items: center; gap: 12px; }
.cs-block-title::after { content: ""; flex: 1; height: 1px; background: #ece4d3; }

/* Practice focus tags */
.cs-tags { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.cs-tags li { display: inline-flex; align-items: center; gap: 9px; padding: 9px 16px; border: 1px solid #d9c9a3; background: #fff; font-family: "Poppins", sans-serif; font-size: 13.5px; font-weight: 500; color: #343434; transition: border-color .2s, background .2s; }
.cs-tags li:hover { border-color: #b89b5e; background: #fbf8f2; }
.cs-tags li i { font-size: 18px; color: #b89b5e; line-height: 1; }
.cs-tags li i::before { margin: 0; font-size: 18px; }

/* Contact rows */
.cs-contacts { display: grid; gap: 10px; }
.cs-contact { display: flex; align-items: center; gap: 16px; padding: 12px 16px; border: 1px solid #ece4d3; background: #fff; text-decoration: none; transition: border-color .2s, background .2s; }
.cs-contact:hover { border-color: #b89b5e; background: #fbf8f2; text-decoration: none; }
.cs-contact-icon { flex: none; width: 40px; height: 40px; display: grid; place-items: center; background: #b89b5e; color: #fff; font-size: 15px; }
.cs-contact-text { display: flex; flex-direction: column; min-width: 0; font-family: "Roboto", sans-serif; font-size: 15px; color: #343434; overflow-wrap: anywhere; }
.cs-contact-text small { font-size: 11px; letter-spacing: 1.4px; text-transform: uppercase; color: #8b857b; }

@media (max-width: 575px) {
  .cs-facts { grid-template-columns: minmax(0, 1fr); }
  .cs-fact + .cs-fact { border-left: 0; border-top: 1px solid #ece4d3; }
  .cs-row { grid-template-columns: minmax(0, 1fr); gap: 4px; }
}

/* Offices: the lawyer's own first, then the firm's other office */
.cs-office + .cs-office { margin-top: 12px; padding-top: 12px; border-top: 1px dashed #ece4d3; }
.cs-office b { font-family: "Poppins", sans-serif; font-weight: 600; color: #343434; }
.cs-office a { color: #b89b5e; text-decoration: none; }
