:root {
    --primary-blue: #142c54;
    --primary-red: #ab2424;
    --gradient-blue: linear-gradient(135deg, #142c54 0%, #1e4080 100%);
    --gradient-red: linear-gradient(135deg, #ab2424 0%, #d32f2f 100%);
    --light-blue: #e8f0fe;
    --light-gray: #f5f7fa;
    --border-radius: 10px;
    --box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    --transition: all 0.3s ease;
}
* { margin:0; padding:0; box-sizing:border-box; font-family:'Tajawal',sans-serif; }
body { background:#f8f9fa; color:#333; line-height:1.7; padding:2rem 0; }
.container { width:100%; max-width:1200px; margin:0 auto; padding:0 1rem; }
.section-title { text-align:center; font-size:2.5rem; color:var(--primary-blue); margin-bottom:3rem; position:relative; font-weight:700; }
.section-title::after { content:''; position:absolute; bottom:-15px; right:50%; transform:translateX(50%); width:80px; height:4px; background:var(--primary-red); border-radius:2px; }

.testimonials-section { padding:3rem 0; position:relative; }
.testimonials-container { position:relative; }
.add-review-btn { position:absolute; left:0; top:-70px; background:transparent; border:2px solid var(--primary-blue); color:var(--primary-blue); padding:0.8rem 1.5rem; border-radius:30px; cursor:pointer; font-weight:600; display:flex; align-items:center; gap:0.5rem; transition:var(--transition);}
.add-review-btn:hover { background:var(--primary-blue); color:white; transform:translateY(-3px); box-shadow:0 5px 15px rgba(20,44,84,0.2);}
.testimonials-grid { display:flex; overflow-x:auto; scroll-behavior:smooth; gap:2rem; }
.testimonial-card { min-width:350px; background:white; border-radius:var(--border-radius); padding:2rem; box-shadow:var(--box-shadow); transition:var(--transition); position:relative; border-top:4px solid var(--primary-blue); flex-shrink:0; }
.testimonial-card:hover { transform:translateY(-5px); box-shadow:0 10px 25px rgba(0,0,0,0.1);}
.testimonial-header { display:flex; align-items:center; margin-bottom:1.5rem; }
.client-avatar { width:60px; height:60px; border-radius:50%; background:var(--gradient-blue); display:flex; align-items:center; justify-content:center; color:white; font-size:1.5rem; font-weight:600; margin-left:1rem; flex-shrink:0; }
.client-info { flex:1; }
.client-name { font-size:1.2rem; color:var(--primary-blue); margin-bottom:0.3rem; font-weight:600; }
.client-position { color:#666; font-size:0.9rem; }
.testimonial-rating { color:#ffc107; margin-bottom:1rem; }
.testimonial-text { color:#555; line-height:1.8; font-style:italic; position:relative; padding:0 1rem; }
.testimonial-text::before, .testimonial-text::after { content:'"'; font-size:3rem; color:var(--light-blue); position:absolute; line-height:1;}
.testimonial-text::before { top:-0.5rem; right:0;}
.testimonial-text::after { bottom:-1.5rem; left:0;}
.testimonial-date { color:#888; font-size:0.85rem; text-align:left; margin-top:1.5rem; }

/* أزرار التنقل */
.testimonial-controls { display:flex; justify-content:center; margin-top:1.5rem; gap:1rem; }
.testimonial-controls button { background:var(--primary-blue); color:white; border:none; padding:0.7rem 1.2rem; border-radius:30px; cursor:pointer; transition:var(--transition);}
.testimonial-controls button:hover { background:var(--primary-red); }

/* مودال إضافة رأي */
.modal { display:none; position:fixed; top:0; left:0; width:100%; height:100%; background: rgba(0,0,0,0.7); z-index:1000; overflow-y:auto; padding:1rem; }
.modal.active { display:flex; }
.modal-content { margin:auto; max-height:90vh; overflow-y:auto; position:relative; background:white; padding:2rem; border-radius:var(--border-radius); width:90%; max-width:500px; }
.modal-close { position:absolute; top:1rem; left:1rem; background:none; border:none; font-size:1.5rem; color:#666; cursor:pointer; transition: var(--transition); }
.modal-close:hover { color: var(--primary-red); }
.modal-title { text-align:center; font-size:1.8rem; color: var(--primary-blue); margin-bottom:2rem; }
.rating-input { text-align:center; margin-bottom:1.5rem; }
.rating-stars { direction:ltr; display:inline-block; }
.rating-stars input { display:none; }
.rating-stars label { float:right; cursor:pointer; color:#ccc; transition: var(--transition); font-size:1.8rem; margin:0 2px; }
.rating-stars label:before { content:'★'; }
.rating-stars input:checked ~ label { color:#ffc107; }
.rating-stars label:hover, .rating-stars label:hover ~ label { color:#ffc107; }
.form-group { margin-bottom:1.5rem; }
.form-label { display:block; margin-bottom:0.5rem; font-weight:500; color: var(--primary-blue); }
.form-control { width:100%; padding:0.8rem 1rem; border:1px solid #ddd; border-radius: var(--border-radius); font-size:1rem; transition: var(--transition); }
.form-control:focus { outline:none; border-color: var(--primary-blue); box-shadow:0 0 0 3px rgba(20,44,84,0.1); }
textarea.form-control { min-height:120px; resize:vertical; }
.btn { display:block; width:100%; padding:1rem; border:none; border-radius: var(--border-radius); font-size:1rem; font-weight:600; cursor:pointer; transition: var(--transition); }
.btn-primary { background: var(--gradient-blue); color:white; }
.btn-primary:hover { background: var(--primary-blue); transform:translateY(-2px); box-shadow:0 5px 15px rgba(20,44,84,0.2); }
.alert { padding:1rem; border-radius: var(--border-radius); margin-bottom:1.5rem; display:none; }
.alert-success { background: rgba(40,167,69,0.15); color:#155724; border:1px solid #c3e6cb; }
.alert-error { background: rgba(220,53,69,0.15); color:#721c24; border:1px solid #f5c6cb; }

/* قراءة المزيد */
.read-more { display:inline-block; color: var(--primary-red); cursor:pointer; font-weight:600; margin-top:0.5rem; font-size:0.95rem; text-decoration:none; }
.read-more:hover { text-decoration:underline; }

/* تأثير fade-in */
.fade-in { opacity:0; transform:translateY(30px); transition:all 0.5s ease; }
.fade-in.visible { opacity:1; transform:translateY(0); }