@import "tailwindcss"; /* Tipografia Chillax (Google Fonts como fallback temporário) */ @import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap"); /* ========================= THEME TOKENS - Nova Paleta ========================= */ :root { --color-brand-dark: #333333; --color-brand-blue: #0000FF; --color-brand-emerald: #41FE95; --color-gray-text: #9CA3AF; --color-gray-light: #F9FAFB; --color-gray-medium: #E5E7EB; --color-gray-dark: #1F2937; --color-success: #41FE95; --color-warning: #F59E0B; --color-white: #FFFFFF; --color-black: #000000; --font-family-sans: 'Inter', system-ui, sans-serif; } @layer base { html { scroll-behavior: smooth; } body { font-family: var(--font-family-sans); line-height: 1.6; color: var(--color-white); background-color: var(--color-black); } h1, h2, h3, h4, h5, h6 { font-weight: 600; letter-spacing: -0.025em; } p, span, div { font-weight: 400; } } /* ========================= COMPONENTS - Novo Design ========================= */ @layer components { .btn-primary { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 0.75rem; padding: 1rem 3rem; border-radius: 1rem; font-weight: 600; color: var(--color-black); background-color: var(--color-white); border: none; cursor: pointer; transition: all 0.3s ease; text-decoration: none; font-size: 1rem; } .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 20px 40px rgba(255, 255, 255, 0.2); } .btn-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 0.75rem; padding: 1rem 3rem; border-radius: 1rem; font-weight: 600; color: var(--color-white); background-color: transparent; border: 1px solid rgba(255, 255, 255, 0.3); cursor: pointer; transition: all 0.3s ease; text-decoration: none; font-size: 1rem; } .btn-secondary:hover { background-color: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.5); transform: translateY(-2px); } .btn-accent { display: inline-flex; align-items: center; justify-content: center; gap: 0.75rem; padding: 1rem 3rem; border-radius: 1rem; font-weight: 600; color: var(--color-black); background-color: var(--color-brand-emerald); border: none; cursor: pointer; transition: all 0.3s ease; text-decoration: none; font-size: 1rem; } .btn-accent:hover { transform: translateY(-2px); box-shadow: 0 20px 40px rgba(65, 254, 149, 0.3); filter: brightness(1.1); } .card-basspago { background-color: rgba(255, 255, 255, 0.05); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 1.5rem; padding: 2rem; transition: all 0.3s ease; position: relative; overflow: hidden; } .card-basspago::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, var(--color-brand-blue), var(--color-brand-emerald)); transform: scaleX(0); transition: transform 0.3s ease; } .card-basspago:hover::before { transform: scaleX(1); } .card-basspago:hover { transform: translateY(-8px); background-color: rgba(255, 255, 255, 0.08); border-color: rgba(255, 255, 255, 0.2); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3); } .container-basspago { max-width: 1240px; margin: 0 auto; padding: 0 2rem; } .section-padding { padding: 6rem 0; } .floating-animation { animation: floating 6s ease-in-out infinite; } @keyframes floating { 0%, 100% { transform: translateY(0px); } 50% { transform: translateY(-15px); } } } /* ========================= UTILITIES - Nova Paleta ========================= */ @layer utilities { .hero-gradient { background: linear-gradient( 135deg, var(--color-brand-blue) 0%, var(--color-brand-emerald) 100% ); } .section-gradient { background: linear-gradient( 135deg, var(--color-brand-dark) 0%, rgba(51, 51, 51, 0.8) 100% ); } .text-gradient { background: linear-gradient( 90deg, var(--color-brand-blue), var(--color-brand-emerald), var(--color-brand-blue) ); background-size: 200% 200%; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; animation: gradientMove 4s ease-in-out infinite; } .text-gradient-static { background: linear-gradient( 135deg, var(--color-brand-blue), var(--color-brand-emerald) ); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .bg-brand-dark { background-color: var(--color-brand-dark); } .bg-brand-blue { background-color: var(--color-brand-blue); } .bg-brand-emerald { background-color: var(--color-brand-emerald); } .text-brand-dark { color: var(--color-brand-dark); } .text-brand-blue { color: var(--color-brand-blue); } .text-brand-emerald { color: var(--color-brand-emerald); } .text-gray-text { color: var(--color-gray-text); } .border-brand-blue { border-color: var(--color-brand-blue); } .border-brand-emerald { border-color: var(--color-brand-emerald); } } /* ========================= ANIMATIONS ========================= */ @keyframes gradientMove { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } @keyframes pulse-glow { 0%, 100% { box-shadow: 0 0 20px rgba(65, 254, 149, 0.3); } 50% { box-shadow: 0 0 40px rgba(65, 254, 149, 0.6); } } .pulse-glow { animation: pulse-glow 2s ease-in-out infinite; } /* ========================= RESPONSIVE ========================= */ @media (max-width: 768px) { .section-padding { padding: 4rem 0; } .container-basspago { padding: 0 1.5rem; } .card-basspago { padding: 1.5rem; } .btn-primary, .btn-secondary, .btn-accent { padding: 0.875rem 2rem; font-size: 0.95rem; } } @media (max-width: 480px) { .btn-primary, .btn-secondary, .btn-accent { width: 100%; justify-content: center; } }