1<!DOCTYPE html> 2<html lang="pt" data-bs-theme="dark"> 3 4<head> 5 <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 6 <link rel="stylesheet" href="/assets/swiper-bundle.min.css"> 7 <link rel="stylesheet" href="/assets/intlTelInput.min.css"> 8 <meta charset="utf-8"> 9 <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> 10 11 <link rel="icon" type="image/png" href="/assets/favicon.png"> 12 <link rel="shortcut icon" href="/assets/favicon.png"> 13 <link rel="apple-touch-icon" href="/assets/favicon.png"> 14 15 <meta name="description" content="Curso DJ PRO START - AIMEC POA. Base sólida para DJs de todos os nÃveis! 16 17O DJ Pro Start da AIMEC Porto Alegre é o curso para quem deseja iniciar da forma correta e também para DJs"> 18 <meta name="keywords" content="escola de dj, curso de dj porto alegre, curso dj pro start , produção musical, dj profissional, aimec"> 19 <meta name="author" content="AIMEC Porto Alegre"> 20 <meta name="robots" content="index, follow"> 21 22 <meta property="og:type" content="website"> 23 <meta property="og:url" content="https://aimecpoa.com.br/produto/6"> 24 <meta property="og:title" content="Curso DJ PRO START | AIMEC Porto Alegre"> 25 <meta property="og:description" content="Base sólida para DJs de todos os nÃveis! 26 27O DJ Pro Start da AIMEC Porto Alegre é o curso para quem deseja iniciar da forma correta e também para DJs"> 28 <meta property="og:image" content="/assets/imgs/1779488499293-7288c1d067a506ca.png"> 29 <meta property="og:site_name" content="AIMEC Porto Alegre"> 30 <meta property="og:locale" content="pt_BR"> 31 32 <meta property="twitter:card" content="summary_large_image"> 33 <meta property="twitter:url" content="https://aimecpoa.com.br/produto/6"> 34 <meta property="twitter:title" content="Curso DJ PRO START | AIMEC Porto Alegre"> 35 <meta property="twitter:description" content="Base sólida para DJs de todos os nÃveis! 36 37O DJ Pro Start da AIMEC Porto Alegre é o curso para quem deseja iniciar da forma correta e também para DJs"> 38 <meta property="twitter:image" content="/assets/imgs/1779488499293-7288c1d067a506ca.png"> 39 40 <link href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.min.css" rel="stylesheet"> 41 <link rel="stylesheet" href="/assets/scrollCue.css"> 42 <link rel="stylesheet" href="/assets/theme.min.css"> 43 <link rel="stylesheet" href="/assets/landing_head.css"> 44 <link rel="stylesheet" href="/assets/home.css"> 45 <title>Curso DJ PRO START | AIMEC Porto Alegre</title> 46 47 <style> 48 body { padding-top: 5rem; } 49 50 .product-hero-img { 51 width: 100%; 52 height: 380px; 53 object-fit: cover; 54 border-radius: 12px; 55 box-shadow: 0 20px 60px rgba(0,0,0,0.5); 56 } 57 @media (max-width: 992px) { .product-hero-img { height: 280px; } } 58 @media (max-width: 576px) { .product-hero-img { height: 220px; border-radius: 8px; } } 59 60 .sticky-sidebar { position: sticky; top: 100px; } 61 @media (max-width: 991px) { .sticky-sidebar { position: static; } } 62 63 .info-card { 64 background: linear-gradient(145deg, #1a1a1a 0%, #141414 100%); 65 border: 1px solid rgba(255,255,255,0.06); 66 border-radius: 14px; 67 overflow: hidden; 68 } 69 70 .price-display { 71 font-size: 1.85rem; 72 font-weight: 800; 73 letter-spacing: -0.02em; 74 line-height: 1; 75 } 76 @media (max-width: 576px) { .price-display { font-size: 1.5rem; } } 77 78 .category-option { 79 background: linear-gradient(145deg, #1c1c1c 0%, #161616 100%); 80 border: 1px solid rgba(var(--bs-primary-rgb), 0.15); 81 border-radius: 10px; 82 cursor: pointer; 83 user-select: none; 84 transition: all 0.25s ease; 85 padding: 0.9rem 1rem; 86 } 87 .category-option:not(.disabled):hover { 88 border-color: rgba(var(--bs-primary-rgb), 0.45); 89 transform: translateY(-1px); 90 box-shadow: 0 6px 20px rgba(var(--bs-primary-rgb), 0.1); 91 } 92 .category-option.selected { 93 border-color: rgb(var(--bs-primary-rgb)); 94 background: rgba(var(--bs-primary-rgb), 0.1) !important; 95 box-shadow: 0 0 0 1px rgba(var(--bs-primary-rgb), 0.25); 96 } 97 .category-option.selected .check-icon { display: inline-flex !important; } 98 .category-option .check-icon { display: none !important; } 99 .category-option.disabled { opacity: 0.45;
99 cursor: not-allowed; pointer-events: none; } 100 101 .markdown-content h1, .markdown-content h2, .markdown-content h3 { 102 color: rgb(var(--bs-primary-rgb)); 103 margin-top: 1.5rem; margin-bottom: 1rem; 104 } 105 .markdown-content h1:first-child, .markdown-content h2:first-child, .markdown-content h3:first-child { margin-top: 0; } 106 .markdown-content h4, .markdown-content h5, .markdown-content h6 { 107 color: rgb(var(--bs-primary-rgb)); 108 margin-top: 1.25rem; margin-bottom: 0.75rem; 109 } 110 .markdown-content p { margin-bottom: 1rem; line-height: 1.7; } 111 .markdown-content ul, .markdown-content ol { margin-bottom: 1rem; padding-left: 1.5rem; } 112 .markdown-content li { margin-bottom: 0.5rem; } 113 .markdown-content blockquote { 114 margin: 1em 0; padding: 0.75em 1em; 115 border-left: 4px solid rgb(var(--bs-primary-rgb)); 116 background: rgba(var(--bs-primary-rgb), 0.1); 117 border-radius: 0 8px 8px 0; 118 } 119 .markdown-content code { 120 font-family: 'Fira Code', 'Monaco', 'Consolas', monospace; 121 font-size: 0.875em; background: rgba(255,255,255,0.08); 122 padding: 0.2em 0.4em; border-radius: 4px; 123 } 124 .markdown-content pre { margin: 1em 0; padding: 1em; background: rgba(0,0,0,0.4); border-radius: 8px; overflow-x: auto; } 125 .markdown-content pre code { background: none; padding: 0; } 126 .markdown-content a { color: rgb(var(--bs-primary-rgb)); } 127 .markdown-content strong { color: #fff; font-weight: 600; } 128 .markdown-content hr { border: none; border-top: 1px solid rgba(255,255,255,0.1); margin: 1.5em 0; } 129 .markdown-content img { max-width: 100%; height: auto; border-radius: 8px; margin: 1em 0; } 130 .markdown-content table { width: 100%; border-collapse: collapse; margin: 1em 0; } 131 .markdown-content table th, .markdown-content table td { padding: 0.75em; border: 1px solid rgba(255,255,255,0.1); text-align: left; } 132 .markdown-content table th { background: rgba(255,255,255,0.05); font-weight: 600; } 133 134 button.btn-aimec { cursor: pointer; font-family: inherit; width: 100%; } 135 button.btn-aimec:disabled { 136 opacity: 0.4; cursor: not-allowed; 137 transform: none !important; box-shadow: none !important; filter: none !important; 138 } 139 .btn-aimec.w-100 { width: 100%; } 140 141 .section-label { 142 display: inline-block; 143 padding: 0.4rem 0.9rem; 144 border: 1px solid rgba(255,255,255,0.12); 145 border-radius: 2px; 146 background: rgba(255,255,255,0.02); 147 font-size: 0.72rem; 148 letter-spacing: 0.18em; 149 text-transform: uppercase; 150 font-weight: 600; 151 color: rgba(255,255,255,0.6); 152 } 153 154 .icon-badge { 155 width: 42px; height: 42px; flex-shrink: 0; 156 border-radius: 10px; 157 background: rgba(var(--bs-primary-rgb), 0.12); 158 display: flex; align-items: center; justify-content: center; 159 color: rgb(var(--bs-primary-rgb)); font-size: 1.15rem; 160 } 161 162 .card-divider { height: 1px; background: rgba(255,255,255,0.07); margin: 1.25rem 0; } 163 </style> 164</head> 165 166<body> 167 <header> 168 <nav class="navbar landing-nav w-100"> 169 <div class="container px-3"> 170 <a href="/" class="navbar-brand"> 171 <img src="/assets/logo.png" alt="AIMEC POA"> 172 </a> 173 174 <div class="d-none d-lg-flex align-items-center gap-1"> 175 <a href="/#produtos" class="nav-link">Cursos</a> 176 <a href="/#estrutura" class="nav-link">Estrutura</a> 177 <a href="/#sobre" class="nav-link">Sobre</a> 178 <a href="https://wa.me/555130281746?text=Ol%C3%A1!%20Gostaria%20de%20mais%20informa%C3%A7%C3%B5es%20sobre%20a%20AIMEC%20POA" 179 target="_blank" rel="noopener" class="nav-link">Fale conosco</a> 180 </div> 181 182 <div class="d-flex align-items-center gap-3"> 183 <a href="/login" class="nav-cta d-none d-lg-inline-block">Ãrea do aluno</a> 184 <button class="hamburger-btn d-lg-none offcanvas-nav-btn" type="button" aria-label="Menu"> 185 <svg width="18" height="14" viewBox="0 0 18 14" fill="none" xmlns="http://www.w3.org/2000/svg"> 186 <rect y="0" width="18" height="1.8" rx="0.9" fill="currentColor"/> 187 <rect y="6.1" width="12" height="1.8" rx="0.9" fill="currentColor"/> 188 <rect y="12.2" width="18" height="1.8" rx="0.9" fill="currentColor"/> 189 </svg> 190 </button> 191 </div> 192 </div> 193 194 <div class="offcanvas offcanvas-start offcanvas-nav" style="width: 20rem; max-width: 90vw;" data-bs-theme="dark"> 195 <div class="offcanvas-header px-4 pt-4"> 196 <a href="/"><img src="/assets/logo.png" alt="AIMEC POA" style="width: 4rem;"></a> 197 <button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Fechar"></button> 198 </div> 199 <div class="offcanvas-body px-4 pt-2"> 200 <ul class="navbar-nav"> 201 <li class="nav-item"><a href="/#produtos" class="nav-link">Cursos</a></li> 202 <li class="nav-item"><a href="/#estrutura" class="nav-link">Estrutura</a></li> 203 <li class="nav-item"><a href="/#sobre" class="nav-link">Sobre</a></li> 204 <li class="nav-item"> 205 <a href="https://wa.me/555130281746?text=Ol%C3%A1!%20Gostaria%20de%20mais%20informa%C3%A7%C3%B5es%20sobre%20a%20AIMEC%20POA" 206 target="_blank" rel="noopener" class="nav-link">Fale conosco</a> 207 </li> 208 </ul> 209 <a href="/login" class="nav-cta">Ãrea do aluno</a> 210 </div> 211 </div> 212 </nav> 213</header> 214
215<script> 216 (function () { 217 var nav = document.querySelector('.landing-nav'); 218 if (!nav) return; 219 function handleScroll() { 220 nav.classList.toggle('nav-scrolled', window.scrollY > 30); 221 } 222 window.addEventListener('scroll', handleScroll, { passive: true }); 223 handleScroll(); 224 })(); 225</script>
225 226 227 228 <main> 229 230 <!-- Breadcrumb --> 231 <section class="py-3 py-lg-4 section-bg-dark"> 232 <div class="container"> 233 <nav aria-label="breadcrumb"> 234 <ol class="breadcrumb mb-0 small"> 235 <li class="breadcrumb-item"><a href="/" class="text-primary text-decoration-none">InÃcio</a></li> 236 <li class="breadcrumb-item"><a href="/#produtos" class="text-primary text-decoration-none">Cursos</a></li> 237 <li class="breadcrumb-item active text-white-50" aria-current="page">Curso DJ PRO START </li> 238 </ol> 239 </nav> 240 </div> 241 </section> 242 243 <div class="section-divider"></div> 244 245 <!-- Conteúdo Principal --> 246 <section class="py-xl-8 py-lg-6 py-5 section-anchor"> 247 <div class="section-bg bg-dots" style="opacity: 0.25;"></div> 248 <div class="section-bg bg-glow-side"></div> 249 <div class="container"> 250 <div class="row g-4 g-lg-5"> 251 252 <!-- Coluna esquerda: Imagem + Sobre o curso --> 253 <div class="col-lg-7 col-xl-8 order-1 order-lg-1"> 254 255 <!-- Mobile: nome + preço acima da imagem --> 256 <div class="d-lg-none mb-4" 257 data-cue="fadeIn" data-show="true" 258 style="animation-name: fadeIn; animation-duration: 600ms; animation-fill-mode: both;"> 259 <h1 class="h2 mb-2">Curso DJ PRO START </h1> 260 261 262 <p class="mb-0"> 263 <span class="text-white-50 small">A partir de </span> 264 <span class="text-primary fw-bold fs-4">R$ 2.600,00</span> 265 </p> 266 267 </div> 268 269 <!-- Imagem hero --> 270 <div class="mb-4" 271 data-cue="zoomIn" data-show="true" 272 style="animation-name: zoomIn; animation-duration: 700ms; animation-fill-mode: both;"> 273 <img src="/assets/imgs/1779488499293-7288c1d067a506ca.png" alt="Curso DJ PRO START " class="product-hero-img"> 274 </div> 275 276 <!-- Sobre o Curso (desktop) --> 277 <div class="d-none d-lg-block" 278 data-cue="fadeIn" data-show="true" 279 style="animation-name: fadeIn; animation-duration: 600ms; animation-delay: 150ms; animation-fill-mode: both;"> 280 <div class="d-flex align-items-center gap-3 mb-4"> 281 <div class="icon-badge"> 282 <i class="bi bi-info-circle-fill"></i> 283 </div> 284 <h2 class="h4 mb-0">Sobre o curso</h2> 285 </div> 286 <div class="markdown-content markdown-content-desktop"> 287 288 <div class="loading-content text-muted">Carregando descrição...</div> 289 290 </div> 291 </div> 292 </div> 293 294 <!-- Sidebar: card de informações --> 295 <div class="col-lg-5 col-xl-4 order-2 order-lg-2" 296 data-cue="slideInRight" data-show="true" 297 style="animation-name: slideInRight; animation-duration: 600ms; animation-fill-mode: both;"> 298 <div class="sticky-sidebar"> 299 <div class="info-card p-4"> 300 301 <!-- TÃtulo + preço (desktop) --> 302 <div class="d-none d-lg-block mb-4"> 303 <h1 class="h3 mb-3">Curso DJ PRO START </h1> 304 305 306 <div class="d-flex align-items-baseline gap-2"> 307 <span class="text-white-50 small">A partir de</span> 308 <span class="price-display text-primary">R$ 2.600,00</span> 309 </div> 310 311 </div> 312 313 314 <div class="card-divider d-none d-lg-block"></div> 315 316
317 <!-- Seleção de Modalidade --> 318 319 <div class="mb-4"> 320 <span class="section-label d-inline-flex align-items-center gap-2 mb-3"> 321 <i class="bi bi-ui-checks" style="font-size:0.85rem;"></i> 322 Escolha a Modalidade 323 </span> 324 <div class="d-flex flex-column gap-2" id="categories-list"> 325 326 <div class="category-option " 327 data-category-id="2" 328 data-category-name="CURSO DJ PRO START " 329 data-category-price="2600" 330 data-has-slots="true"> 331 <div class="d-flex justify-content-between align-items-center"> 332 <div> 333 <span class="fw-semibold d-block small">CURSO DJ PRO START </span> 334 335 <span class="text-primary fw-bold" style="font-size:0.82rem;"> 336 R$ 2.600,00 337 </span> 338 339 </div> 340 341 <i class="bi bi-check-circle-fill text-primary check-icon" style="font-size:1.1rem;"></i> 342 343 </div> 344 </div> 345 346 </div> 347 </div> 348 349 350 <!-- Botões de Ação --> 351 <div class="d-flex flex-column gap-3 mb-4"> 352 353 <button type="button" class="btn-aimec btn-aimec--primary" id="btn-comprar" disabled> 354 <i class="bi bi-bag-check-fill"></i> 355 <span id="btn-comprar-text">Selecione uma modalidade</span> 356 </button> 357 358 <a href="https://wa.me/555130281746?text=Ol%C3%A1!%20Tenho%20interesse%20no%20curso%20Curso%20DJ%20PRO%20START%20%20e%20gostaria%20de%20mais%20informa%C3%A7%C3%B5es" 359 class="btn-aimec btn-aimec--ghost w-100" target="_blank" rel="noopener"> 360 <svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" fill="currentColor" viewBox="0 0 16 16"> 361 <path d="M13.601 2.326A7.85 7.85 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.9 7.9 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.9 7.9 0 0 0 13.6 2.326zM7.994 14.521a6.6 6.6 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.56 6.56 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592m3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.114.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.114-.198-.011-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.73.73 0 0 0-.529.247c-.182.198-.691.677-.691 1.654s.71 1.916.81 2.049c.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232"/> 362 </svg> 363 Dúvidas? Fale conosco 364 </a> 365 </div> 366 367 <div class="card-divider"></div> 368 369 <!-- Contato --> 370 <ul class="list-unstyled mb-0 small"> 371 <li class="d-flex align-items-start gap-2 mb-3"> 372 <i class="bi bi-geo-alt-fill text-primary mt-1 flex-shrink-0"></i> 373 <a href="https://maps.app.goo.gl/qcL51n5QaqpzknGP9" class="text-reset text-decoration-none" target="_blank" rel="noopener"> 374 Rua Buarque de Macedo, N° 489<br> 375 São Geraldo, POA/RS 376 </a> 377 </li> 378 <li class="d-flex align-items-start gap-2"> 379 <i class="bi bi-telephone-fill text-primary mt-1 flex-shrink-0"></i> 380 <a href="tel:+555130281746" class="text-reset text-decoration-none"> 381 (51) 3028-1746 382 </a> 383 </li> 384 </ul> 385 </div> 386 </div> 387 </div> 388 389 <!-- Sobre o Curso (mobile, após o card) --> 390 <div class="col-12 order-3 d-lg-none" 391 data-cue="fadeIn" data-show="true" 392 style="animation-name: fadeIn; animation-duration: 600ms; animation-fill-mode: both;"> 393 <div class="d-flex align-items-center gap-3 mb-4"> 394 <div class="icon-badge"> 395 <i class="bi bi-info-circle-fill"></i> 396 </div> 397 <h2 class="h4 mb-0">Sobre o curso</h2> 398 </div> 399 <div class="markdown-content markdown-content-mobile"> 400 401 <div class="loading-content text-muted">Carregando descrição...</div> 402 403 </div> 404 </div> 405 406 </div> 407 </div> 408 </section> 409 410 <!-- Sugestões de outros cursos --> 411 412 <div class="section-divider"></div> 413 414 <section class="py-xl-8 py-lg-7 py-5 section-bg-dark section-anchor"> 415 <div class="section-bg bg-waveform" style="opacity: 0.5;"></div> 416 <div class="container"> 417 <div class="row mb-6"> 418 <div class="col-lg-8 offset-lg-2 text-center section-heading" 419 data-cue="fadeIn" data-show="true" 420 style="animation-name: fadeIn; animation-duration: 600ms; animation-fill-mode: both;"> 421 <small class="text-uppercase ls-md fw-semibold">Continue explorando</small> 422 <h2 class="my-3">Outros cursos que podem <span class="text-primary">te interessar</span></h2> 423 </div> 424 </div> 425 <div class="row g-4"> 426 427 <div class="col-lg-4 col-md-6 col-12" 428 data-cue="zoomIn" data-show="true" 429 style="animation-name: zoomIn; animation-duration: 600ms; animation-delay: 0ms; animation-fill-mode: both;"> 430 <a href="/produto/5" class="text-decoration-none d-block h-100"> 431 <div class="product-card"> 432 <div class="product-card__media"> 433 <img src="/assets/imgs/1779488506698-41f1f98291a43c43.png" alt="Curso PRODUÃÃO MUSICAL PRO START"> 434 435 <div class="product-card__badge-strip"> 436
437 <span class="product-card__badge">CURSO PRODUÃÃO MUSICAL PRO START</span> 438 439 440 </div> 441 442 </div> 443 <div class="product-card__body"> 444 <h4 class="product-card__title">Curso PRODUÃÃO MUSICAL PRO START</h4> 445 <div class="d-flex align-items-center justify-content-between mt-auto pt-2"> 446 <span class="product-card__cta"> 447 Ver curso 448 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16"> 449 <path fill-rule="evenodd" d="M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8"/> 450 </svg> 451 </span> 452 453 <span class="product-card__meta">1 modalidade</span> 454 455 </div> 456 </div> 457 </div> 458 </a> 459 </div> 460 461 </div> 462 </div> 463 </section> 464 465 466 <div class="section-divider"></div> 467 468 <!-- CTA Final --> 469 <section class="py-xl-8 py-lg-7 py-5"> 470 <div class="container"> 471 <div class="cta-final" 472 data-cue="zoomIn" data-show="true" 473 style="animation-name: zoomIn; animation-duration: 700ms; animation-fill-mode: both;"> 474 <h2>Pronto para começar sua jornada musical?</h2> 475 <p> 476 Agende uma visita e venha viver a experiência da AIMEC POA pessoalmente. 477 Nossos atendentes vão te apresentar a estrutura, os cursos e o universo que pode te esperar 478 </p> 479 <a href="https://wa.me/555130281746?text=Ol%C3%A1!%20Tenho%20interesse%20no%20curso%20Curso%20DJ%20PRO%20START%20%20e%20gostaria%20de%20agendar%20uma%20visita" 480 target="_blank" rel="noopener" 481 class="btn-aimec btn-aimec--dark"> 482 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16"> 483 <path d="M13.601 2.326A7.85 7.85 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.9 7.9 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.9 7.9 0 0 0 13.6 2.326zM7.994 14.521a6.6 6.6 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.56 6.56 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592m3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.114.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.114-.198-.011-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.73.73 0 0 0-.529.247c-.182.198-.691.677-.691 1.654s.71 1.916.81 2.049c.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232"/> 484 </svg> 485 Agendar visita 486 </a> 487 <div class="mt-4"> 488 <p class="mb-0 small" style="opacity: 0.9; letter-spacing: 0.05em;"> 489 R. Buarque de Macedo, 489 · São Geraldo · Porto Alegre · (51) 3028-1746 490 </p> 491 </div> 492 </div> 493 </div> 494 </section> 495 </main> 496 497 498<link rel="stylesheet" href="/assets/checkout_modal.css"> 499 500<div class="modal fade" id="checkoutModal" tabindex="-1" aria-labelledby="checkoutModalLabel" aria-hidden="true" data-bs-backdrop="static">
501 <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable modal-lg"> 502 <div class="modal-content"> 503 504 <!-- Header --> 505 <div class="modal-header"> 506 <h5 class="modal-title d-flex align-items-center gap-2" id="checkoutModalLabel"> 507 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" class="text-primary" viewBox="0 0 16 16"> 508 <path d="M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5M3.102 4l1.313 7h8.17l1.313-7zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4m7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4m-7 1a1 1 0 1 1 0 2 1 1 0 0 1 0-2m7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2"/> 509 </svg> 510 <span id="checkout-header-title">Checkout</span> 511 </h5> 512 <button type="button" class="btn-close btn-close-white" data-bs-dismiss="modal" aria-label="Fechar"></button> 513 </div> 514 515 <!-- Step Progress Bar --> 516 <div class="checkout-steps"> 517 <div class="checkout-step active" data-step-indicator="1"> 518 <span class="step-num">1</span> 519 <span class="step-label">Dados</span> 520 </div> 521 <div class="checkout-step-divider" data-step-divider="1"></div> 522 <div class="checkout-step" data-step-indicator="2"> 523 <span class="step-num">2</span> 524 <span class="step-label">Endereço</span> 525 </div> 526 <div class="checkout-step-divider" data-step-divider="2"></div> 527 <div class="checkout-step" data-step-indicator="3"> 528 <span class="step-num">3</span> 529 <span class="step-label">Revisão</span> 530 </div> 531 <div class="checkout-step-divider checkout-step-credit-only" data-step-divider="3" style="display:none;"></div> 532 <div class="checkout-step checkout-step-credit-only" data-step-indicator="4" style="display:none;"> 533 <span class="step-num">4</span> 534 <span class="step-label">Cartão</span> 535 </div> 536 </div> 537 538 <!-- Body --> 539 <div class="modal-body"> 540 <form id="checkout-form" novalidate> 541 542 <!-- âââ STEP 1: Produto + Dados Pessoais âââ --> 543 <div class="checkout-step-panel" data-step="1"> 544 <!-- Resumo do Produto no Checkout --> 545<div class="checkout-product-card"> 546 <div class="product-thumb-wrap"> 547 <img id="checkout-product-image" src="" alt="Produto" class="product-thumb" onerror="this.style.display='none'; this.nextElementSibling.style.display='flex';"> 548 <div class="product-thumb-placeholder" style="display:none;"> 549 <svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" fill="currentColor" class="text-primary" viewBox="0 0 16 16"> 550 <path d="M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0"/> 551 <path d="M2.002 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v6.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12V3a1 1 0 0 1 1-1z"/> 552 </svg> 553 </div> 554 </div> 555 <div class="product-info"> 556 <h6 id="checkout-product-name">Nome do Produto</h6> 557 <p class="product-desc" id="checkout-product-description"></p> 558 <div class="d-flex flex-wrap gap-2 align-items-center"> 559 <span class="badge bg-primary bg-opacity-25 text-primary px-2 py-1" style="font-size:.72rem; font-weight:600;" id="checkout-category-name">
559Modalidade</span> 560 </div> 561 </div> 562 <div class="product-price-tag" id="checkout-price">R$ 0,00</div> 563</div> 564 565 <!-- Seção: Dados Pessoais --> 566<div class="checkout-section"> 567 <div class="checkout-section-title"> 568 <svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" fill="currentColor" viewBox="0 0 16 16"> 569 <path d="M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6m2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z"/> 570 </svg> 571 Dados Pessoais 572 </div> 573 <div class="row g-3"> 574 <div class="col-12"> 575 <label for="checkout-nome" class="form-label">Nome Completo <span class="text-danger">*</span></label> 576 <input type="text" class="form-control" id="checkout-nome" placeholder="Digite seu nome completo" required> 577 <div class="invalid-feedback">Por favor, informe seu nome completo.</div> 578 </div> 579 <div class="col-md-6"> 580 <label for="checkout-cpf" class="form-label">CPF <span class="text-danger">*</span></label> 581 <input type="text" class="form-control" id="checkout-cpf" placeholder="000.000.000-00" maxlength="14" required> 582 <div class="invalid-feedback">Por favor, informe um CPF válido.</div> 583 </div> 584 <div class="col-md-6"> 585 <label for="checkout-email" class="form-label">E-mail <span class="text-danger">*</span></label> 586 <input type="email" class="form-control" id="checkout-email" placeholder="[email protected]" required> 587 <div class="invalid-feedback">Por favor, informe um e-mail válido.</div> 588 </div> 589 <div class="col-12"> 590 <label for="checkout-celular" class="form-label">Celular <span class="text-danger">*</span></label> 591 <input type="tel" class="form-control" id="checkout-celular" placeholder="(00) 00000-0000" maxlength="15" required> 592 <div class="invalid-feedback">Por favor, informe um celular válido.</div> 593 </div> 594 </div> 595</div> 596 597 </div> 598 599 <!-- âââ STEP 2: Endereço + Pagamento âââ --> 600 <div class="checkout-step-panel" data-step="2" style="display:none;"> 601 <!-- Seção: Endereço --> 602<div class="checkout-section"> 603 <div class="checkout-section-title"> 604 <svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" fill="currentColor" viewBox="0 0 16 16"> 605 <path fill-rule="evenodd" d="M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 4m2.5 0a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0"/> 606 </svg> 607 Endereço 608 </div> 609 <div class="row g-3"> 610 <div class="col-md-4"> 611 <label for="checkout-cep" class="form-label">CEP <span class="text-danger">*</span></label> 612 <div class="input-group"> 613 <input type="text" class="form-control" id="checkout-cep" placeholder="00000-000" maxlength="9" required> 614 <button class="btn btn-outline-primary" type="button" id="btn-buscar-cep" title="Buscar CEP"> 615 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16"> 616 <path d="M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001q.044.06.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1 1 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0"/> 617 </svg> 618 </button> 619 </div> 620 <div class="invalid-feedback">Por favor, informe um CEP válido.</div> 621 <small class="text-muted" id="cep-loading" style="display: none;"> 622 <span class="spinner-border spinner-border-sm me-1"></span>Buscando... 623 </small> 624 <small class="text-danger" id="cep-error" style="display: none;">CEP não encontrado</small> 625 </div> 626 <div class="col-md-8"> 627 <label for="checkout-endereco" class="form-label">Endereço <span class="text-danger">*</span></label> 628 <input type="text" class="form-control" id="checkout-endereco" placeholder="Rua, Avenida..." required> 629 <div class="invalid-feedback">Por favor, informe o endereço.</div> 630 </div> 631 <div class="col-md-3"> 632 <label for="checkout-numero" class="form-label">Número <span class="text-danger">*</span></label> 633 <input type="text" class="form-control" id="checkout-numero" placeholder="N°" required> 634 <div class="invalid-feedback">Informe o número.</div> 635 </div> 636 <div class="col-md-5"> 637 <label for="checkout-bairro" class="form-label">Bairro <span class="text-danger">*</span></label> 638 <input type="text" class="form-control" id="checkout-bairro" placeholder="Bairro" required> 639 <div class="invalid-feedback">Por favor, informe o bairro.</div> 640 </div> 641 <div class="col-md-4"> 642 <label for="checkout-complemento" class="form-label">Complemento</label> 643 <input type="text" class="form-control" id="checkout-complemento" placeholder="Apto, Bloco..."> 644 </div> 645 <div class="col-md-8"> 646 <label for="checkout-cidade" class="form-label">
646Cidade <span class="text-danger">*</span></label> 647 <input type="text" class="form-control" id="checkout-cidade" placeholder="Cidade" required> 648 <div class="invalid-feedback">Por favor, informe a cidade.</div> 649 </div> 650 <div class="col-md-4"> 651 <label for="checkout-estado" class="form-label">Estado <span class="text-danger">*</span></label> 652 <select class="form-select" id="checkout-estado" required> 653 <option value="">Selecione...</option> 654 <option value="AC">Acre</option> 655 <option value="AL">Alagoas</option> 656 <option value="AP">Amapá</option> 657 <option value="AM">Amazonas</option> 658 <option value="BA">Bahia</option> 659 <option value="CE">Ceará</option> 660 <option value="DF">Distrito Federal</option> 661 <option value="ES">EspÃrito Santo</option> 662 <option value="GO">Goiás</option> 663 <option value="MA">Maranhão</option> 664 <option value="MT">Mato Grosso</option> 665 <option value="MS">Mato Grosso do Sul</option> 666 <option value="MG">Minas Gerais</option> 667 <option value="PA">Pará</option> 668 <option value="PB">ParaÃba</option> 669 <option value="PR">Paraná</option> 670 <option value="PE">Pernambuco</option> 671 <option value="PI">PiauÃ</option> 672 <option value="RJ">Rio de Janeiro</option> 673 <option value="RN">Rio Grande do Norte</option> 674 <option value="RS">Rio Grande do Sul</option> 675 <option value="RO">Rondônia</option> 676 <option value="RR">Roraima</option> 677 <option value="SC">Santa Catarina</option> 678 <option value="SP">São Paulo</option> 679 <option value="SE">Sergipe</option> 680 <option value="TO">Tocantins</option> 681 </select> 682 <div class="invalid-feedback">Selecione o estado.</div> 683 </div> 684 </div> 685</div> 686 687 <!-- Seção: Forma de Pagamento --> 688<div class="checkout-section"> 689 <div class="checkout-section-title"> 690 <svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" fill="currentColor" viewBox="0 0 16 16"> 691 <path d="M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z"/> 692 </svg> 693 Forma de Pagamento <span class="text-danger">*</span> 694 </div> 695 <div class="row g-3"> 696 <!-- Opção PIX --> 697 <div class="col-6"> 698 <div class="payment-option rounded-3 p-3 h-100" data-payment="pix"> 699 <div class="d-flex flex-column align-items-center text-center"> 700 <div class="payment-icon mb-2"> 701 <svg width="32" height="32" fill="#77c9a4" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"> 702 <path d="M11.917 11.71a2.046 2.046 0 0 1-1.454-.602l-2.1-2.1a.4.4 0 0 0-.551 0l-2.108 2.108a2.044 2.044 0 0 1-1.454.602h-.414l2.66 2.66c.83.83 2.177.83 3.007 0l2.667-2.668h-.253zM4.25 4.282c.55 0 1.066.214 1.454.602l2.108 2.108a.39.39 0 0 0 .552 0l2.1-2.1a2.044 2.044 0 0 1 1.453-.602h.253L9.503 1.623a2.127 2.127 0 0 0-3.007 0l-2.66 2.66h.414z"/> 703 <path d="m14.377 6.496-1.612-1.612a.307.307 0 0 1-.114.023h-.733c-.379 0-.75.154-1.017.422l-2.1 2.1a1.005 1.005 0 0 1-1.425 0L5.268 5.32a1.448 1.448 0 0 0-1.018-.422h-.9a.306.306 0 0 1-.109-.021L1.623 6.496c-.83.83-.83 2.177 0 3.008l1.618 1.618a.305.305 0 0 1 .108-.022h.901c.38 0 .75-.153 1.018-.421L7.375 8.57a1.034 1.034 0 0 1 1.426 0l2.1 2.1c.267.268.638.421 1.017.421h.733c.04 0 .079.01.114.024l1.612-1.612c.83-.83.83-2.178 0-3.008z"/> 704 </svg> 705 </div> 706 <span class="fw-semibold">PIX</span> 707 <small class="text-muted d-none d-sm-block">Pagamento instantâneo</small> 708 </div> 709 <div class="payment-check"> 710 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" class="text-primary" viewBox="0 0 16 16"> 711 <path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z"/> 712 </svg> 713 </div> 714 </div> 715 </div> 716 717 <!-- Opção Cartão de Crédito --> 718 <div class="col-6"> 719 <div class="payment-option rounded-3 p-3 h-100" data-payment="credit"> 720 <div class="d-flex flex-column align-items-center text-center"> 721 <div class="payment-icon mb-2"> 722 <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" viewBox="0 0 16 16"> 723 <path d="M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z"/> 724 </svg> 725 </div>
726 <span class="fw-semibold">Crédito</span> 727 <small class="text-muted d-none d-sm-block">Cartão de crédito</small> 728 </div> 729 <div class="payment-check"> 730 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" class="text-primary" viewBox="0 0 16 16"> 731 <path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z"/> 732 </svg> 733 </div> 734 </div> 735 </div> 736 </div> 737 <div class="invalid-feedback d-block" id="payment-error" style="display: none !important;">Por favor, selecione uma forma de pagamento.</div> 738</div> 739 740 </div> 741 742 <!-- âââ STEP 3: Revisão âââ --> 743 <div class="checkout-step-panel" data-step="3" style="display:none;"> 744 745 <!-- Produto --> 746 <div class="review-product-banner"> 747 <img id="review-product-image" src="" alt="Produto" onerror="this.style.display='none'; this.nextElementSibling.style.display='flex';"> 748 <div class="review-product-placeholder" style="display:none;"> 749 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="text-primary" viewBox="0 0 16 16"> 750 <path d="M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0"/> 751 <path d="M2.002 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v6.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12V3a1 1 0 0 1 1-1z"/> 752 </svg> 753 </div> 754 <div> 755 <div class="review-prod-name" id="review-product-name"></div> 756 <div class="review-prod-cat" id="review-category-name"></div> 757 </div> 758 </div> 759 760 <!-- Dados Pessoais --> 761 <div class="review-section"> 762 <div class="review-section-title"> 763 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16"> 764 <path d="M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6m2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z"/> 765 </svg> 766 Dados Pessoais 767 </div> 768 <div class="review-row"> 769 <span class="review-label">Nome</span> 770 <span class="review-value" id="review-nome"></span> 771 </div> 772 <div class="review-row"> 773 <span class="review-label">CPF</span> 774 <span class="review-value" id="review-cpf"></span> 775 </div> 776 <div class="review-row"> 777 <span class="review-label">E-mail</span> 778 <span class="review-value" id="review-email"></span> 779 </div> 780 <div class="review-row"> 781 <span class="review-label">Celular</span> 782 <span class="review-value" id="review-celular"></span> 783 </div> 784 </div> 785 786 <!-- Endereço --> 787 <div class="review-section"> 788 <div class="review-section-title"> 789 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16"> 790 <path fill-rule="evenodd" d="M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 4m2.5 0a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0"/> 791 </svg> 792 Endereço 793 </div> 794 <div class="review-row">
795 <span class="review-label">Endereço</span> 796 <span class="review-value" id="review-endereco"></span> 797 </div> 798 <div class="review-row"> 799 <span class="review-label">Bairro</span> 800 <span class="review-value" id="review-bairro"></span> 801 </div> 802 <div class="review-row"> 803 <span class="review-label">Cidade/UF</span> 804 <span class="review-value" id="review-cidade-uf"></span> 805 </div> 806 <div class="review-row"> 807 <span class="review-label">CEP</span> 808 <span class="review-value" id="review-cep"></span> 809 </div> 810 </div> 811 812 <!-- Pagamento --> 813 <div class="review-section"> 814 <div class="review-section-title"> 815 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16"> 816 <path d="M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z"/> 817 </svg> 818 Pagamento 819 </div> 820 <div class="review-row"> 821 <span class="review-label">Método</span> 822 <span class="review-value" id="review-pagamento"></span> 823 </div> 824 </div> 825 826 <!-- Total --> 827 <div class="review-total-bar"> 828 <span class="review-total-label">Total a pagar</span> 829 <span class="review-total-value" id="review-total"></span> 830 </div> 831 832 </div> 833 834 <!-- âââ STEP 4: Cartão de Crédito (visÃvel somente quando método = credit) âââ --> 835 <div class="checkout-step-panel" data-step="4" style="display:none;"> 836 <!-- âââ Formulário de Cartão de Crédito âââ --> 837<div class="checkout-section credit-card-section"> 838 <div class="checkout-section-title"> 839 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16"> 840 <path d="M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z"/> 841 </svg> 842 Dados do Cartão 843 </div> 844 845 <!-- Número do Cartão --> 846 <div class="mb-3"> 847 <label for="checkout-card-number" class="form-label">Número do Cartão</label> 848 <div class="card-input-wrapper"> 849 <input type="text" class="form-control" id="checkout-card-number" 850 placeholder="0000 0000 0000 0000" maxlength="19" inputmode="numeric" 851 autocomplete="cc-number" required> 852 <div class="card-brand-icon" id="card-brand-icon"></div> 853 </div> 854 </div> 855 856 <!-- Nome do Titular --> 857 <div class="mb-3"> 858 <label for="checkout-card-name" class="form-label">Nome do Titular</label> 859 <input type="text" class="form-control" id="checkout-card-name" 860 placeholder="Nome como está no cartão" maxlength="30" 861 autocomplete="cc-name" required> 862 </div> 863 864 <!-- Validade e CVV --> 865 <div class="row g-3 mb-3"> 866 <div class="col-4"> 867 <label for="checkout-card-month" class="form-label">Mês</label> 868 <select class="form-select" id="checkout-card-month" autocomplete="cc-exp-month" required> 869 <option value="">Mês</option> 870 <option value="01">01</option> 871 <option value="02">02</option> 872 <option value="03">03</option> 873 <option value="04">04</option> 874 <option value="05">05</option> 875 <option value="06">06</option> 876 <option value="07">07</option> 877 <option value="08">08</option> 878 <option value="09">09</option> 879 <option value="10">10</option> 880 <option value="11">11</option> 881 <option value="12">12</option> 882 </select> 883 </div> 884 <div class="col-4"> 885 <label for="checkout-card-year" class="form-label">Ano</label> 886 <select class="form-select" id="checkout-card-year" autocomplete="cc-exp-year" required> 887 <option value="">Ano</option> 888 889 <option value="26">2026</option> 890 891 <option value="27">2027</option> 892 893 <option value="28">2028</option> 894 895 <option value="29">2029</option> 896 897 <option value="30">2030</option> 898 899 <option value="31">2031</option> 900 901 <option value="32">2032</option> 902 903 <option value="33">2033</option> 904 905 <option value="34">2034</option> 906 907 <option value="35">2035</option> 908 909 <option value="36">2036</option> 910 911 <option value="37">2037</option> 912 913 <option value="38">2038</option> 914 915 <option value="39">2039</option> 916 917 <option value="40">2040</option> 918 919 <option value="41">2041</option> 920 921 </select> 922 </div> 923 <div class="col-4"> 924 <label for="checkout-card-cvv" class="form-label">CVV</label> 925 <input type="text" class="form-control" id="checkout-card-cvv" 926 placeholder="000" maxlength="4" inputmode="numeric" 927 autocomplete="cc-csc" required> 928 </div> 929 </div> 930 931 <!-- Parcelas --> 932 <div class="mb-3" style="display:none"> 933 <label for="checkout-installments" class="form-label">Parcelas</label> 934 <select class="form-select" id="checkout-installments"> 935 <!-- Será preenchido dinamicamente pelo JS --> 936 <option value="1">1x à vista</option> 937 </select> 938 </div> 939</div> 940 941<!-- Segurança --> 942<div class="credit-security-info"> 943 <div class="security-badge"> 944 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16"> 945 <path d="M5.338 1.59a61 61 0 0 0-2.837.856.48.48 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.7 10.7 0 0 0 2.287 2.233c.346.244.652.42.893.533q.18.085.293.118a1 1 0 0 0 .101.025 1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625 2.5 2.5 0 0 1-.444.182l-.004.002-.002.001a.5.5 0 0 1-.22 0l-.002-.001-.004-.002a2.5 2.5 0 0 1-.443-.182 7 7 0 0 1-1.049-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56"/> 946 <path d="M10.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0"/> 947 </svg>
948 <span>Pagamento seguro</span> 949 </div> 950 <div class="security-badge"> 951 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16"> 952 <path d="M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2m3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2"/> 953 </svg> 954 <span>Dados criptografados</span> 955 </div> 956</div> 957 958 </div> 959 960 </form> 961 962 <!-- âââ Tela de Sucesso (fora do form, controlada por JS) âââ --> 963 <div id="checkout-success-panel" style="display:none;"> 964 <!-- âââ Tela de Sucesso â Cartão de Crédito Aprovado âââ --> 965<div class="checkout-success-screen text-center"> 966 <!-- Ãcone animado de sucesso --> 967 <div class="success-icon-wrap"> 968 <div class="success-circle"> 969 <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" fill="currentColor" viewBox="0 0 16 16" class="success-check"> 970 <path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0"/> 971 </svg> 972 </div> 973 </div> 974 975 <h4 class="success-title">Pagamento Aprovado!</h4> 976 <p class="success-subtitle">Sua transação foi processada com sucesso.</p> 977 978 <!-- Detalhes da transação --> 979 <div class="success-details"> 980 <div class="success-detail-row"> 981 <span class="detail-label">Código</span> 982 <span class="detail-value" id="success-transaction-code"></span> 983 </div> 984 <div class="success-detail-row"> 985 <span class="detail-label">Produto</span> 986 <span class="detail-value" id="success-product-name"></span> 987 </div> 988 <div class="success-detail-row"> 989 <span class="detail-label">Valor</span> 990 <span class="detail-value success-amount" id="success-amount"></span> 991 </div> 992 <div class="success-detail-row" id="success-card-row" style="display:none;"> 993 <span class="detail-label">Cartão</span> 994 <span class="detail-value" id="success-card-info"></span> 995 </div> 996 <div class="success-detail-row" id="success-installments-row" style="display:none;"> 997 <span class="detail-label">Parcelas</span> 998 <span class="detail-value" id="success-installments"></span> 999 </div> 1000 </div> 1001 1002 <!-- Mensagem de contato --> 1003 <div class="success-contact-card"> 1004 <div class="contact-icon"> 1005 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" viewBox="0 0 16 16"> 1006 <path d="M13.601 2.326A7.85 7.85 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.9 7.9 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.9 7.9 0 0 0 13.6 2.326zM7.994 14.521a6.6 6.6 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.56 6.56 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592m3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.116.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.116-.198-.012-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.325-.335-.445-.34-.116-.007-.248-.007-.38-.007a.73.73 0 0 0-.529.247c-.182.198-.691.677-.691 1.654s.71 1.916.808 2.049c.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232z"/> 1007 </svg> 1008 </div> 1009 <div class="contact-text"> 1010 <strong>Em breve entraremos em contato!</strong> 1011 <p>A diretoria da escola entrará em contato via WhatsApp para dar continuidade à sua matrÃcula.</p> 1012 </div> 1013 </div> 1014 1015 <!-- Botão WhatsApp --> 1016 <a id="success-whatsapp-btn" href="#" target="_blank" rel="noopener noreferrer" class="btn btn-success btn-lg w-100 d-flex align-items-center justify-content-center gap-2 mt-3"> 1017 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16"> 1018 <path d="M13.601 2.326A7.85 7.85 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.9 7.9 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.9 7.9 0 0 0 13.6 2.326zM7.994 14.521a6.6 6.6 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.56 6.56 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592m3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.116.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.116-.198-.012-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.325-.335-.445-.34-.116-.007-.248-.007-.38-.007a.73.73 0 0 0-.529.247c-.182.198-.691.677-.691 1.654s.71 1.916.808 2.049c.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058
10181.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232z"/> 1019 </svg> 1020 Falar com a escola no WhatsApp 1021 </a> 1022 1023 <!-- Botão fechar --> 1024 <button type="button" class="btn btn-outline-secondary w-100 mt-2" data-bs-dismiss="modal"> 1025 Fechar 1026 </button> 1027</div> 1028 1029 </div> 1030 1031 <!-- âââ Tela PIX â QR Code (fora do form, controlada por JS) âââ --> 1032 <div id="checkout-pix-panel" style="display:none;"> 1033 <!-- âââ Tela PIX â QR Code + Copia e Cola âââ --> 1034<div class="pix-payment-screen text-center"> 1035 <!-- Header PIX --> 1036 <div class="pix-header"> 1037 <div class="pix-icon-wrap"> 1038 <svg width="36" height="36" fill="#77c9a4" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"> 1039 <path d="M11.917 11.71a2.046 2.046 0 0 1-1.454-.602l-2.1-2.1a.4.4 0 0 0-.551 0l-2.108 2.108a2.044 2.044 0 0 1-1.454.602h-.414l2.66 2.66c.83.83 2.177.83 3.007 0l2.667-2.668h-.253zM4.25 4.282c.55 0 1.066.214 1.454.602l2.108 2.108a.39.39 0 0 0 .552 0l2.1-2.1a2.044 2.044 0 0 1 1.453-.602h.253L9.503 1.623a2.127 2.127 0 0 0-3.007 0l-2.66 2.66h.414z"/> 1040 <path d="m14.377 6.496-1.612-1.612a.307.307 0 0 1-.114.023h-.733c-.379 0-.75.154-1.017.422l-2.1 2.1a1.005 1.005 0 0 1-1.425 0L5.268 5.32a1.448 1.448 0 0 0-1.018-.422h-.9a.306.306 0 0 1-.109-.021L1.623 6.496c-.83.83-.83 2.177 0 3.008l1.618 1.618a.305.305 0 0 1 .108-.022h.901c.38 0 .75-.153 1.018-.421L7.375 8.57a1.034 1.034 0 0 1 1.426 0l2.1 2.1c.267.268.638.421 1.017.421h.733c.04 0 .079.01.114.024l1.612-1.612c.83-.83.83-2.178 0-3.008z"/> 1041 </svg> 1042 </div> 1043 <h5 class="pix-title">Pagamento via PIX</h5> 1044 <p class="pix-subtitle">Escaneie o QR Code ou copie o código para pagar</p> 1045 </div> 1046 1047 <!-- Valor --> 1048 <div class="pix-amount-bar"> 1049 <span class="pix-amount-label">Valor a pagar</span> 1050 <span class="pix-amount-value" id="pix-amount"></span> 1051 </div> 1052 1053 <!-- QR Code --> 1054 <div class="pix-qr-container"> 1055 <div class="pix-qr-frame"> 1056 <img id="pix-qr-image" alt="QR Code PIX" width="220" height="220"> 1057 </div> 1058 </div> 1059 1060 <!-- Copia e Cola --> 1061 <div class="pix-copy-section"> 1062 <label class="pix-copy-label">PIX Copia e Cola</label> 1063 <div class="pix-copy-field"> 1064 <input type="text" id="pix-copy-text" class="form-control" readonly> 1065 <button type="button" class="btn btn-primary pix-copy-btn" id="pix-copy-btn" title="Copiar código PIX"> 1066 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16" class="copy-icon"> 1067 <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1z"/> 1068 <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0z"/> 1069 </svg> 1070 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16" class="check-icon" style="display:none;"> 1071 <path d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0"/> 1072 </svg> 1073 </button> 1074 </div> 1075 <div class="pix-copied-toast" id="pix-copied-toast" style="display:none;"> 1076 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16"> 1077 <path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z"/> 1078 </svg> 1079 Código copiado! 1080 </div> 1081 </div> 1082 1083 <!-- Info da transação --> 1084 <div class="pix-info-section"> 1085 <div class="pix-info-row"> 1086 <span class="pix-info-label">Transação</span> 1087 <span class="pix-info-value" id="pix-transaction-code"></span> 1088 </div> 1089 <div class="pix-info-row">
1090 <span class="pix-info-label">Beneficiário</span> 1091 <span class="pix-info-value" id="pix-beneficiary"></span> 1092 </div> 1093 </div> 1094 1095 <!-- Botão confirmar pagamento --> 1096 <button type="button" class="btn btn-primary btn-lg w-100 mt-3" id="pix-confirm-btn"> 1097 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" viewBox="0 0 16 16" class="me-2"> 1098 <path d="M10.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425z"/> 1099 </svg> 1100 Já realizei o pagamento 1101 </button> 1102</div> 1103 1104<!-- Modal de confirmação PIX --> 1105<div class="pix-confirm-overlay" id="pix-confirm-overlay" style="display:none;"> 1106 <div class="pix-confirm-card"> 1107 <div class="pix-confirm-icon"> 1108 <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" viewBox="0 0 16 16"> 1109 <path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16"/> 1110 <path d="M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94"/> 1111 </svg> 1112 </div> 1113 <h6 class="pix-confirm-title">Confirmar pagamento PIX</h6> 1114 <p class="pix-confirm-text">Você realmente efetuou o pagamento PIX no valor de <strong id="pix-confirm-amount"></strong>?</p> 1115 <div class="pix-confirm-actions"> 1116 <button type="button" class="btn btn-outline-secondary" id="pix-confirm-cancel">Ainda não</button> 1117 <button type="button" class="btn btn-primary" id="pix-confirm-yes"> 1118 <span class="btn-text">Sim, já paguei</span> 1119 <span class="btn-loading" style="display:none;"> 1120 <span class="spinner-border spinner-border-sm me-1"></span> 1121 Confirmando... 1122 </span> 1123 </button> 1124 </div> 1125 </div> 1126</div> 1127 1128 </div> 1129 1130 <!-- âââ Tela PIX â Processando (fora do form, controlada por JS) âââ --> 1131 <div id="checkout-pix-processing-panel" style="display:none;"> 1132 <!-- âââ Tela PIX â Processando / Aguardando Confirmação âââ --> 1133<div class="pix-processing-screen text-center"> 1134 <!-- Ãcone animado --> 1135 <div class="processing-icon-wrap"> 1136 <div class="processing-circle"> 1137 <svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" fill="currentColor" viewBox="0 0 16 16" class="processing-clock"> 1138 <path d="M8 3.5a.5.5 0 0 0-1 0V8a.5.5 0 0 0 .252.434l3.5 2a.5.5 0 0 0 .496-.868L8 7.71z"/> 1139 <path d="M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m7-8A7 7 0 1 1 1 8a7 7 0 0 1 14 0"/> 1140 </svg> 1141 </div> 1142 </div> 1143 1144 <h4 class="processing-title">Pagamento em processamento</h4> 1145 <p class="processing-subtitle">Recebemos sua confirmação de pagamento PIX.</p> 1146 1147 <!-- Detalhes --> 1148 <div class="processing-details"> 1149 <div class="processing-detail-row"> 1150 <span class="detail-label">Código</span> 1151 <span class="detail-value" id="processing-transaction-code"></span> 1152 </div> 1153 <div class="processing-detail-row"> 1154 <span class="detail-label">Produto</span> 1155 <span class="detail-value" id="processing-product-name"></span> 1156 </div> 1157 <div class="processing-detail-row"> 1158 <span class="detail-label">Valor</span> 1159 <span class="detail-value processing-amount" id="processing-amount"></span> 1160 </div> 1161 </div> 1162 1163 <!-- Info card --> 1164 <div class="processing-info-card"> 1165 <div class="processing-info-icon"> 1166 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="currentColor" viewBox="0 0 16 16"> 1167 <path d="M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.399l-.451-.003.082-.381 1.97-.411h.014z"/> 1168 <path d="M8 5.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2"/> 1169 </svg> 1170 </div> 1171 <div class="processing-info-text"> 1172 <strong>Verificação em andamento</strong> 1173 <p>Nossa equipe verificará o pagamento e entrará em contato via WhatsApp para dar continuidade à sua matrÃcula.</p> 1174 </div> 1175 </div> 1176 1177 <!-- Botão WhatsApp --> 1178 <a id="processing-whatsapp-btn" href="#" target="_blank" rel="noopener noreferrer" class="btn btn-success btn-lg w-100 d-flex align-items-center justify-content-center gap-2 mt-3"> 1179 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16"> 1180 <path d="M13.601 2.326A7.85 7.85 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.9 7.9 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.9 7.9 0 0 0 13.6 2.326zM7.994 14.521a6.6 6.6 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.56 6.56 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592m3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.116.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.116-.198-.012-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.325-.335-.445-.34-.116-.007-.248-.007-.38-.007a.73.73 0 0 0-.529.247c-.182.198-.691.677-.691 1.654s.71 1.916.808 2.049c.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058
11801.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232z"/> 1181 </svg> 1182 Entrar em contato pelo WhatsApp 1183 </a> 1184 1185 <!-- Botão fechar --> 1186 <button type="button" class="btn btn-outline-secondary w-100 mt-2" data-bs-dismiss="modal"> 1187 Fechar 1188 </button> 1189</div> 1190 1191 </div> 1192 </div> 1193 1194 <!-- Footer --> 1195 <div class="modal-footer" id="checkout-footer"> 1196 <!-- Back button (hidden on step 1) --> 1197 <button type="button" class="btn btn-outline-secondary me-auto" id="btn-checkout-back" style="display:none;"> 1198 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="me-1" viewBox="0 0 16 16"> 1199 <path fill-rule="evenodd" d="M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0"/> 1200 </svg> 1201 Voltar 1202 </button> 1203 1204 <!-- Total (shown on steps 1 & 2) --> 1205 <div class="checkout-footer-total" id="checkout-footer-total"> 1206 <span>Total</span> 1207 <div class="total-value" id="checkout-total">R$ 0,00</div> 1208 </div> 1209 1210 <!-- Next / Confirm button --> 1211 <button type="button" class="btn btn-primary btn-lg px-4" id="btn-checkout-next" disabled> 1212 <span class="btn-text d-flex align-items-center gap-2"> 1213 <span id="btn-next-label">Avançar</span> 1214 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" viewBox="0 0 16 16" id="btn-next-arrow"> 1215 <path fill-rule="evenodd" d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708"/> 1216 </svg> 1217 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" viewBox="0 0 16 16" id="btn-confirm-icon" style="display:none;"> 1218 <path fill-rule="evenodd" d="M10.854 8.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708 0"/> 1219 <path d="M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4zM2 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z"/> 1220 </svg> 1221 </span> 1222 <span class="btn-loading" style="display: none;"> 1223 <span class="spinner-border spinner-border-sm me-2"></span> 1224 Processando... 1225 </span> 1226 </button> 1227 </div> 1228 1229 </div> 1230 </div> 1231</div> 1232 1233<!-- Scripts do Checkout (ordem importa!) -->
1234<script src="/assets/checkout_modal.js"></script>
vendor: 1 bytes, line 1234
1234
1235<script src="/assets/checkout_masks.js"></script>
vendor: 1 bytes, line 1235
1235
1236<script src="/assets/checkout_validation.js"></script>
vendor: 1 bytes, line 1236
1236
1237<script src="/assets/checkout_cep.js"></script>
vendor: 1 bytes, line 1237
1237
1238<script src="/assets/checkout_payment.js"></script>
vendor: 1 bytes, line 1238
1238
1239<script src="/assets/checkout_credit_card.js"></script>
vendor: 1 bytes, line 1239
1239
1240<script src="/assets/checkout_pix.js"></script>
1240 1241 1242 1243 <footer class="pt-6"> 1244 <div class="container mt-7 pt-lg-7 pb-4"> 1245 <div class="row align-items-center"> 1246 <div class="col-md-3"> 1247 <a href="/" id="footerLogoLink" class="mb-4 mb-lg-0 d-block text-inverse text-center"> 1248 <img alt="" src="/assets/logo.png" style="width: 5rem;"> 1249 </a> 1250 </div> 1251 <div class="col-md-9 col-lg-6"> 1252 <div class="small mb-3 mb-lg-0 text-center"> 1253 Copyright © 2026 1254 <span class="text-primary"><a href="#">AIMEC PORTO ALEGRE</a></span> 1255 </div> 1256 </div> 1257 <div class="col-lg-3"> 1258 <div class="text-lg-end justify-content-center d-flex align-items-center justify-content-lg-end"> 1259 <div class="ms-3 d-flex gap-2"> 1260 <a href="https://instagram.com/aimecpoa"> 1261 <button class="btn btn-dark btn-icon btn-sm rounded-circle d-flex align-items-center" 1262 aria-label="Toggle theme (auto)"> 1263 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" 1264 class="bi bi-instagram" viewBox="0 0 16 16"> 1265 <path 1266 d="M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zm-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334z"> 1267 </path> 1268 </svg> 1269 </button> 1270 </a> 1271 <a href="https://facebook.com/aimecpoa"> 1272 <button class="btn btn-dark btn-icon btn-sm rounded-circle d-flex align-items-center" 1273 aria-label="Toggle theme (auto)"> 1274 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" 1275 class="bi bi-facebook" viewBox="0 0 16 16"> 1276 <path 1277 d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z"> 1278 </path> 1279 </svg> 1280 </button> 1281 </a> 1282 </div> 1283 </div> 1284 </div> 1285 </div> 1286 </div> 1287</footer> 1288
1289<script src="/assets/affiliate-tracking.js"></script>
vendor: 1 bytes, line 1289
1289
1290<script> 1291 (function () { 1292 const urlParams = new URLSearchParams(window.location.search); 1293 const source = urlParams.get('source'); 1294 1295 if (source === 'pwa') { 1296 const footerLogoLink = document.getElementById('footerLogoLink'); 1297 if (footerLogoLink) { 1298 footerLogoLink.href = '#'; 1299 } 1300 } 1301 })(); 1302</script>
1302 1303 1304
1304<script src="/assets/bootstrap.bundle.min.js"></script>
1304 1305
1305<script src="/assets/headhesive.min.js"></script>
1305 1306
1306<script src="/assets/theme.min.js"></script>
1306 1307
1307<script src="/assets/swiper-bundle.min.js"></script>
1307 1308
1308<script src="/assets/swiper.js"></script>
1308 1309 1310
1310<script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
1310 1311 1312
1312<script> 1313 const productData = { 1314 id: 6, 1315 name: "Curso DJ PRO START ", 1316 imagePath: "/assets/imgs/1779488499293-7288c1d067a506ca.png", 1317 contentMd: `**Base sólida para DJs de todos os nÃveis!** 1318 1319O DJ Pro Start da AIMEC Porto Alegre é o curso para quem deseja iniciar da forma correta e também para DJs que querem revisar e aperfeiçoar sua técnica. 1320Este curso fortalece a base técnica que sustenta uma performance consistente e profissional. 1321Se você quer evoluir de verdade, aqui começa o processo. 1322 1323**ð¯ O que você desenvolve no curso:** 1324âï¸ Percepção auditiva beatmatch; 1325âï¸ Análise estrutural das tracks; 1326âï¸ Técnica de mixagem com inversão de graves; 1327âï¸ Controle de energia de pista; 1328âï¸ Uso profissional de CDJs e mixer; 1329âï¸ Transições limpas e coerentes; 1330âï¸ Uso de color e beat effects; 1331âï¸ Preparação e gestão de biblioteca no Rekordbox; 1332âï¸ Construção estratégica de set; 1333âï¸ Performance com segurança e postura profissional. 1334 1335**ð¢ Diferencial AIMEC Porto Alegre:** 1336Além da formação técnica completa, os alunos da AIMEC contam com: 1337ð§ Equipamentos profissionais de ponta; 1338ð Estrutura de estúdios e salas acusticamente tratadas; 1339ð Espaço disponÃvel para treinos mesmo após o término do curso; 1340ð¤ Oportunidades de apresentação para alunos que demonstram preparo técnico; 1341ð¤ Ambiente de alta performance com acompanhamento de professores experientes. 1342 1343Aqui, o aprendizado não termina na última aula. 1344Você evolui dentro de um ecossistema profissional. 1345 1346**ð¥ Para quem é este curso?** 1347âï¸ Iniciantes que querem aprender da forma correta; 1348âï¸ DJs que já tocam e desejam revisar fundamentos; 1349âï¸ Artistas que querem elevar seu padrão técnico; 1350âï¸ Pessoas que buscam formação profissional em DJ em Porto Alegre.` 1351 }; 1352 1353 let selectedCategory = null; 1354 1355 marked.setOptions({ 1356 breaks: true, 1357 gfm: true, 1358 headerIds: false, 1359 mangle: false, 1360 pedantic: false, 1361 smartLists: true, 1362 smartypants: true 1363 }); 1364 1365 document.addEventListener('DOMContentLoaded', function() { 1366 const desktopContainer = document.querySelector('.markdown-content-desktop'); 1367 const mobileContainer = document.querySelector('.markdown-content-mobile'); 1368 1369 if (productData.contentMd) { 1370 const parsedContent = marked.parse(productData.contentMd); 1371 if (desktopContainer) desktopContainer.innerHTML = parsedContent; 1372 if (mobileContainer) mobileContainer.innerHTML = parsedContent; 1373 } 1374 1375 setupCategorySelection(); 1376 1377 const btnComprar = document.getElementById('btn-comprar'); 1378 if (btnComprar) btnComprar.addEventListener('click', handleComprar); 1379 }); 1380 1381 function setupCategorySelection() { 1382 document.querySelectorAll('.category-option:not(.disabled)').forEach(function(option) { 1383 option.addEventListener('click', function() { selectCategory(this); }); 1384 }); 1385 } 1386 1387 function selectCategory(element) { 1388 if (element.dataset.hasSlots !== 'true') return; 1389 1390 document.querySelectorAll('.category-option').forEach(function(cat) { 1391 cat.classList.remove('selected'); 1392 }); 1393 element.classList.add('selected'); 1394 1395 selectedCategory = { 1396 id: element.dataset.categoryId, 1397 name: element.dataset.categoryName, 1398 price: parseFloat(element.dataset.categoryPrice || 0) 1399 }; 1400 1401 const btnComprar = document.getElementById('btn-comprar'); 1402 const btnText = document.getElementById('btn-comprar-text'); 1403 1404 if (btnComprar && btnText) { 1405 btnComprar.disabled = false; 1406 if (selectedCategory.price > 0) { 1407 const formattedPrice = selectedCategory.price.toLocaleString('pt-BR', { minimumFractionDigits: 2 }); 1408 btnText.textContent = `Comprar â R$ ${formattedPrice}`; 1409 } else { 1410 btnText.textContent = 'Comprar'; 1411 } 1412 } 1413 } 1414 1415 function handleComprar() { 1416 if (!selectedCategory) { 1417 alert('Por favor, selecione uma modalidade antes de continuar.'); 1418 return; 1419 } 1420 CheckoutModal.open(productData, selectedCategory); 1421 } 1422 </script>
vendor: 1 bytes, line 1422
1422
1423<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"8660ad4eb9e143fa988137c544caa59a","r":1,"spa":2}' crossorigin="anonymous"></script>
1423 1424</body> 1425 1426</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.