 @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');

 :root {
     --primary: #00b4db;
     --secondary: #0083b0;
     --accent: #ff6b6b;
     --dark: #2c3e50;
     --light: #f8f9fa;
 }

 body {
     font-family: 'Poppins', sans-serif;
     scroll-behavior: smooth;
 }

 /* Animações e Efeitos */
 .gradient-text {
     background: linear-gradient(to right, var(--primary), var(--secondary));
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
 }

 .hero-bg {
     background: linear-gradient(135deg, rgba(0, 180, 219, 0.95), rgba(0, 131, 176, 0.9)), url('https://images.unsplash.com/photo-1606811841689-23dfddce3e95?q=80&w=1974&auto=format&fit=crop');
     background-size: cover;
     background-position: center;
     background-attachment: fixed;
 }

 .card-hover {
     transition: all 0.3s ease;
 }

 .card-hover:hover {
     transform: translateY(-10px);
     box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
 }

 .btn-shine {
     position: relative;
     overflow: hidden;
 }

 .btn-shine::after {
     content: '';
     position: absolute;
     top: 0;
     left: -100%;
     width: 100%;
     height: 100%;
     background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
     transition: 0.5s;
 }

 .btn-shine:hover::after {
     left: 100%;
 }

 /* Scroll Reveal Animation Classes */
 .reveal {
     opacity: 0;
     transform: translateY(30px);
     transition: all 0.8s ease-out;
 }

 .reveal.active {
     opacity: 1;
     transform: translateY(0);
 }

 /* Form Styling */
 .input-field {
     border: 2px solid #e2e8f0;
     transition: border-color 0.3s;
 }

 .input-field:focus {
     border-color: var(--secondary);
     outline: none;
 }

 /* Nav Mobile */
 #mobile-menu {
     transition: max-height 0.3s ease-out;
     max-height: 0;
     overflow: hidden;
 }

 #mobile-menu.open {
     max-height: 300px;
 }