/* ===== PHARMED SOLUTIONS - Main Styles ===== */
body { font-family: 'Inter', sans-serif; background-color: #f8fafc; color: #334155; display: flex; flex-direction: column; min-height: 100vh; scroll-behavior: smooth; }

/* Glass */
.glass { background: #115b7e; backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-bottom: 1px solid rgba(255,255,255,0.15); }
.glass-card { background: rgba(255,255,255,0.6); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,0.8); box-shadow: 0 8px 32px 0 rgba(31,38,135,0.07); }

/* Nav links */
.nav-link { color: rgba(255,255,255,0.85); font-weight: 500; transition: all 0.3s; position: relative; padding: 0.5rem 0; }
.nav-link::after { content: ''; position: absolute; bottom: -2px; left: 0; height: 2px; width: 0; background: #ffffff; transition: all 0.3s; }
.nav-link:hover, .nav-link.active { color: #ffffff; font-weight: 700; }
.nav-link:hover::after, .nav-link.active::after { width: 100%; }

/* Buttons */
.btn-primary { background: linear-gradient(135deg, #0d9488, #0f766e); color: white; transition: all 0.3s; box-shadow: 0 10px 30px rgba(13,148,136,0.3); }
.btn-primary:hover { background: linear-gradient(135deg, #0f766e, #115e59); box-shadow: 0 15px 40px rgba(13,148,136,0.4); transform: translateY(-2px); }

/* Page transitions */
.page-section { animation: fadeSlideIn 0.6s cubic-bezier(0.4,0,0.2,1) forwards; }
@keyframes fadeSlideIn { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }

/* Scroll reveal */
.reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s cubic-bezier(0.4,0,0.2,1); }
.reveal.visible { opacity: 1; transform: translateY(0); }

/* FAQ */
details > summary { list-style: none; cursor: pointer; }
details > summary::-webkit-details-marker { display: none; }
details[open] summary ~ * { animation: slideDown 0.3s ease-in-out; }
@keyframes slideDown { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Service cards */
.service-card { transition: all 0.4s cubic-bezier(0.4,0,0.2,1); }
.service-card:hover { transform: translateY(-8px); box-shadow: 0 25px 60px rgba(0,0,0,0.12); }
.service-card .service-img { transition: transform 0.6s; }
.service-card:hover .service-img { transform: scale(1.05); }

/* Gallery */
.gallery-item { overflow: hidden; border-radius: 1.5rem; cursor: pointer; position: relative; }
.gallery-item img { transition: transform 0.6s cubic-bezier(0.4,0,0.2,1); }
.gallery-item:hover img { transform: scale(1.1); }
.gallery-item .overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,0.7), transparent); opacity: 0; transition: opacity 0.4s; display: flex; align-items: flex-end; padding: 1.5rem; }
.gallery-item:hover .overlay { opacity: 1; }

/* Lightbox */
.lightbox { position: fixed; inset: 0; z-index: 9999; background: rgba(0,0,0,0.9); display: flex; align-items: center; justify-content: center; opacity: 0; pointer-events: none; transition: opacity 0.3s; }
.lightbox.active { opacity: 1; pointer-events: all; }
.lightbox img { max-width: 90vw; max-height: 85vh; border-radius: 1rem; box-shadow: 0 20px 60px rgba(0,0,0,0.5); }

/* Testimonial carousel */
.testimonial-track { display: flex; transition: transform 0.5s cubic-bezier(0.4,0,0.2,1); }
.testimonial-slide { min-width: 100%; padding: 0 1rem; box-sizing: border-box; }
@media(min-width:768px) { .testimonial-slide { min-width: 33.333%; } }

/* Process timeline */
.timeline-line { position: absolute; top: 50%; left: 0; right: 0; height: 3px; background: linear-gradient(to right, #0d9488, #14b8a6, #2dd4bf); transform: translateY(-50%); }
.step-card { transition: all 0.3s; }
.step-card:hover { transform: translateY(-5px); box-shadow: 0 15px 40px rgba(0,0,0,0.1); }

/* Floating WhatsApp */
.whatsapp-float { position: fixed; bottom: 2rem; right: 2rem; z-index: 100; width: 60px; height: 60px; border-radius: 50%; background: #25D366; display: flex; align-items: center; justify-content: center; box-shadow: 0 5px 20px rgba(37,211,102,0.4); transition: all 0.3s; animation: pulse-wa 2s infinite; }
.whatsapp-float:hover { transform: scale(1.1); box-shadow: 0 8px 30px rgba(37,211,102,0.5); }
@keyframes pulse-wa { 0%,100% { box-shadow: 0 5px 20px rgba(37,211,102,0.4); } 50% { box-shadow: 0 5px 30px rgba(37,211,102,0.6); } }

/* Counter animation */
.counter-num { display: inline-block; }

/* Image banner parallax-like */
.parallax-banner { background-attachment: fixed; background-size: cover; background-position: center; }
@media(max-width:768px) { .parallax-banner { background-attachment: scroll; } }
