j3r4 commited on
Commit
2bebdef
·
verified ·
1 Parent(s): 5defac0

transforme o meu site em uma landing-page para apresentar o meu trabalho e atair novos clientes.

Browse files
Files changed (6) hide show
  1. README.md +8 -5
  2. components/footer.js +68 -0
  3. components/navbar.js +145 -0
  4. index.html +231 -19
  5. script.js +44 -0
  6. style.css +41 -18
README.md CHANGED
@@ -1,10 +1,13 @@
1
  ---
2
- title: Sonic Waves Jeronimo
3
- emoji:
4
- colorFrom: yellow
5
- colorTo: pink
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
1
  ---
2
+ title: Sonic Waves Jeronimo 🎧
3
+ colorFrom: pink
4
+ colorTo: gray
5
+ emoji: 🐳
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite-v3
10
  ---
11
 
12
+ # Welcome to your new DeepSite project!
13
+ This project was created with [DeepSite](https://huggingface.co/deepsite).
components/footer.js ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class CustomFooter extends HTMLElement {
2
+ connectedCallback() {
3
+ this.attachShadow({ mode: 'open' });
4
+ this.shadowRoot.innerHTML = `
5
+ <style>
6
+ footer {
7
+ background: #0f172a;
8
+ border-top: 1px solid rgba(255,255,255,0.05);
9
+ padding: 4rem 0;
10
+ text-align: center;
11
+ }
12
+
13
+ .content {
14
+ max-width: 1280px;
15
+ margin: 0 auto;
16
+ padding: 0 1.5rem;
17
+ }
18
+
19
+ .social-links {
20
+ display: flex;
21
+ justify-content: center;
22
+ gap: 1.5rem;
23
+ margin-bottom: 2rem;
24
+ }
25
+
26
+ .social-icon {
27
+ color: #64748b;
28
+ transition: color 0.3s, transform 0.2s;
29
+ text-decoration: none;
30
+ }
31
+
32
+ .social-icon:hover {
33
+ color: #4f46e5;
34
+ transform: translateY(-3px);
35
+ }
36
+
37
+ p {
38
+ color: #64748b;
39
+ font-size: 0.875rem;
40
+ margin-bottom: 0.5rem;
41
+ }
42
+
43
+ .heart {
44
+ color: #ef4444;
45
+ }
46
+ </style>
47
+ <footer>
48
+ <div class="content">
49
+ <div class="social-links">
50
+ <a href="https://www.instagram.com/" target="_blank" class="social-icon">
51
+ <i data-feather="instagram"></i>
52
+ </a>
53
+ <a href="https://www.linkedin.com/" target="_blank" class="social-icon">
54
+ <i data-feather="linkedin"></i>
55
+ </a>
56
+ <a href="https://vimeo.com/" target="_blank" class="social-icon">
57
+ <i data-feather="video"></i>
58
+ </a>
59
+ </div>
60
+ <p>&copy; 2023 Jeronimo Cruz. Todos os direitos reservados.</p>
61
+ <p>Desenvolvido com <span class="heart">❤</span> e Som.</p>
62
+ </div>
63
+ </footer>
64
+ `;
65
+ }
66
+ }
67
+
68
+ customElements.define('custom-footer', CustomFooter);
components/navbar.js ADDED
@@ -0,0 +1,145 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class CustomNavbar extends HTMLElement {
2
+ connectedCallback() {
3
+ this.attachShadow({ mode: 'open' });
4
+ this.shadowRoot.innerHTML = `
5
+ <style>
6
+ :host {
7
+ display: block;
8
+ position: fixed;
9
+ top: 0;
10
+ left: 0;
11
+ width: 100%;
12
+ z-index: 50;
13
+ transition: all 0.3s ease;
14
+ background: rgba(15, 23, 42, 0.8);
15
+ backdrop-filter: blur(12px);
16
+ border-bottom: 1px solid rgba(255, 255, 255, 0.05);
17
+ }
18
+
19
+ nav {
20
+ max-width: 1280px;
21
+ margin: 0 auto;
22
+ padding: 1.5rem;
23
+ display: flex;
24
+ justify-content: space-between;
25
+ align-items: center;
26
+ }
27
+
28
+ .logo {
29
+ font-size: 1.5rem;
30
+ font-weight: 700;
31
+ color: #ffffff;
32
+ text-decoration: none;
33
+ display: flex;
34
+ align-items: center;
35
+ gap: 0.5rem;
36
+ }
37
+
38
+ .logo span {
39
+ color: #4f46e5;
40
+ }
41
+
42
+ .nav-links {
43
+ display: flex;
44
+ gap: 2rem;
45
+ list-style: none;
46
+ margin: 0;
47
+ padding: 0;
48
+ }
49
+
50
+ .nav-link {
51
+ color: #94a3b8;
52
+ text-decoration: none;
53
+ font-weight: 500;
54
+ transition: color 0.2s;
55
+ font-size: 1rem;
56
+ }
57
+
58
+ .nav-link:hover, .nav-link.active {
59
+ color: #ffffff;
60
+ }
61
+
62
+ .nav-link.active {
63
+ color: #4f46e5;
64
+ }
65
+
66
+ /* Mobile Menu */
67
+ .mobile-menu-btn {
68
+ display: none;
69
+ background: none;
70
+ border: none;
71
+ cursor: pointer;
72
+ color: white;
73
+ }
74
+
75
+ @media (max-width: 768px) {
76
+ .nav-links {
77
+ display: none;
78
+ flex-direction: column;
79
+ position: absolute;
80
+ top: 100%;
81
+ left: 0;
82
+ width: 100%;
83
+ background: #0f172a;
84
+ padding: 1.5rem;
85
+ border-bottom: 1px solid rgba(255,255,255,0.1);
86
+ text-align: center;
87
+ }
88
+
89
+ .nav-links.open {
90
+ display: flex;
91
+ animation: slideDown 0.3s ease-out forwards;
92
+ }
93
+
94
+ .mobile-menu-btn {
95
+ display: block;
96
+ }
97
+
98
+ @keyframes slideDown {
99
+ from { opacity: 0; transform: translateY(-10px); }
100
+ to { opacity: 1; transform: translateY(0); }
101
+ }
102
+ }
103
+ </style>
104
+ <nav>
105
+ <a href="/" class="logo">
106
+ <i data-feather="headphones" style="width: 24px; height: 24px; color: #4f46e5;"></i>
107
+ Jeronimo<span>Cruz</span>
108
+ </a>
109
+ <button class="mobile-menu-btn" id="menuToggle">
110
+ <i data-feather="menu"></i>
111
+ </button>
112
+ <ul class="nav-links" id="navLinks">
113
+ <li><a href="#home" class="nav-link">Início</a></li>
114
+ <li><a href="#about" class="nav-link">Sobre</a></li>
115
+ <li><a href="#portfolio" class="nav-link">Portfolio</a></li>
116
+ <li><a href="#contact" class="nav-link">Contato</a></li>
117
+ </ul>
118
+ </nav>
119
+ `;
120
+
121
+ // Mobile Menu Logic
122
+ const menuBtn = this.shadowRoot.getElementById('menuToggle');
123
+ const navLinks = this.shadowRoot.getElementById('navLinks');
124
+
125
+ menuBtn.addEventListener('click', () => {
126
+ navLinks.classList.toggle('open');
127
+ // Toggle icon
128
+ const icon = menuBtn.querySelector('i');
129
+ if (navLinks.classList.contains('open')) {
130
+ // In a real scenario we might swap the icon to 'x',
131
+ // but feather.replace() needs to be called.
132
+ // For simplicity, we just toggle the class.
133
+ }
134
+ });
135
+
136
+ // Close mobile menu when clicking a link
137
+ navLinks.querySelectorAll('a').forEach(link => {
138
+ link.addEventListener('click', () => {
139
+ navLinks.classList.remove('open');
140
+ });
141
+ });
142
+ }
143
+ }
144
+
145
+ customElements.define('custom-navbar', CustomNavbar);
index.html CHANGED
@@ -1,19 +1,231 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="pt-BR" class="scroll-smooth">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Jeronimo Cruz | Audio Professional</title>
7
+ <link rel="icon" type="image/x-icon" href="/static/favicon.ico">
8
+ <link rel="stylesheet" href="style.css">
9
+ <script src="https://cdn.tailwindcss.com"></script>
10
+ <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
11
+ <script src="https://unpkg.com/feather-icons"></script>
12
+ <script>
13
+ tailwind.config = {
14
+ theme: {
15
+ extend: {
16
+ colors: {
17
+ primary: '#4f46e5', // Indigo 600
18
+ secondary: '#0f172a', // Slate 900
19
+ accent: '#818cf8', // Indigo 400
20
+ }
21
+ }
22
+ }
23
+ }
24
+ </script>
25
+ </head>
26
+ <body class="bg-secondary text-slate-200 font-sans antialiased selection:bg-primary selection:text-white">
27
+
28
+ <!-- Navbar Component -->
29
+ <custom-navbar></custom-navbar>
30
+
31
+ <!-- Hero Section -->
32
+ <section class="relative h-screen flex items-center justify-center overflow-hidden">
33
+ <!-- Background Image with Overlay -->
34
+ <div class="absolute inset-0 z-0">
35
+ <img src="https://static.photos/technology/1920x1080/92" alt="Studio Background" class="w-full h-full object-cover opacity-30">
36
+ <div class="absolute inset-0 bg-gradient-to-b from-secondary/80 via-secondary/50 to-secondary"></div>
37
+ </div>
38
+
39
+ <div class="relative z-10 container mx-auto px-6 text-center">
40
+ <span class="inline-block py-1 px-3 rounded-full bg-primary/20 border border-primary/50 text-accent text-sm font-semibold mb-4 animate-pulse">
41
+ Disponível para novos projetos
42
+ </span>
43
+ <h1 class="text-5xl md:text-7xl font-bold text-white mb-6 tracking-tight leading-tight">
44
+ Jerônimo de Souza <span class="text-primary">Cruz</span>
45
+ </h1>
46
+ <p class="text-xl md:text-2xl text-slate-400 mb-8 max-w-2xl mx-auto">
47
+ Especialista em captação e pós-produção de som para obras audiovisuais. Transformando ruído em arte.
48
+ </p>
49
+ <div class="flex flex-col sm:flex-row gap-4 justify-center">
50
+ <a href="#portfolio" class="px-8 py-4 bg-primary hover:bg-indigo-700 text-white rounded-lg font-semibold transition-all duration-300 shadow-lg shadow-indigo-500/30 flex items-center justify-center gap-2">
51
+ <i data-feather="play-circle" class="w-5 h-5"></i> Ver Portfolio
52
+ </a>
53
+ <a href="#contact" class="px-8 py-4 bg-transparent border border-slate-600 hover:border-white text-white hover:bg-white/10 rounded-lg font-semibold transition-all duration-300 flex items-center justify-center gap-2">
54
+ <i data-feather="message-circle" class="w-5 h-5"></i> Fale Comigo
55
+ </a>
56
+ </div>
57
+ </div>
58
+
59
+ <!-- Scroll Down Indicator -->
60
+ <div class="absolute bottom-10 left-1/2 transform -translate-x-1/2 animate-bounce">
61
+ <a href="#about" class="text-slate-400 hover:text-white transition-colors">
62
+ <i data-feather="chevron-down" class="w-8 h-8"></i>
63
+ </a>
64
+ </div>
65
+ </section>
66
+
67
+ <!-- About Section -->
68
+ <section id="about" class="py-24 bg-secondary relative">
69
+ <div class="container mx-auto px-6">
70
+ <div class="flex flex-col md:flex-row items-center gap-12">
71
+ <div class="w-full md:w-1/2">
72
+ <div class="relative">
73
+ <div class="absolute -inset-4 bg-primary/20 rounded-xl blur-lg"></div>
74
+ <img src="https://static.photos/people/640x800/15" alt="Jeronimo Cruz" class="relative rounded-xl shadow-2xl w-full object-cover grayscale hover:grayscale-0 transition-all duration-500">
75
+ </div>
76
+ </div>
77
+ <div class="w-full md:w-1/2">
78
+ <h2 class="text-3xl md:text-4xl font-bold text-white mb-6 flex items-center gap-3">
79
+ <i data-feather="user" class="text-primary"></i> Sobre Mim
80
+ </h2>
81
+ <p class="text-slate-400 text-lg leading-relaxed mb-6">
82
+ Olá, sou Jerônimo de Souza Cruz. Aqui lhe apresento alguns dos meus trabalhos de captação e pós-produção de som para obras audiovisuais.
83
+ </p>
84
+ <p class="text-slate-400 text-lg leading-relaxed mb-8">
85
+ Com paixão pela fidelidade sonora e atenção aos detalhes, meu objetivo é elevar a qualidade de qualquer projeto, sejam filmes curtos, dublagens ou publicidade. Esteja à vontade e obrigado pela visita!
86
+ </p>
87
+
88
+ <div class="grid grid-cols-2 gap-4">
89
+ <div class="bg-slate-800 p-4 rounded-lg border border-slate-700">
90
+ <h4 class="text-primary font-bold text-xl mb-1">Pós-produção</h4>
91
+ <p class="text-sm text-slate-500">Mixagem & Mastering</p>
92
+ </div>
93
+ <div class="bg-slate-800 p-4 rounded-lg border border-slate-700">
94
+ <h4 class="text-primary font-bold text-xl mb-1">Captação</h4>
95
+ <p class="text-sm text-slate-500">Gravação em Locação</p>
96
+ </div>
97
+ </div>
98
+ </div>
99
+ </div>
100
+ </div>
101
+ </section>
102
+
103
+ <!-- Portfolio Section -->
104
+ <section id="portfolio" class="py-24 bg-slate-900">
105
+ <div class="container mx-auto px-6">
106
+ <div class="text-center mb-16">
107
+ <span class="text-primary font-semibold tracking-wider uppercase text-sm">Meus Trabalhos</span>
108
+ <h2 class="text-3xl md:text-4xl font-bold text-white mt-2 mb-4">Portfolio & Serviços</h2>
109
+ <div class="w-20 h-1 bg-primary mx-auto rounded-full"></div>
110
+ </div>
111
+
112
+ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8">
113
+ <!-- Card 1: Curta-Metragens -->
114
+ <a href="#contact" class="group relative bg-slate-800 rounded-xl overflow-hidden shadow-lg hover:shadow-primary/20 transition-all duration-300 hover:-translate-y-2 border border-slate-700">
115
+ <div class="h-48 overflow-hidden">
116
+ <img src="https://static.photos/nature/640x360/45" alt="Curta-Metragens" class="w-full h-full object-cover group-hover:scale-110 transition-transform duration-500">
117
+ </div>
118
+ <div class="p-6">
119
+ <div class="w-12 h-12 bg-primary/20 rounded-lg flex items-center justify-center text-primary mb-4 group-hover:bg-primary group-hover:text-white transition-colors">
120
+ <i data-feather="film" class="w-6 h-6"></i>
121
+ </div>
122
+ <h3 class="text-xl font-bold text-white mb-2">Curta-Metragens</h3>
123
+ <p class="text-slate-400 text-sm">Design sonoro imersivo para narrativas cinematográficas.</p>
124
+ </div>
125
+ </a>
126
+
127
+ <!-- Card 2: Dublagem -->
128
+ <a href="#contact" class="group relative bg-slate-800 rounded-xl overflow-hidden shadow-lg hover:shadow-primary/20 transition-all duration-300 hover:-translate-y-2 border border-slate-700">
129
+ <div class="h-48 overflow-hidden">
130
+ <img src="https://static.photos/technology/640x360/22" alt="Dublagem" class="w-full h-full object-cover group-hover:scale-110 transition-transform duration-500">
131
+ </div>
132
+ <div class="p-6">
133
+ <div class="w-12 h-12 bg-primary/20 rounded-lg flex items-center justify-center text-primary mb-4 group-hover:bg-primary group-hover:text-white transition-colors">
134
+ <i data-feather="mic" class="w-6 h-6"></i>
135
+ </div>
136
+ <h3 class="text-xl font-bold text-white mb-2">Dublagem</h3>
137
+ <p class="text-slate-400 text-sm">Estúdio profissional para gravação e edição de vozes.</p>
138
+ </div>
139
+ </a>
140
+
141
+ <!-- Card 3: Publicidade -->
142
+ <a href="#contact" class="group relative bg-slate-800 rounded-xl overflow-hidden shadow-lg hover:shadow-primary/20 transition-all duration-300 hover:-translate-y-2 border border-slate-700">
143
+ <div class="h-48 overflow-hidden">
144
+ <img src="https://static.photos/office/640x360/88" alt="Publicidade" class="w-full h-full object-cover group-hover:scale-110 transition-transform duration-500">
145
+ </div>
146
+ <div class="p-6">
147
+ <div class="w-12 h-12 bg-primary/20 rounded-lg flex items-center justify-center text-primary mb-4 group-hover:bg-primary group-hover:text-white transition-colors">
148
+ <i data-feather="tv" class="w-6 h-6"></i>
149
+ </div>
150
+ <h3 class="text-xl font-bold text-white mb-2">Publicidade</h3>
151
+ <p class="text-slate-400 text-sm">Jingles, spots comerciais e trilhas para marcas.</p>
152
+ </div>
153
+ </a>
154
+
155
+ <!-- Card 4: Teatro -->
156
+ <a href="#contact" class="group relative bg-slate-800 rounded-xl overflow-hidden shadow-lg hover:shadow-primary/20 transition-all duration-300 hover:-translate-y-2 border border-slate-700">
157
+ <div class="h-48 overflow-hidden">
158
+ <img src="https://static.photos/cityscape/640x360/12" alt="Teatro" class="w-full h-full object-cover group-hover:scale-110 transition-transform duration-500">
159
+ </div>
160
+ <div class="p-6">
161
+ <div class="w-12 h-12 bg-primary/20 rounded-lg flex items-center justify-center text-primary mb-4 group-hover:bg-primary group-hover:text-white transition-colors">
162
+ <i data-feather="aperture" class="w-6 h-6"></i>
163
+ </div>
164
+ <h3 class="text-xl font-bold text-white mb-2">Teatro</h3>
165
+ <p class="text-slate-400 text-sm">Reforço sonoro e efeitos ao vivo para espetáculos.</p>
166
+ </div>
167
+ </a>
168
+ </div>
169
+ </div>
170
+ </section>
171
+
172
+ <!-- Contact Section -->
173
+ <section id="contact" class="py-24 bg-secondary relative overflow-hidden">
174
+ <!-- Decorative Elements -->
175
+ <div class="absolute top-0 right-0 w-64 h-64 bg-primary/10 rounded-full blur-3xl -translate-y-1/2 translate-x-1/2"></div>
176
+ <div class="absolute bottom-0 left-0 w-64 h-64 bg-accent/10 rounded-full blur-3xl translate-y-1/2 -translate-x-1/2"></div>
177
+
178
+ <div class="container mx-auto px-6 relative z-10">
179
+ <div class="max-w-4xl mx-auto bg-slate-800/50 backdrop-blur-lg border border-slate-700 rounded-2xl p-8 md:p-12 shadow-2xl">
180
+ <div class="text-center mb-10">
181
+ <h2 class="text-3xl md:text-4xl font-bold text-white mb-4">Vamos trabalhar juntos?</h2>
182
+ <p class="text-slate-400">Entre em contato para discutir seu próximo projeto de áudio.</p>
183
+ </div>
184
+
185
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-8">
186
+ <div class="space-y-6">
187
+ <a href="https://wa.me/5511986124561?text=Ol%C3%A1+Jeronimo%2C+tudo+bem%3F+Tenho+um+projeto+sobre+o+qual+gostaria+de+lhe+falar%2C+podemos+conversar%3F" target="_blank" class="flex items-center gap-4 p-4 rounded-xl bg-slate-700/50 hover:bg-primary hover:text-white transition-all duration-300 group">
188
+ <div class="w-12 h-12 bg-slate-800 rounded-full flex items-center justify-center group-hover:bg-white/20 transition-colors">
189
+ <i data-feather="message-circle" class="text-green-400 group-hover:text-white w-5 h-5"></i>
190
+ </div>
191
+ <div>
192
+ <p class="text-sm text-slate-400 group-hover:text-green-100">WhatsApp</p>
193
+ <p class="font-bold">+55 (11) 986-124-561</p>
194
+ </div>
195
+ </a>
196
+
197
+ <a href="mailto:jeronimo.cruz@gmail.com" class="flex items-center gap-4 p-4 rounded-xl bg-slate-700/50 hover:bg-primary hover:text-white transition-all duration-300 group">
198
+ <div class="w-12 h-12 bg-slate-800 rounded-full flex items-center justify-center group-hover:bg-white/20 transition-colors">
199
+ <i data-feather="mail" class="text-red-400 group-hover:text-white w-5 h-5"></i>
200
+ </div>
201
+ <div>
202
+ <p class="text-sm text-slate-400 group-hover:text-red-100">Email</p>
203
+ <p class="font-bold">jeronimo.cruz@gmail.com</p>
204
+ </div>
205
+ </a>
206
+ </div>
207
+
208
+ <div class="flex flex-col justify-center space-y-4">
209
+ <p class="text-slate-300 text-sm">
210
+ Estou disponível para freelancers e contratos fixos. Respondo normalmente em até 24h.
211
+ </p>
212
+ <a href="https://wa.me/5511986124561?text=Ol%C3%A1+Jeronimo%2C+tudo+bem%3F+Tenho+um+projeto+sobre+o+qual+gostaria+de+lhe+falar%2C+podemos+conversar%3F" class="w-full py-4 bg-primary hover:bg-indigo-700 text-white rounded-lg font-bold text-center transition-all duration-300 shadow-lg shadow-indigo-500/25">
213
+ Iniciar Conversa no WhatsApp
214
+ </a>
215
+ </div>
216
+ </div>
217
+ </div>
218
+ </div>
219
+ </section>
220
+
221
+ <!-- Footer Component -->
222
+ <custom-footer></custom-footer>
223
+
224
+ <!-- Scripts -->
225
+ <script src="components/navbar.js"></script>
226
+ <script src="components/footer.js"></script>
227
+ <script src="script.js"></script>
228
+ <script>feather.replace();</script>
229
+ <script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
230
+ </body>
231
+ </html>
script.js ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ document.addEventListener('DOMContentLoaded', () => {
2
+ // Smooth scrolling for anchor links
3
+ document.querySelectorAll('a[href^="#"]').forEach(anchor => {
4
+ anchor.addEventListener('click', function (e) {
5
+ e.preventDefault();
6
+ const targetId = this.getAttribute('href');
7
+ const targetElement = document.querySelector(targetId);
8
+
9
+ if (targetElement) {
10
+ const headerOffset = 80;
11
+ const elementPosition = targetElement.getBoundingClientRect().top;
12
+ const offsetPosition = elementPosition + window.pageYOffset - headerOffset;
13
+
14
+ window.scrollTo({
15
+ top: offsetPosition,
16
+ behavior: "smooth"
17
+ });
18
+ }
19
+ });
20
+ });
21
+
22
+ // Intersection Observer for scroll animations
23
+ const observerOptions = {
24
+ root: null,
25
+ rootMargin: '0px',
26
+ threshold: 0.1
27
+ };
28
+
29
+ const observer = new IntersectionObserver((entries, observer) => {
30
+ entries.forEach(entry => {
31
+ if (entry.isIntersecting) {
32
+ entry.target.classList.add('animate-fade-in-up');
33
+ observer.unobserve(entry.target);
34
+ }
35
+ });
36
+ }, observerOptions);
37
+
38
+ // Select elements to animate
39
+ const animatedElements = document.querySelectorAll('section > div');
40
+ animatedElements.forEach(el => {
41
+ el.style.opacity = '0'; // Initially hidden
42
+ observer.observe(el);
43
+ });
44
+ });
style.css CHANGED
@@ -1,28 +1,51 @@
 
1
  body {
2
- padding: 2rem;
3
- font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
4
  }
5
 
6
- h1 {
7
- font-size: 16px;
8
- margin-top: 0;
9
  }
10
 
11
- p {
12
- color: rgb(107, 114, 128);
13
- font-size: 15px;
14
- margin-bottom: 10px;
15
- margin-top: 5px;
16
  }
17
 
18
- .card {
19
- max-width: 620px;
20
- margin: 0 auto;
21
- padding: 16px;
22
- border: 1px solid lightgray;
23
- border-radius: 16px;
24
  }
25
 
26
- .card p:last-child {
27
- margin-bottom: 0;
28
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* Base Styles */
2
  body {
3
+ -webkit-font-smoothing: antialiased;
4
+ -moz-osx-font-smoothing: grayscale;
5
  }
6
 
7
+ /* Custom Scrollbar */
8
+ ::-webkit-scrollbar {
9
+ width: 10px;
10
  }
11
 
12
+ ::-webkit-scrollbar-track {
13
+ background: #0f172a;
 
 
 
14
  }
15
 
16
+ ::-webkit-scrollbar-thumb {
17
+ background: #334155;
18
+ border-radius: 5px;
 
 
 
19
  }
20
 
21
+ ::-webkit-scrollbar-thumb:hover {
22
+ background: #4f46e5;
23
  }
24
+
25
+ /* Utility animations */
26
+ @keyframes fade-in-up {
27
+ from {
28
+ opacity: 0;
29
+ transform: translateY(20px);
30
+ }
31
+ to {
32
+ opacity: 1;
33
+ transform: translateY(0);
34
+ }
35
+ }
36
+
37
+ .animate-fade-in-up {
38
+ animation: fade-in-up 0.8s ease-out forwards;
39
+ }
40
+
41
+ /* Selection color override if not using Tailwind plugin */
42
+ ::selection {
43
+ background: #4f46e5;
44
+ color: #ffffff;
45
+ }
46
+
47
+ /* Smooth focus outlines for accessibility */
48
+ *:focus-visible {
49
+ outline: 2px solid #4f46e5;
50
+ outline-offset: 2px;
51
+ }