/* Community photos: card badges, #practice section, lightbox */
.practice-badge { align-items:center; background:rgba(255,255,255,.92); border-radius:999px; top:58px; box-shadow:0 2px 8px rgba(43,31,23,.15); display:flex; left:10px; padding:3px 8px 3px 3px; position:absolute; text-decoration:none; z-index:5; }
.practice-badge img { border:2px solid #fff; border-radius:50%; height:26px; margin-left:-9px; object-fit:cover; width:26px; background:#f4ede1; }
.practice-badge img:first-child { margin-left:0; }
.practice-badge__count { color:#635244; font-size:12px; font-weight:700; margin-left:6px; }
.practice-badge:hover { background:#fff; }

.practice { margin:40px auto 0; max-width:1080px; padding:0 16px; }
.practice-head { align-items:center; display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; margin-bottom:14px; }
.practice-head h2 { font:800 22px "Fraunces",Georgia,serif; margin:0; }
.practice-grid { display:grid; gap:16px; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); list-style:none; margin:0; padding:0; }
.practice-item { background:#fff; border:1px solid rgba(59,42,30,.1); border-radius:18px; overflow:hidden; padding-bottom:12px; }
.practice-photo { display:block; }
.practice-item img, .practice-item video { aspect-ratio:1; background:#f4ede1; display:block; object-fit:cover; width:100%; }
.practice-cap { color:#2b1f17; font-size:14.5px; margin:10px 12px 0; }
.practice-by { color:#948273; font-size:12.5px; margin:6px 12px 0; }
.practice-report { background:none; border:0; box-shadow:none; color:#948273; cursor:pointer; font:inherit; min-height:0; padding:0 0 0 6px; text-decoration:underline; }
.practice-report:hover { background:none; color:#b83a28; transform:none; box-shadow:none; }
.practice-empty { color:#635244; margin:0; }
.practice-report-form { display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; }
.practice-report-form input { border:1px solid rgba(59,42,30,.2); border-radius:10px; flex:1; font:inherit; font-size:13px; min-width:0; padding:6px 8px; }
.practice-report-form button { background:#b83a28; border:0; border-radius:999px; color:#fff; cursor:pointer; font:inherit; font-size:13px; padding:6px 12px; }

.practice-lightbox { background:#fbf9f5; border:0; border-radius:20px; box-shadow:0 14px 28px rgba(43,31,23,.12); color:#2b1f17; max-height:92vh; max-width:min(92vw,900px); padding:0; }
.practice-lightbox::backdrop { background:rgba(244,237,225,.72); backdrop-filter:blur(6px); }
.practice-lightbox img { display:block; max-height:78vh; max-width:100%; margin:0 auto; }
.practice-lightbox p { margin:0; padding:12px 16px 16px; text-align:center; }
.practice-lightbox button { background:rgba(255,255,255,.92); border:0; border-radius:50%; box-shadow:0 2px 8px rgba(43,31,23,.1); color:#2b1f17; cursor:pointer; font-size:26px; height:44px; position:absolute; width:44px; }
.pl-close { right:8px; top:8px; }
.pl-prev { left:8px; top:40%; }
.pl-next { right:8px; top:40%; }
.practice-like-row { margin:8px 12px 0; }
.practice-like { align-items:center; background:none; border:1px solid rgba(59,42,30,.14); border-radius:999px; box-shadow:none; color:#635244; cursor:pointer; display:inline-flex; font:inherit; font-size:14px; gap:6px; min-height:0; padding:4px 12px; }
.practice-like:hover { background:#faece9; color:#b83a28; transform:none; box-shadow:none; }
.practice-like[aria-pressed="true"] { background:#faece9; color:#b83a28; border-color:rgba(184,58,40,.35); }

/* "Usage & tips" / "Practised by real people": title, who shared, and the button that invites you to add yours */
.practice-title { display: grid; gap: 4px; min-width: 0; }
.practice-people { display: inline-flex; align-items: center; gap: 8px; color: var(--ink-soft, #635244); font-size: 13.5px; font-weight: 600; text-decoration: none; }
.practice-people:hover { color: var(--brand-red, #b83a28); }
.practice-faces { display: inline-flex; }
.practice-faces img { width: 24px; height: 24px; border: 2px solid #fff; border-radius: 50%; margin-left: -8px; object-fit: cover; background: #f4ede1; }
.practice-faces img:first-child { margin-left: 0; }
.eq-meta .practice-people { font-size: 13px; }
.practice-add { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 18px 0 14px; }
.practice-add svg { flex: none; }
