/* Basic utility styles for cards/chips/modal */
.bklp-hero { padding: 2rem 1rem; }
.bklp-hero__card { max-width: 1100px; margin: 0 auto; background: #fff; border-radius: 1rem; padding: 1.5rem; box-shadow: 0 10px 30px rgba(0,0,0,0.08); }
.bklp-hero__title { font-size: 1.75rem; margin: 0 0 .25rem; }
.bklp-hero__subtitle { color: #555; margin: 0 0 1rem; }

.bklp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px,1fr)); gap: .75rem; }
.bklp-card { display: flex; justify-content: space-between; align-items: center; padding: .9rem 1rem; border: 1px solid #e5e7eb; border-radius: .75rem; background: #fafafa; cursor: pointer; transition: transform .06s ease, box-shadow .06s ease; }
.bklp-card:hover { transform: translateY(-1px); box-shadow: 0 4px 14px rgba(0,0,0,0.08); }
.bklp-card__name { font-weight: 600; }
.bklp-card__tag { font-size: .8rem; color: #2563eb; background: #eff6ff; padding: .1rem .5rem; border-radius: 999px; }

.bklp-chip { display: inline-block; border: 1px solid #e5e7eb; padding: .4rem .7rem; border-radius: 999px; margin: .2rem; cursor: pointer; background: #fff; }
.bklp-chip--active { background: #eef2ff; border-color: #c7d2fe; }

.bklp-modal { position: fixed; inset: 0; background: rgba(0,0,0,.45); z-index: 9999; }
.bklp-modal__dialog { width: min(740px, 92vw); margin: 10vh auto; background: #fff; border-radius: 1rem; padding: 1rem; }

.bklp-notice { margin-top: .75rem; }
.bklp-notice--warn { color: #b45309; }
.bklp-notice--ok { color: #065f46; }

.bklp-testimonials { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px,1fr)); gap: 1rem; }
.bklp-testimonial { border: 1px solid #eee; border-radius: .75rem; padding: .75rem; background: #fff; }
.bklp-testimonial blockquote { margin: .5rem 0; font-style: italic; }
.bklp-testimonial img { max-width: 100%; height: auto; border-radius: .5rem; }

.bklp-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px,1fr)); gap: .5rem; }
.bklp-gallery__item { background: #fff; border: 1px solid #eee; padding: .5rem; border-radius: .5rem; }
.bklp-gallery__item img { max-width: 100%; height: auto; display: block; border-radius: .25rem; }
