/* ========================================
   MINHA MUSICA STUDIO - Styles
   ======================================== */

:root {
  --primary: #8B5CF6;
  --primary-dark: #7C3AED;
  --primary-light: #A78BFA;
  --accent: #EC4899;
  --bg-dark: #0F0F1A;
  --bg-card: #1E1E36;
  --bg-card-hover: #282850;
  --text-primary: #FFFFFF;
  --text-secondary: #B8B8D0;
  --text-muted: #8080A0;
  --border: #3A3A5C;
  --success: #10B981;
  --error: #EF4444;
  --gradient: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
  --radius: 12px;
  --radius-sm: 8px;
  --shadow: 0 4px 24px rgba(0, 0, 0, 0.3);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  background: var(--bg-dark);
  color: var(--text-primary);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

.container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}

.gradient-text {
  background: var(--gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hidden {
  display: none !important;
}
.hero{text-align:center;padding:100px 20px 80px;background:radial-gradient(ellipse at center top,rgba(139,92,246,0.15) 0%,transparent 60%)}.hero-icon{font-size:48px;margin-bottom:16px;filter:drop-shadow(0 0 20px rgba(139,92,246,0.5))}.hero h1{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;margin-bottom:16px;letter-spacing:-.02em}.hero-subtitle{font-size:clamp(1rem,2.5vw,1.25rem);color:var(--text-secondary);margin-bottom:40px;max-width:500px;margin-left:auto;margin-right:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;border:none;border-radius:var(--radius);font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none}.btn-primary{background:var(--gradient);color:#fff;box-shadow:0 4px 16px rgba(139,92,246,.3)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(139,92,246,.4)}.btn-secondary{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-card-hover);color:var(--text-primary)}.btn-lg{padding:18px 40px;font-size:1.1rem}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.how-it-works{padding:80px 20px}.how-it-works h2,.benefits h2,.pricing h2,.form-section h2,.faq h2{text-align:center;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;margin-bottom:48px}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.step-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:32px 24px;text-align:center;position:relative;transition:transform .2s,border-color .2s}.step-card:hover{transform:translateY(-4px);border-color:var(--primary)}.step-number{position:absolute;top:-14px;left:50%;transform:translateX(-50%);width:28px;height:28px;background:var(--gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700}.step-icon{font-size:36px;margin-bottom:16px}.step-card h3{font-size:1.25rem;margin-bottom:8px}.step-card p{color:var(--text-secondary);font-size:.95rem}.benefits{padding:80px 20px;background:linear-gradient(180deg,transparent 0%,rgba(139,92,246,.05) 50%,transparent 100%)}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.benefit-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:28px 24px;transition:transform .2s,border-color .2s}.benefit-card:hover{transform:translateY(-4px);border-color:var(--primary)}.benefit-icon{font-size:32px;margin-bottom:12px}.benefit-card h3{font-size:1.1rem;margin-bottom:8px}.benefit-card p{color:var(--text-secondary);font-size:.9rem}.pricing{padding:80px 20px}.price-card{max-width:420px;margin:0 auto;background:var(--bg-card);border:2px solid var(--primary);border-radius:var(--radius);padding:40px 32px;text-align:center;position:relative;box-shadow:0 0 40px rgba(139,92,246,.15)}.price-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--gradient);padding:6px 20px;border-radius:20px;font-size:.85rem;font-weight:600;white-space:nowrap}.price-card h3{font-size:1.5rem;margin-top:12px;margin-bottom:16px}.price{font-size:3.5rem;font-weight:800;margin-bottom:24px}.price-cents{font-size:1.5rem;font-weight:600;vertical-align:super}.price-features{list-style:none;text-align:left;margin-bottom:32px}.price-features li{padding:8px 0;color:var(--text-secondary);font-size:.95rem;border-bottom:1px solid var(--border)}.price-features li:last-child{border-bottom:none}.form-section{padding:80px 20px;background:linear-gradient(180deg,transparent 0%,rgba(139,92,246,.05) 50%,transparent 100%)}.form-subtitle{text-align:center;color:var(--text-secondary);margin-top:-32px;margin-bottom:40px}.music-form{max-width:640px;margin:0 auto;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:40px 32px}.form-step{display:none}.form-step.active{display:block;animation:fadeIn .3s}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-header{display:flex;align-items:center;gap:12px;margin-bottom:28px;font-size:1.25rem;font-weight:600}.step-indicator{width:32px;height:32px;background:var(--gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;flex-shrink:0}.form-group{margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;margin-bottom:6px;font-size:.9rem;font-weight:500;color:var(--text-secondary)}.required{color:var(--accent)}input,select,textarea{width:100%;padding:12px 16px;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:1rem;transition:border-color .2s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(139,92,246,.15)}input.invalid,select.invalid,textarea.invalid{border-color:var(--error)}.error-msg{display:block;color:var(--error);font-size:.8rem;margin-top:4px;min-height:1.2em}textarea{resize:vertical;min-height:100px}select{cursor:pointer;appearance:none;padding-right:36px}.form-actions{display:flex;gap:12px;justify-content:space-between;margin-top:8px}.form-actions .btn-primary{flex:1}.form-error{max-width:640px;margin:16px auto 0;padding:16px;background:rgba(239,68,68,.1);border:1px solid var(--error);border-radius:var(--radius-sm);text-align:center;color:var(--error)}.spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.faq{padding:80px 20px}.faq-list{max-width:700px;margin:0 auto}.faq-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:12px;overflow:hidden}.faq-item summary{padding:18px 24px;cursor:pointer;font-weight:600;font-size:1rem;list-style:none;display:flex;justify-content:space-between;align-items:center;transition:color .2s}.faq-item summary:hover{color:var(--primary-light)}.faq-item summary::after{content:'+';font-size:1.25rem;font-weight:300;color:var(--text-muted);transition:transform .2s}.faq-item[open] summary::after{transform:rotate(45deg)}.faq-item p{padding:0 24px 18px;color:var(--text-secondary);font-size:.95rem;line-height:1.7}.footer{padding:60px 20px 24px;border-top:1px solid var(--border)}.footer-content{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;margin-bottom:40px}.footer-brand h3{font-size:1.25rem;margin-bottom:8px}.footer-brand p{color:var(--text-muted);font-size:.9rem}.footer-links p{color:var(--text-muted);font-size:.9rem;margin-bottom:4px}.footer-links a{color:var(--primary-light);text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-bottom{text-align:center;padding-top:24px;border-top:1px solid var(--border)}.footer-bottom p{color:var(--text-muted);font-size:.85rem}@media(max-width:768px){.hero{padding:72px 20px 56px}.form-row{grid-template-columns:1fr}.music-form{padding:28px 20px}.form-actions{flex-direction:column-reverse}.price-card{padding:32px 24px}.footer-content{flex-direction:column;text-align:center}}@media(max-width:480px){.steps-grid,.benefits-grid{grid-template-columns:1fr}.btn-lg{padding:16px 24px;font-size:1rem}}
