.customer-reviews{padding:70px 20px;background:#f7f7f7}
.reviews-container{max-width:1100px;margin:auto}
.reviews-heading{text-align:center;margin-bottom:30px}
.reviews-heading span{color:#b77e18;font-size:13px;font-weight:bold;letter-spacing:2px}
.reviews-heading h2{font-size:36px;margin:10px 0}
.reviews-heading p{color:#666}
.rating-summary{max-width:330px;margin:0 auto 35px;background:#fff;padding:20px;text-align:center;border-radius:12px;box-shadow:0 4px 20px #0000000d}
.rating-summary strong{display:block;font-size:38px}
.rating-summary div{color:#f5b301;font-size:25px;margin:7px}
.rating-summary small{color:#777}
.review-form-box{max-width:760px;margin:0 auto 50px;background:#fff;padding:32px;border-radius:12px;box-shadow:0 5px 25px #00000012}
.star-rating{display:flex;flex-direction:row-reverse;justify-content:flex-end;margin-bottom:22px}
.star-rating input{position:absolute;opacity:0}
.star-rating label{font-size:38px;color:#ccc;cursor:pointer}
.star-rating label:hover,.star-rating label:hover~label,.star-rating input:checked~label{color:#f5b301}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-group{margin-bottom:18px}
.form-group label{display:block;margin-bottom:7px;font-weight:bold}
.form-group input,.form-group textarea{width:100%;padding:13px;border:1px solid #ddd;border-radius:6px;font:inherit}
.submit-review{background:#b77e18;color:#fff;border:0;border-radius:6px;padding:13px 28px;cursor:pointer}
.submit-review:disabled{opacity:.6}
#reviewMessage{display:none;visibility:hidden;min-height:0;margin-top:0}
#reviewMessage.error{display:block;visibility:visible;color:#c62828;margin-top:12px}

/* Customer reviews carousel */
.reviews-carousel-wrapper{display:flex;align-items:center;gap:12px;width:100%}
.reviews-list{display:flex;flex:1;min-width:0;gap:20px;overflow-x:auto;overflow-y:hidden;padding:10px 2px 22px;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#b77e18 #e8e8e8;-webkit-overflow-scrolling:touch}
.reviews-list::-webkit-scrollbar{height:7px}
.reviews-list::-webkit-scrollbar-track{background:#e8e8e8;border-radius:10px}
.reviews-list::-webkit-scrollbar-thumb{background:#b77e18;border-radius:10px}
.review-card,.no-reviews{background:#fff;padding:24px;border-radius:10px;box-shadow:0 3px 15px #0000000d}
.reviews-list .review-card{flex:0 0 calc((100% - 40px)/3);min-width:0;scroll-snap-align:start;overflow-wrap:anywhere}
.reviews-list .no-reviews{flex:1 0 100%}
.review-stars{color:#f5b301;font-size:20px}
.review-card h4{margin:8px 0 4px}
.review-company,.review-date{color:#888;font-size:13px}
.review-text{line-height:1.6;color:#555;overflow-wrap:anywhere}
.reviews-nav{flex:0 0 38px;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#222;color:#fff;cursor:pointer;font-size:18px;line-height:1;transition:background .2s ease}
.reviews-nav:hover{background:#b77e18}
.reviews-nav:focus-visible{outline:2px solid #b77e18;outline-offset:3px}
.reviews-nav:disabled{opacity:.35;cursor:not-allowed}
.success{color:green}
.error{color:#c62828}
@media(max-width:991px){.reviews-list .review-card{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:767px){.form-row{grid-template-columns:1fr}.reviews-heading h2{font-size:28px}.reviews-carousel-wrapper{gap:6px}.reviews-nav{flex-basis:30px;width:30px;height:30px;font-size:15px}.reviews-list{gap:14px}.reviews-list .review-card{flex-basis:85%}.review-form-box{padding:22px}}
