.featured-section{padding:var(--space-24) 0 var(--space-16);background:var(--color-bg)}.section-header{text-align:center;margin-bottom:var(--space-12);max-width:720px;margin-inline:auto}.section-header h2{margin:var(--space-3) 0 var(--space-4)}.section-lead{color:var(--color-text-muted);line-height:1.7}.featured-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-6)}.featured-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;cursor:pointer;transition:transform var(--duration-base) var(--ease-premium),box-shadow var(--duration-base) var(--ease-premium),border-color var(--duration-base) var(--ease-premium)}.featured-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px -16px #14100e26;border-color:var(--color-accent)}.featured-image{position:relative;aspect-ratio:16 / 11;overflow:hidden;background:var(--color-bg-deep)}.featured-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-premium)}.featured-card:hover .featured-image img{transform:scale(1.05)}.featured-image-badge{position:absolute;top:var(--space-4);left:var(--space-4);width:32px;height:32px;background:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026}.featured-content{padding:var(--space-6)}.featured-rating{display:flex;gap:1.5px;margin-bottom:var(--space-3)}.featured-body{font-family:var(--font-display);font-style:italic;font-size:1.0625rem;line-height:1.55;color:var(--color-text);margin:0 0 var(--space-6);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.featured-footer{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.all-reviews{background:var(--color-bg-elevated);padding:var(--space-24) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin:0 0 var(--space-12)}.filter-pill{padding:.5rem 1.25rem;background:transparent;border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-small);letter-spacing:.04em;border-radius:999px;cursor:pointer;transition:all var(--duration-base) var(--ease-premium)}.filter-pill:hover{border-color:var(--color-accent)}.filter-pill.is-active{background:var(--color-text);border-color:var(--color-text);color:#fff}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:var(--space-12);min-height:200px}@media (max-width: 900px){.reviews-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.reviews-grid{grid-template-columns:1fr}}.review-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:transform var(--duration-base) var(--ease-premium),border-color var(--duration-base) var(--ease-premium),box-shadow var(--duration-base) var(--ease-premium);min-height:220px}.review-card:hover{transform:translateY(-3px);border-color:var(--color-accent);box-shadow:0 16px 32px -12px #14100e1f}.review-meta{display:flex;align-items:center;justify-content:space-between}.review-source-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000014}.review-rating{display:flex;gap:1.5px}.review-body{font-family:var(--font-display);font-style:italic;font-size:1rem;line-height:1.55;color:var(--color-text);margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.review-footer{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.review-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-deep) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8125rem;letter-spacing:.04em;flex-shrink:0;box-shadow:0 4px 12px #b8935e4d}.review-author-info{min-width:0;flex:1}.review-author-name{font-family:var(--font-body);font-size:.9375rem;font-weight:500;line-height:1.2;margin:0;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-author-event{font-family:var(--font-body);font-size:var(--fs-eyebrow);color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;margin:2px 0 0}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-2);flex-wrap:wrap}.page-btn{min-width:40px;height:40px;padding:0 .875rem;background:transparent;border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-small);font-weight:500;border-radius:8px;cursor:pointer;transition:all var(--duration-quick) var(--ease-premium);display:inline-flex;align-items:center;justify-content:center}.page-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent-deep)}.page-btn.is-active{background:var(--color-text);border-color:var(--color-text);color:#fff}.page-btn:disabled{opacity:.35;cursor:not-allowed}.page-prev,.page-next{font-size:1.25rem;line-height:1}.no-results{grid-column:1 / -1;text-align:center;color:var(--color-text-muted);font-style:italic;padding:var(--space-16) 0}.add-review-section{padding:var(--space-24) 0;background:var(--color-bg)}.review-form{display:flex;flex-direction:column;gap:var(--space-5);max-width:720px;margin:0 auto}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.form-field{display:flex;flex-direction:column;gap:var(--space-2)}.form-field span,.form-field legend{font-size:var(--fs-small);color:var(--color-text-muted);letter-spacing:.02em}.form-field em{color:var(--color-text-subtle);font-style:italic;font-weight:400}.form-field input[type=text],.form-field input[type=email],.form-field input[type=tel],.form-field input[type=date],.form-field input[type=number],.form-field select,.form-field textarea{padding:.875rem 1rem;border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-body);border-radius:6px;transition:border-color var(--duration-quick) var(--ease-premium),box-shadow var(--duration-quick) var(--ease-premium)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #b8935e26}.form-field textarea{resize:vertical;min-height:120px}.rating-field{border:none;padding:0;margin:0}.star-rating{display:inline-flex;gap:var(--space-1);margin-top:var(--space-2)}.star-label{cursor:pointer;color:var(--color-border);transition:color .2s var(--ease-premium),transform .2s var(--ease-premium)}.star-label:hover{transform:scale(1.1)}.star-label.is-active{color:var(--color-accent)}.star-label input{position:absolute;left:-9999px}.star-icon{display:block}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.photo-field input[type=file]{padding:.75rem;border:2px dashed var(--color-border);background:var(--color-bg-elevated);cursor:pointer;transition:border-color var(--duration-quick) var(--ease-premium);border-radius:6px}.photo-field input[type=file]:hover{border-color:var(--color-accent)}.photo-preview{position:relative;margin-top:var(--space-3);width:200px;aspect-ratio:4 / 3;border-radius:8px;overflow:hidden;border:1px solid var(--color-border)}.photo-preview img{width:100%;height:100%;object-fit:cover}.photo-remove{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;background:#000000b3;color:#fff;border:none;cursor:pointer;font-size:1.25rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.form-consent{color:var(--color-text-subtle);line-height:1.5}.hidden-field{position:absolute;left:-10000px}.btn-submit{align-self:flex-start;padding:1rem 2.5rem;margin-top:var(--space-3)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.form-status{padding:var(--space-4) var(--space-5);border-radius:8px;font-size:var(--fs-small);line-height:1.5;border:1px solid}.form-status.is-success{background:#4a906414;border-color:#4a90644d;color:#2d5a3d}.form-status.is-error{background:#b8464614;border-color:#b846464d;color:#8a3030}.review-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--space-6);opacity:0;visibility:hidden;transition:opacity .4s var(--ease-premium),visibility 0s linear .4s}.review-modal[aria-hidden=false]{opacity:1;visibility:visible;transition-delay:0s}.review-modal-backdrop{position:absolute;inset:0;background:#0a0806b3;backdrop-filter:blur(8px);cursor:pointer}.review-modal-content{position:relative;max-width:640px;width:100%;max-height:90vh;overflow-y:auto;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:16px;padding:var(--space-12);box-shadow:0 60px 120px -30px #0006;transform:scale(.95);transition:transform .4s var(--ease-premium)}.review-modal[aria-hidden=false] .review-modal-content{transform:scale(1)}.review-modal-photo{margin:calc(var(--space-12) * -1) calc(var(--space-12) * -1) var(--space-6);padding:0;aspect-ratio:16 / 9;overflow:hidden;background:var(--color-bg-deep);border-radius:16px 16px 0 0}.review-modal-photo img{width:100%;height:100%;object-fit:cover;display:block}.review-modal-close{position:absolute;top:var(--space-4);right:var(--space-4);width:36px;height:36px;border-radius:50%;background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s var(--ease-premium)}.review-modal-close:hover{background:var(--color-text);color:#fff}.review-modal-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.review-modal-rating{display:flex;gap:2px}.review-modal-source{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-eyebrow);color:var(--color-text-muted);letter-spacing:.1em;text-transform:uppercase;margin:0}.review-modal-quote{font-family:var(--font-display);font-style:italic;font-size:clamp(1.125rem,1.6vw,1.5rem);line-height:1.5;color:var(--color-text);margin:0 0 var(--space-8);padding:0}.review-modal-author{display:flex;align-items:center;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.review-modal-avatar{width:48px;height:48px;font-size:1rem}.review-modal-name{font-size:1.125rem;color:var(--color-text);margin:0;font-weight:500}.review-modal-event{font-size:var(--fs-small);color:var(--color-accent-deep);margin:2px 0 0;letter-spacing:.06em;text-transform:uppercase}
