/* Public review collection; shared forms, homepage reviews and admin remain independent. */
.guest-reviews { max-width:1200px; margin:0 auto; padding:32px 32px 56px; color:#e4e9e4; }
.guest-reviews-header { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:32px; margin-bottom:32px; }
.guest-reviews-header h1 { margin:0 0 14px; color:#f4f4ef; font:600 clamp(32px,3.4vw,46px)/1.2 'Playfair Display',Georgia,serif; letter-spacing:-.02em; }
.guest-reviews-header p { max-width:660px; margin:0; color:#adb9b0; font-size:15px; line-height:1.75; }
.guest-reviews-actions { display:flex; flex-direction:column; align-items:flex-end; gap:10px; }
.guest-reviews-write { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:10px 20px; border-radius:5px; background:#d4a017; color:#11170f; font-size:14px; font-weight:600; text-decoration:none; }
.guest-reviews-write:hover { background:#e4b32e; }
.guest-reviews-platforms { display:flex; flex-wrap:wrap; gap:8px 20px; justify-content:flex-end; }
.guest-reviews-platforms>a { display:inline-flex; align-items:center; min-height:44px; color:#c0cbc3; font-size:13px; text-decoration:none; }
.guest-reviews-platforms>a:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.guest-reviews .guest-review-filters { display:flex; flex-wrap:wrap; align-items:flex-end; gap:16px; margin:0; padding:0 0 24px; }
.guest-review-filters label { display:block; width:210px; min-width:0; color:#9ead9f; font-size:12px; line-height:1.5; }
.guest-review-filters label:nth-child(2) { width:180px; }
.guest-review-filters select,.guest-reviews .review-select-trigger { display:block; box-sizing:border-box; width:100%; min-height:46px; margin-top:8px; padding:10px 12px; border:1px solid #354339; border-radius:4px; background:#0e150e; color:#e8ece8; font:400 14px/1.5 Inter,system-ui,sans-serif; }
.guest-reviews .review-select-trigger { display:flex; }
.guest-review-filters option { background:#0e150e; color:#e8ece8; }
.guest-review-apply { min-height:46px; padding:10px 18px; border:1px solid #465448; border-radius:4px; background:transparent; color:#e5eae6; font:500 14px/1.5 Inter,system-ui,sans-serif; cursor:pointer; }
.guest-review-apply:hover { background:#172018; }
.guest-review-clear { display:inline-flex; align-items:center; justify-content:center; min-height:46px; color:#c3ad75; font-size:13px; text-underline-offset:4px; }
.guest-review { display:grid; grid-template-columns:210px minmax(0,1fr); gap:40px; padding:30px 0; border-top:1px solid #303c33; }
.guest-review-author { min-width:0; }
.guest-review-identity { display:flex; align-items:center; gap:12px; }
.guest-review-identity>div { min-width:0; }
.guest-review-author h2 { margin:0; color:#edf0ec; font:600 14px/1.5 Inter,system-ui,sans-serif; overflow-wrap:anywhere; }
.guest-review-identity p { margin:3px 0 0; color:#97a79c; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.guest-reviews .bks-avatar { border-color:#344138; background:#172019; color:#a7baac; }
.guest-review-safari { margin:14px 0 0; color:#b4c0b7; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.guest-review-verified { margin:6px 0 0; color:#94a398; font-size:11px; }
.guest-review-content { min-width:0; }
.guest-review-meta { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.guest-review-meta time { color:#8f9e94; font-size:12px; }
.guest-review-content h3 { margin:0 0 12px; color:#f0f1ec; font:600 23px/1.4 'Playfair Display',Georgia,serif; overflow-wrap:anywhere; }
.guest-review-text { margin:0; color:#c6d0c8; font-size:16px; line-height:1.8; white-space:pre-line; overflow-wrap:anywhere; }
.guest-reviews .review-card-excerpt { -webkit-line-clamp:5; }
.guest-reviews .review-read-more { display:inline-flex; align-items:center; min-height:44px; margin-top:4px; padding:8px 0; border:0; background:transparent; color:#d4b36b; font:500 13px/1.5 Inter,system-ui,sans-serif; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.guest-reviews .review-read-more[hidden] { display:none; }
.guest-reviews .review-photo-gallery { gap:10px; margin-top:18px; }
.guest-reviews .review-photo-gallery a { flex-basis:80px; height:80px; border-radius:4px; border-color:#303c33; }
.guest-review-source { margin-top:8px; }
.guest-reviews-empty { padding:40px 0; border-top:1px solid #303c33; }
.guest-reviews-empty h2 { margin:0 0 10px; font:600 24px/1.4 'Playfair Display',Georgia,serif; }
.guest-reviews-empty p { margin:0 0 12px; color:#a9b7ae; font-size:15px; line-height:1.7; }
.guest-reviews-empty a { display:inline-flex; align-items:center; min-height:44px; color:#d4b36b; font-size:14px; text-underline-offset:4px; }
.guest-reviews :is(a,button,select):focus-visible { outline:2px solid #d4b36b; outline-offset:4px; }
.guest-review-pagination { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px; padding-top:24px; border-top:1px solid #303c33; }
.guest-review-pagination :is(a,[aria-disabled]) { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; color:#bcc8bf; font-size:14px; text-decoration:none; }
.guest-review-pagination [aria-disabled] { color:#6f7e73; }
.guest-review-next { text-align:right; }
.guest-review-page-numbers { display:flex; align-items:center; gap:4px; }
.guest-review-page-numbers>a[aria-current] { color:#e5be65; border-bottom:2px solid #d4a017; }
.guest-review-page-numbers>span { color:#85968a; padding:0 4px; }
.guest-review-mobile-page { display:none; }
@media(max-width:767px) {
    .guest-reviews { padding:20px 16px 32px; }
    .guest-reviews-header { grid-template-columns:minmax(0,1fr); gap:18px; margin-bottom:24px; }
    .guest-reviews-header h1 { font-size:32px; margin-bottom:12px; }
    .guest-reviews-header p { font-size:14px; line-height:1.7; }
    .guest-reviews-actions { flex-direction:row; flex-wrap:wrap; align-items:center; gap:10px 20px; }
    .guest-reviews-platforms { justify-content:flex-start; }
    .guest-reviews .guest-review-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px 12px; padding-bottom:24px; }
    .guest-review-filters label,.guest-review-filters label:nth-child(2) { width:auto; }
    .guest-review-filters>.guest-review-apply { grid-column:auto; }
    .guest-review-filters:not(.has-filters)>.guest-review-apply { grid-column:1/-1; }
    .guest-review { grid-template-columns:minmax(0,1fr); gap:16px; padding:24px 0; }
    .guest-review-content h3 { font-size:22px; }
    .guest-review-text { font-size:16px; line-height:1.75; }
    .guest-review-safari { margin-top:10px; }
    .guest-review-meta { margin-bottom:12px; }
    .guest-review-pagination { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:10px; padding-top:20px; }
    .guest-review-page-numbers { display:none; }
    .guest-review-mobile-page { display:block; grid-column:2; grid-row:1; margin:0; color:#9eafa3; font-size:13px; white-space:nowrap; }
    .guest-review-prev { grid-column:1; grid-row:1; }
    .guest-review-next { grid-column:3; grid-row:1; }
    .guest-review-pagination :is(a,[aria-disabled]) { display:flex; width:100%; min-width:0; border:1px solid #354339; border-radius:4px; font-size:13px; }
    .guest-review-pagination [aria-disabled] { border-color:#253027; }
}
