/* Piknikovich Catalog - minimal style that matches the existing "pk-" design lexicon. */

.pk-cat{max-width:1440px;margin:0 auto;padding:32px 32px 80px;font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#1f2933}
.pk-cat h1{font-size:34px;margin:0 0 6px;letter-spacing:-.01em}
.pk-cat h2{font-size:22px;margin:36px 0 14px}
.pk-cat h3{font-size:17px;margin:0 0 6px}
.pk-cat__lead{color:#55606b;margin:0 0 28px}
.pk-cat__empty{color:#8892a0;font-style:italic}

.pk-cat__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.pk-cat-card{display:block;background:#fff;border:1px solid #e7ebef;border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .2s,transform .2s}
.pk-cat-card:hover{box-shadow:0 10px 30px rgba(15,23,35,.08);transform:translateY(-2px)}
.pk-cat-card__media{position:relative;aspect-ratio:16/10;background:#f1f4f8;overflow:hidden}
.pk-cat-card__media img,.pk-cat-card__media .pk-cat-thumb{width:100%;height:100%;display:block;object-fit:cover}
.pk-cat-card__body{padding:14px 16px 16px}
.pk-cat-card__title{font-size:16px;margin:0 0 6px;color:#1f2933}
.pk-cat-card__company{font-size:13px;color:#8892a0;margin:0 0 2px}
.pk-cat-card__city{font-size:13px;color:#55606b;margin:0 0 6px}
.pk-cat-card__desc{font-size:13.5px;color:#55606b;margin:6px 0 10px;min-height:34px}
.pk-cat-card__meta{list-style:none;padding:0;margin:0;display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:#55606b}
.pk-cat-card__meta li{display:inline-flex;align-items:center}

.pk-cat-thumb{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#3c8d5a 0%,#2f6e47 100%);color:#fff;font-weight:700;font-size:38px;letter-spacing:.03em}
.pk-cat-thumb span{display:block}

.pk-cat__pager{margin-top:28px;display:flex;gap:6px;justify-content:center}
.pk-cat__pager a,.pk-cat__pager span{padding:6px 12px;border-radius:8px;background:#f1f4f8;text-decoration:none;color:#1f2933}
.pk-cat__pager .current{background:#1f2933;color:#fff}

/* Hero */
.pk-cat-hero{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:28px;margin:8px 0 24px;align-items:start}
.pk-cat-hero__media{aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:#f1f4f8}
.pk-cat-hero__media img,.pk-cat-hero__media .pk-cat-thumb{width:100%;height:100%;object-fit:cover}
.pk-cat-hero__title{font-size:30px;margin:0 0 8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pk-cat-hero__lead{font-size:16.5px;color:#55606b;margin:0 0 14px}
.pk-cat-hero__stats,.pk-cat-hero__meta{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:14px;color:#55606b;font-size:14px}
.pk-cat-hero__meta li{padding:4px 10px;background:#f1f4f8;border-radius:999px}

/* Breadcrumbs */
.pk-breadcrumbs{font-size:13px;color:#8892a0;margin:0 0 16px}
.pk-breadcrumbs a{color:#3c8d5a;text-decoration:none}

/* Badges & stars */
.pk-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.02em}
.pk-badge--ok{background:#e2f5e8;color:#2f6e47}
.pk-stars{display:inline-flex;align-items:center;gap:4px;color:#55606b;font-size:13.5px}
.pk-star{color:#d8dde3;font-size:15px;line-height:1}
.pk-star.is-on{color:#f4a33b}
.pk-stars em{font-style:normal;font-weight:600;color:#1f2933}
.pk-stars__count{color:#8892a0}
.pk-stars--empty{color:#8892a0;font-style:italic}

/* Sections.
   Правила площадки (.pk-feature-list, .pk-facts, .pk-cat-contactbox*,
   формы .pk-cat-request-form / .pk-cat-review-form) сняты 2026-09-03
   (окно transfer-14): их печатал только старый шаблон страницы места,
   ставший мёртвым fallback-ом. Классы страницы компании
   (.pk-cat-section, .pk-cat-hero, .pk-review-list, .pk-cat-claim__form)
   не тронуты. */
.pk-cat-section{margin:32px 0}

/* Buttons */
.pk-btn{display:inline-block;padding:10px 18px;border-radius:10px;border:1px solid transparent;font-weight:600;font-size:14.5px;cursor:pointer;text-decoration:none;transition:transform .1s}
.pk-btn:active{transform:translateY(1px)}
.pk-btn--primary{background:#3c8d5a;color:#fff;border-color:#3c8d5a}
.pk-btn--primary:hover{background:#2f6e47}
.pk-btn--ghost{background:#fff;color:#1f2933;border-color:#d8dde3}
.pk-btn--ghost:hover{background:#f1f4f8}

/* Forms */
.pk-cat-claim__form{display:grid;gap:10px;max-width:520px;margin:18px 0;padding:18px;background:#fff;border:1px solid #e7ebef;border-radius:12px}
.pk-cat-claim__form label{display:grid;gap:4px;font-size:13px;color:#55606b}
.pk-cat-claim__form input,.pk-cat-claim__form textarea{font:inherit;padding:8px 10px;border:1px solid #d8dde3;border-radius:8px}

/* Reviews */
.pk-review-list{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.pk-review-item{padding:14px 16px;background:#fff;border:1px solid #e7ebef;border-radius:12px}
.pk-review-item__head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px;font-size:14px}
.pk-review-item__date{color:#8892a0;font-size:12.5px;margin-left:auto}
.pk-review-item__venue{color:#3c8d5a;text-decoration:none}
.pk-review-item h4{margin:4px 0 4px;font-size:15px}
.pk-review-item p{margin:0;color:#1f2933}

/* Claim */
.pk-cat-claim{margin:16px 0;padding:16px 18px;background:#eef6ff;border:1px solid #b9d6f8;border-radius:12px}

/* Listing CTA - primary monetization surface */
.pk-listing-cta{margin:28px 0;padding:24px;border:1px solid #cfe3d7;border-radius:16px;background:linear-gradient(180deg,#f4fbf6 0%,#fff 100%)}
.pk-listing-cta__inner{display:grid;gap:14px}
.pk-listing-cta__lead h3{margin:0 0 4px;font-size:20px}
.pk-listing-cta__lead p{margin:0;color:#55606b}
.pk-listing-cta__actions{display:flex;gap:10px;flex-wrap:wrap}
.pk-listing-cta__bullets{list-style:disc;margin:4px 0 0;padding-left:22px;color:#1f2933;font-size:14px;line-height:1.5}
.pk-listing-cta__fine{margin:4px 0 0;color:#8892a0;font-size:12.5px;line-height:1.45}
.pk-listing-form{margin-top:14px;padding:16px;background:#fff;border:1px solid #e7ebef;border-radius:12px;display:grid;gap:10px}
.pk-listing-form h4{margin:0 0 4px}
.pk-listing-form__lead{margin:0 0 6px;color:#55606b;font-size:13.5px}
.pk-listing-form label{display:grid;gap:4px;font-size:13px;color:#55606b}
.pk-listing-form input,.pk-listing-form textarea{font:inherit;padding:8px 10px;border:1px solid #d8dde3;border-radius:8px}
.pk-listing-form__result{margin:0;color:#2f6e47;font-size:13.5px}

/* Relation block on listings */
.pk-catalog-rel{margin:20px 0;padding:12px 16px;background:#f1f4f8;border-radius:10px;font-size:14px}
.pk-catalog-rel__title{font-weight:600;margin-bottom:6px}
.pk-catalog-rel ul{list-style:none;padding:0;margin:0}
.pk-catalog-rel a{color:#3c8d5a;text-decoration:none}

@media (max-width:760px){
  .pk-cat-hero{grid-template-columns:1fr}
  .pk-cat h1{font-size:28px}
  .pk-cat-hero__title{font-size:24px}
}

/* Ответ владельца под отзывом (кабинет, этап D). */
.pk-review-item__reply {
	margin: 10px 0 0 12px;
	padding: 12px 14px;
	border-left: 3px solid #2e7d46;
	border-radius: 0 10px 10px 0;
	background: #eaf3ec;
}
.pk-review-item__reply strong {
	display: block;
	margin-bottom: 5px;
	font-size: 13px;
	font-weight: 700;
	color: #255f38;
}
.pk-review-item__reply p {
	margin: 0;
	font-size: 14px;
	line-height: 1.55;
	color: #404756;
}
