
    * { margin: 0; padding: 0; box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body { font-family: 'Inter', sans-serif; color: #1f2937; -webkit-font-smoothing: antialiased; }
    h1, h2, h3, h4, h5, h6 { font-family: 'Poppins', sans-serif; }
    .container-main { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 1rem; }
    @media (min-width: 640px) { .container-main { padding: 0 1.5rem; } }
    @media (min-width: 1024px) { .container-main { padding: 0 2rem; } }
    .fade-up { opacity: 0; transform: translateY(30px); transition: opacity 0.6s ease-out, transform 0.6s ease-out; }
    .fade-up.visible { opacity: 1; transform: translateY(0); }
    .fade-in { opacity: 0; transition: opacity 0.6s ease-out; }
    .fade-in.visible { opacity: 1; }
    .slide-down { animation: slideDown 0.3s ease-out; }
    @keyframes slideDown { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
    @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
    @keyframes fadeInUp { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: translateY(0); } }
    @keyframes fadeInLeft { from { opacity: 0; transform: translateX(-40px); } to { opacity: 1; transform: translateX(0); } }
    @keyframes fadeInRight { from { opacity: 0; transform: translateX(40px); } to { opacity: 1; transform: translateX(0); } }
    @keyframes scaleIn { from { opacity: 0; transform: scale(0.8); } to { opacity: 1; transform: scale(1); } }
    .card-hover { transition: all 0.3s ease; }
    .card-hover:hover { transform: translateY(-4px); box-shadow: 0 20px 40px rgba(0,0,0,0.1); }
    .img-zoom { overflow: hidden; }
    .img-zoom img { transition: transform 0.5s ease; }
    .img-zoom:hover img { transform: scale(1.1); }
    .bg-pattern { background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23fff' fill-opacity='0.03'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }
    .line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
    .line-clamp-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
    .whatsapp-float { position: fixed; bottom: 24px; right: 24px; z-index: 999; animation: whatsappPulse 2s infinite; }
    @keyframes whatsappPulse { 0% { box-shadow: 0 0 0 0 rgba(0,168,107,0.4); } 70% { box-shadow: 0 0 0 16px rgba(0,168,107,0); } 100% { box-shadow: 0 0 0 0 rgba(0,168,107,0); } }
    @keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
    .hero-slide { position: relative; }
    .hero-slide .slide-content { animation: fadeInLeft 0.6s ease-out; }
    .hero-slide .slide-image { animation: fadeInRight 0.6s ease-out; }
    @media (max-width: 1023px) { .hero-slide .slide-image { animation: scaleIn 0.6s ease-out; } }
    .shimmer { background: linear-gradient(90deg, transparent, rgba(255,255,255,0.05), transparent); background-size: 200% 100%; animation: shimmer 2s infinite; }
    @keyframes shimmer { 0% { background-position: -200% 0; } 100% { background-position: 200% 0; } }
    input, select, textarea { font-family: 'Inter', sans-serif; }
    input:focus, select:focus, textarea:focus { outline: none; box-shadow: 0 0 0 3px rgba(11,110,253,0.15); }
  
