/* SESSIES GRID */
.sessies-overview { background:var(--color-white); }
.sessies-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:32px; }
.sessie-card { text-align:center;cursor:pointer;transition:transform var(--transition); }
.sessie-card:hover { transform:translateY(-5px); }
.sessie-img-wrap { width:130px;height:130px;border-radius:50%;overflow:hidden;margin:0 auto 16px;border:3px solid var(--color-secondary);background:var(--color-bg-section); }
.sessie-img-wrap img { width:100%;height:100%;object-fit:cover; }
.sessie-img-placeholder { width:100%;height:100%;background:var(--color-bg-section); }
.sessie-card h3 { font-family:var(--font-heading);font-size:1.05rem;color:var(--color-primary);margin-bottom:3px; }
.sessie-card p { font-size:13px;color:var(--color-text-light);margin:0; }
@media (max-width:768px){ .sessies-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:460px){ .sessies-grid{grid-template-columns:1fr} }

/* REVIEWS */
.reviews-section { background:var(--color-bg-section); }
.reviews-wrapper { display:flex;align-items:center;gap:28px; }
.reviews-score { display:flex;flex-direction:column;align-items:center;flex-shrink:0;background:var(--color-white);border:1px solid rgba(196,160,168,.3);border-radius:var(--radius);padding:18px 22px;min-width:88px; }
.score-number { font-family:var(--font-heading);font-size:2rem;font-weight:600;color:var(--color-primary); }
.score-star { font-size:2rem;color:#f4b942;line-height:1; }
.reviews-carousel-wrap { display:flex;align-items:center;gap:12px;overflow:hidden;flex:1; }
.reviews-carousel { display:flex;gap:16px;overflow:hidden;flex:1; }
.review-card { display:flex;gap:10px;background:var(--color-white);border:1px solid rgba(196,160,168,.25);border-radius:var(--radius);padding:14px;min-width:160px;max-width:180px;flex-shrink:0; }
.review-avatar { width:32px;height:32px;border-radius:50%;background:var(--color-secondary);flex-shrink:0; }
.review-name { font-weight:700;font-size:12px;margin-bottom:2px; }
.review-stars { color:#f4b942;font-size:11px;margin-bottom:4px; }
.review-text { font-size:11px;color:var(--color-text-light);margin:0; }
.review-nav { background:none;border:1px solid var(--color-secondary);border-radius:50%;width:36px;height:36px;font-size:1.2rem;color:var(--color-primary);cursor:pointer;flex-shrink:0;transition:background var(--transition);display:flex;align-items:center;justify-content:center; }
.review-nav:hover { background:var(--color-secondary);color:#fff; }

/* FAQ */
.faq-section { background:var(--color-white); }
.faq-container { max-width:740px; }
.faq-item { border-bottom:1px solid rgba(196,160,168,.3); }
.faq-question { width:100%;background:none;border:none;text-align:left;padding:18px 0;font-family:var(--font-body);font-size:14px;color:var(--color-text);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;transition:color var(--transition); }
.faq-question:hover { color:var(--color-primary); }
.faq-icon { font-size:1.3rem;color:var(--color-secondary);flex-shrink:0;transition:transform .25s;line-height:1; }
.faq-item.open .faq-icon { transform:rotate(45deg); }
.faq-answer { max-height:0;overflow:hidden;transition:max-height .35s ease,padding .25s; }
.faq-item.open .faq-answer { max-height:300px;padding-bottom:16px; }
.faq-answer p { font-size:13.5px;color:var(--color-text-light);line-height:1.75;margin:0; }
