/* Portfolio */
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.portfolio-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;cursor:pointer}
.portfolio-image{width:100%;aspect-ratio:16/10;background:var(--dark-light);display:flex;align-items:center;justify-content:center;border:1px solid var(--dark-border);border-radius:var(--radius-lg);font-size:40px;color:var(--primary);transition:var(--transition)}
.portfolio-card:hover .portfolio-image{transform:scale(1.05);border-color:var(--primary)}
.portfolio-overlay{position:absolute;inset:0;background:linear-gradient(to top, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.4) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:24px;opacity:0;transition:var(--transition);border-radius:var(--radius-lg);backdrop-filter:blur(4px)}
.portfolio-card:hover .portfolio-overlay{opacity:1}
.portfolio-category{font-size:12px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}
.portfolio-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text);margin-bottom:8px}
.portfolio-desc{font-size:13px;color:var(--text-muted);line-height:1.5}
.portfolio-tech{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.portfolio-tech span{padding:4px 10px;background:var(--dark-light);border:1px solid var(--dark-border);border-radius:20px;font-size:11px;font-weight:600;color:var(--primary)}

/* Testimonials */
.testimonials-wrapper{position:relative;overflow:hidden}
.testimonials-track{display:flex;transition:transform 0.5s ease}
.testimonial-card{min-width:100%;padding:40px;background:linear-gradient(145deg, rgba(30, 41, 59, 0.8), rgba(15, 23, 42, 0.9));border:1px solid rgba(37, 99, 235, 0.1);border-radius:var(--radius-lg);position:relative}
.testimonial-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg, rgba(37, 99, 235, 0.05), transparent);border-radius:inherit;opacity:0;transition:opacity 0.3s ease}
.testimonial-card:hover::before{opacity:1}
.testimonial-quote{font-size:32px;color:var(--primary);margin-bottom:16px;opacity:0.4}
.testimonial-text{font-size:17px;color:var(--text);line-height:1.8;margin-bottom:24px;font-style:italic}
.testimonial-author{display:flex;align-items:center;gap:16px}
.testimonial-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg, #2563EB, #06B6D4);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:var(--white);box-shadow:0 4px 15px rgba(37, 99, 235, 0.3)}
.testimonial-info h4{font-size:16px;font-weight:700;color:var(--text)}
.testimonial-info p{font-size:13px;color:var(--text-muted)}
.testimonial-nav{display:flex;justify-content:center;gap:12px;margin-top:32px}
.testimonial-dot{width:10px;height:10px;border-radius:50%;background:var(--dark-border);cursor:pointer;transition:var(--transition)}
.testimonial-dot.active{background:var(--primary);width:30px;border-radius:5px}

/* Contact layout — form styles in forms.css */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.contact-info{display:flex;flex-direction:column;gap:24px}
.contact-info-item{display:flex;gap:16px;padding:24px;border-radius:var(--radius-md);transition:var(--transition)}
.contact-info-item:hover{border-color:var(--primary);transform:translateX(8px);box-shadow:var(--shadow-glow)}
.contact-info-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(37,99,235,0.12);border:1px solid rgba(37,99,235,0.2);border-radius:var(--radius-sm);font-size:20px;color:var(--primary-light);flex-shrink:0}
.contact-info-content h4{font-size:16px;font-weight:700;margin-bottom:4px}
.contact-info-content p{font-size:14px;line-height:1.6}
.whatsapp-link{text-decoration:none;color:inherit;display:flex;gap:16px;padding:24px;border-radius:var(--radius-md);transition:var(--transition);width:100%}
.whatsapp-link:hover{transform:translateX(8px);box-shadow:var(--shadow-glow)}
.whatsapp-icon{background:rgba(37,199,77,0.12);border-color:rgba(37,199,77,0.2);color:#25D366}
.form-group{position:relative}
