@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap");*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-bottom-8{bottom:-2rem}.-left-8{left:-2rem}.-right-8{right:-2rem}.-top-3{top:-.75rem}.-top-8{top:-2rem}.left-1\/2{left:50%}.top-0{top:0}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-32{height:8rem}.h-5{height:1.25rem}.min-h-screen{min-height:100vh}.w-1\/3{width:33.333333%}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\/3{width:66.666667%}.w-32{width:8rem}.w-5{width:1.25rem}.w-auto{width:auto}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-12{gap:3rem}.gap-14{gap:3.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[2rem\]{border-radius:2rem}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-t{border-top-width:1px}.border-line{border-color:hsla(0,0%,100%,.08)}.border-primary{--tw-border-opacity:1;border-color:rgb(124 58 237/var(--tw-border-opacity,1))}.border-primary\/25{border-color:rgba(124,58,237,.25)}.border-red-500\/20{border-color:rgba(239,68,68,.2)}.bg-accent\/15{background-color:rgba(236,72,153,.15)}.bg-accent\/20{background-color:rgba(236,72,153,.2)}.bg-bg{--tw-bg-opacity:1;background-color:rgb(7 7 11/var(--tw-bg-opacity,1))}.bg-bg\/80{background-color:rgba(7,7,11,.8)}.bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity,1))}.bg-emerald-500\/15{background-color:rgba(16,185,129,.15)}.bg-panel{--tw-bg-opacity:1;background-color:rgb(16 16 24/var(--tw-bg-opacity,1))}.bg-primary{--tw-bg-opacity:1;background-color:rgb(124 58 237/var(--tw-bg-opacity,1))}.bg-primary\/10{background-color:rgba(124,58,237,.1)}.bg-primary\/15{background-color:rgba(124,58,237,.15)}.bg-red-500\/10{background-color:rgba(239,68,68,.1)}.bg-secondary{--tw-bg-opacity:1;background-color:rgb(6 182 212/var(--tw-bg-opacity,1))}.bg-secondary\/15{background-color:rgba(6,182,212,.15)}.bg-secondary\/20{background-color:rgba(6,182,212,.2)}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/5{background-color:hsla(0,0%,100%,.05)}.bg-white\/\[0\.02\]{background-color:hsla(0,0%,100%,.02)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-secondary{--tw-gradient-from:#06b6d4 var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,182,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-secondary\/10{--tw-gradient-from:rgba(6,182,212,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,182,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-primary{--tw-gradient-to:rgba(124,58,237,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#7c3aed var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-primary\/10{--tw-gradient-to:rgba(124,58,237,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(124,58,237,.1) var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-accent{--tw-gradient-to:#ec4899 var(--tw-gradient-to-position)}.to-accent\/10{--tw-gradient-to:rgba(236,72,153,.1) var(--tw-gradient-to-position)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-10{padding:2.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-4{padding-bottom:1rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.font-display{font-family:Sora,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-tight{line-height:1.25}.tracking-\[0\.25em\]{letter-spacing:.25em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-tight{letter-spacing:-.025em}.text-accent{--tw-text-opacity:1;color:rgb(236 72 153/var(--tw-text-opacity,1))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.text-muted{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-primary{--tw-text-opacity:1;color:rgb(124 58 237/var(--tw-text-opacity,1))}.text-red-200{--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.text-secondary{--tw-text-opacity:1;color:rgb(6 182 212/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.shadow-glow{--tw-shadow:0 0 0 1px rgba(124,58,237,.28),0 18px 50px rgba(124,58,237,.18);--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color),0 18px 50px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur-3xl{--tw-blur:blur(64px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}html{scroll-behavior:smooth}body{--tw-bg-opacity:1;background-color:rgb(7 7 11/var(--tw-bg-opacity,1));font-family:Inter,sans-serif;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-moz-selection{background:rgba(124,58,237,.35);color:#fff}::selection{background:rgba(124,58,237,.35);color:#fff}.container-default{margin-left:auto;margin-right:auto;max-width:80rem;padding-left:1.5rem;padding-right:1.5rem}@media (min-width:1024px){.container-default{padding-left:2rem;padding-right:2rem}}.section-title{font-family:Sora,sans-serif;font-size:1.875rem;line-height:2.25rem;font-weight:800;letter-spacing:-.025em}@media (min-width:768px){.section-title{font-size:2.25rem;line-height:2.5rem}}.section-subtitle{margin-top:1rem;max-width:42rem;font-size:.875rem;line-height:1.75rem;--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}@media (min-width:768px){.section-subtitle{font-size:1rem;line-height:1.5rem}}.btn-primary{display:inline-flex;align-items:center;justify-content:center;border-radius:.75rem;--tw-bg-opacity:1;background-color:rgb(124 58 237/var(--tw-bg-opacity,1));padding:.75rem 1.5rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-primary:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:.95;--tw-shadow:0 0 0 1px rgba(124,58,237,.28),0 18px 50px rgba(124,58,237,.18);--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color),0 18px 50px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:.75rem;border-width:1px;border-color:hsla(0,0%,100%,.08);background-color:hsla(0,0%,100%,.05);padding:.75rem 1.5rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-secondary:hover{background-color:hsla(0,0%,100%,.1)}.badge-brand{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;border-width:1px;border-color:hsla(0,0%,100%,.08);background-color:hsla(0,0%,100%,.05);padding:.5rem 1rem;font-size:.75rem;line-height:1rem;text-transform:uppercase;letter-spacing:.2em;--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.glass-card{--tw-backdrop-blur:blur(8px)}.feature-card,.glass-card{border-radius:1rem;border-width:1px;border-color:hsla(0,0%,100%,.08);background-color:hsla(0,0%,100%,.04);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.feature-card{padding:1.5rem;--tw-shadow:0 12px 30px rgba(0,0,0,.35);--tw-shadow-colored:0 12px 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;--tw-backdrop-blur:blur(8px)}.feature-card:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-color:hsla(0,0%,100%,.15)}.plan-card{border-radius:1.5rem;border-width:1px;border-color:hsla(0,0%,100%,.08);--tw-bg-opacity:1;background-color:rgb(16 16 24/var(--tw-bg-opacity,1));padding:2rem;--tw-shadow:0 12px 30px rgba(0,0,0,.35);--tw-shadow-colored:0 12px 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.plan-card:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.nav-link{font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.nav-link:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.gradient-text{background:linear-gradient(135deg,#06b6d4,#7c3aed 50%,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-grid{background-image:radial-gradient(circle at 20% 15%,rgba(6,182,212,.12),transparent 22%),radial-gradient(circle at 80% 20%,rgba(236,72,153,.12),transparent 20%),radial-gradient(circle at 50% 0,rgba(124,58,237,.12),transparent 30%)}.mock-stat-card{--tw-bg-opacity:1;background-color:rgb(23 23 35/var(--tw-bg-opacity,1));padding:1rem}.faq-item,.mock-stat-card{border-radius:1rem;border-width:1px;border-color:hsla(0,0%,100%,.08)}.faq-item{padding:1.5rem;background-color:hsla(0,0%,100%,.04);--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.placeholder\:text-muted::-moz-placeholder{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.placeholder\:text-muted::placeholder{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.hover\:text-secondary:hover{--tw-text-opacity:1;color:rgb(6 182 212/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.focus\:border-primary:focus{--tw-border-opacity:1;border-color:rgb(124 58 237/var(--tw-border-opacity,1))}@media (min-width:640px){.sm\:flex-row{flex-direction:row}}@media (min-width:768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-20{height:5rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:p-16{padding:4rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:block{display:block}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:items-center{align-items:center}.lg\:py-28{padding-top:7rem;padding-bottom:7rem}.lg\:text-left{text-align:left}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* =========================
   MUSICMIX PUBLIC SITE THEME
   Tema claro/escuro + mais cor
========================= */

.theme-toggle-site {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 9999;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.16);
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.38), transparent 45%),
    linear-gradient(135deg, rgba(124,58,237,.95), rgba(236,72,153,.88));
  color: #fff;
  box-shadow:
    0 18px 45px rgba(124,58,237,.28),
    0 0 0 1px rgba(255,255,255,.12) inset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, opacity .25s ease;
}

.theme-toggle-site:hover {
  transform: translateY(-3px) scale(1.04);
  box-shadow:
    0 24px 65px rgba(6,182,212,.30),
    0 0 0 1px rgba(255,255,255,.20) inset;
}

/* DARK refinado */
html.dark-theme body,
body {
  background:
    radial-gradient(circle at 10% 5%, rgba(6,182,212,.18), transparent 30%),
    radial-gradient(circle at 90% 10%, rgba(236,72,153,.16), transparent 32%),
    radial-gradient(circle at 50% 0%, rgba(124,58,237,.18), transparent 36%),
    #07070b;
}

html.dark-theme .glass-card,
html.dark-theme .feature-card,
html.dark-theme .plan-card,
html.dark-theme .faq-item,
html.dark-theme .mock-stat-card {
  box-shadow:
    0 20px 70px rgba(0,0,0,.32),
    0 0 0 1px rgba(255,255,255,.04) inset;
}

/* LIGHT MODE */
html.light-theme {
  color-scheme: light;
}

html.light-theme body {
  background:
    radial-gradient(circle at 10% 8%, rgba(34,211,238,.24), transparent 30%),
    radial-gradient(circle at 88% 12%, rgba(168,85,247,.20), transparent 34%),
    radial-gradient(circle at 50% 98%, rgba(236,72,153,.14), transparent 35%),
    linear-gradient(135deg, #f8fbff 0%, #eef8ff 42%, #fbf3ff 100%) !important;
  color: #0f172a !important;
}

/* header */
html.light-theme header {
  background: rgba(255,255,255,.78) !important;
  border-bottom-color: rgba(15,23,42,.10) !important;
  box-shadow: 0 12px 40px rgba(15,23,42,.06);
  backdrop-filter: blur(18px) saturate(1.25);
}

html.light-theme #mobile-menu {
  background: rgba(255,255,255,.94) !important;
  border-top-color: rgba(15,23,42,.10) !important;
}

/* textos */
html.light-theme .text-white,
html.light-theme h1,
html.light-theme h2,
html.light-theme h3,
html.light-theme .font-bold,
html.light-theme .font-semibold,
html.light-theme .font-extrabold {
  color: #0f172a !important;
}

html.light-theme .text-muted,
html.light-theme .nav-link,
html.light-theme p {
  color: #475569 !important;
}

/* links */
html.light-theme .nav-link:hover,
html.light-theme .hover\:text-white:hover {
  color: #0891b2 !important;
}

/* seções */
html.light-theme .hero-grid {
  background-image:
    radial-gradient(circle at 18% 15%, rgba(34,211,238,.30), transparent 26%),
    radial-gradient(circle at 82% 18%, rgba(236,72,153,.22), transparent 28%),
    radial-gradient(circle at 50% 0%, rgba(124,58,237,.22), transparent 34%),
    linear-gradient(135deg, #f8fbff, #eff8ff, #fbf4ff) !important;
}

html.light-theme .bg-white\/\[0\.02\] {
  background:
    linear-gradient(135deg, rgba(34,211,238,.08), rgba(168,85,247,.07)) !important;
}

html.light-theme .border-line {
  border-color: rgba(15,23,42,.10) !important;
}

/* cards */
html.light-theme .glass-card,
html.light-theme .feature-card,
html.light-theme .faq-item,
html.light-theme .mock-stat-card {
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.14), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.88)) !important;
  border-color: rgba(15,23,42,.10) !important;
  box-shadow:
    0 20px 60px rgba(15,23,42,.09),
    0 0 0 1px rgba(255,255,255,.74) inset !important;
}

html.light-theme .feature-card:hover,
html.light-theme .plan-card:hover,
html.light-theme .glass-card:hover {
  transform: translateY(-4px);
  border-color: rgba(6,182,212,.28) !important;
  box-shadow:
    0 28px 80px rgba(6,182,212,.14),
    0 14px 50px rgba(168,85,247,.10),
    0 0 0 1px rgba(255,255,255,.88) inset !important;
}

html.light-theme .plan-card,
html.light-theme .bg-panel {
  background:
    radial-gradient(circle at top left, rgba(124,58,237,.13), transparent 42%),
    linear-gradient(135deg, #ffffff, #f8fbff) !important;
  border-color: rgba(124,58,237,.16) !important;
  box-shadow:
    0 22px 70px rgba(124,58,237,.10),
    0 0 0 1px rgba(255,255,255,.78) inset !important;
}

html.light-theme .relative.rounded-3xl.border.border-primary.bg-panel {
  background:
    radial-gradient(circle at top left, rgba(236,72,153,.18), transparent 38%),
    radial-gradient(circle at bottom right, rgba(6,182,212,.18), transparent 42%),
    linear-gradient(135deg, #ffffff, #fbf4ff) !important;
  border-color: rgba(124,58,237,.45) !important;
  box-shadow:
    0 28px 90px rgba(124,58,237,.18),
    0 12px 45px rgba(236,72,153,.12) !important;
}

/* badges */
html.light-theme .badge-brand {
  background: rgba(255,255,255,.82) !important;
  border-color: rgba(6,182,212,.24) !important;
  color: #0e7490 !important;
  box-shadow: 0 12px 30px rgba(6,182,212,.10);
}

html.light-theme .bg-emerald-500\/15 {
  background: rgba(16,185,129,.14) !important;
  color: #047857 !important;
}

/* botões */
html.light-theme .btn-primary,
html.light-theme .bg-primary {
  background:
    linear-gradient(135deg, #06b6d4 0%, #7c3aed 54%, #ec4899 100%) !important;
  color: #ffffff !important;
  box-shadow:
    0 18px 42px rgba(124,58,237,.22),
    0 10px 30px rgba(6,182,212,.18) !important;
}

html.light-theme .btn-primary:hover {
  opacity: 1 !important;
  filter: saturate(1.08);
  box-shadow:
    0 24px 58px rgba(124,58,237,.28),
    0 12px 36px rgba(6,182,212,.22) !important;
}

html.light-theme .btn-secondary {
  background: rgba(255,255,255,.72) !important;
  border-color: rgba(15,23,42,.12) !important;
  color: #0f172a !important;
  box-shadow: 0 10px 26px rgba(15,23,42,.06);
}

html.light-theme .btn-secondary:hover {
  background: rgba(34,211,238,.12) !important;
  border-color: rgba(6,182,212,.28) !important;
  color: #0891b2 !important;
}

/* inputs login/register */
html.light-theme input {
  background: rgba(255,255,255,.86) !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.14) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.72);
}

html.light-theme input::placeholder {
  color: #94a3b8 !important;
}

html.light-theme input:focus {
  border-color: rgba(6,182,212,.62) !important;
  box-shadow:
    0 0 0 4px rgba(34,211,238,.14),
    inset 0 0 0 1px rgba(255,255,255,.90) !important;
}

/* formulário */
html.light-theme #form-feedback {
  color: #be123c !important;
  background: rgba(244,63,94,.10) !important;
  border-color: rgba(244,63,94,.22) !important;
}

/* gradiente de texto mais vivo */
html.light-theme .gradient-text {
  background: linear-gradient(135deg, #0891b2 0%, #7c3aed 45%, #db2777 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* mock dashboard no hero */
html.light-theme .mock-stat-card {
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(236,254,255,.76)) !important;
}

html.light-theme .shadow-glow {
  box-shadow:
    0 24px 80px rgba(124,58,237,.12),
    0 16px 45px rgba(6,182,212,.10),
    0 0 0 1px rgba(255,255,255,.72) inset !important;
}

/* footer */
html.light-theme footer {
  background: rgba(255,255,255,.54);
  border-top-color: rgba(15,23,42,.10) !important;
}

/* mobile */
@media (max-width: 768px) {
  .theme-toggle-site {
    right: 14px;
    bottom: 14px;
    width: 44px;
    height: 44px;
  }

  html.light-theme body {
    background:
      radial-gradient(circle at top left, rgba(34,211,238,.24), transparent 34%),
      linear-gradient(135deg, #f8fbff, #f3e8ff) !important;
  }
}


/* =========================
   MUSICMIX THEME TOGGLE SOL + LUA
========================= */

.theme-toggle-site {
  gap: 4px !important;
  width: 70px !important;
  height: 40px !important;
  padding: 4px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
}

.theme-toggle-site .theme-icon-sun,
.theme-toggle-site .theme-icon-moon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  transition:
    transform .22s ease,
    background .22s ease,
    opacity .22s ease,
    filter .22s ease;
}

.theme-toggle-site.is-dark .theme-icon-sun {
  opacity: .45;
  transform: scale(.88);
}

.theme-toggle-site.is-dark .theme-icon-moon {
  background: rgba(255,255,255,.18);
  opacity: 1;
  transform: scale(1.05);
}

.theme-toggle-site.is-light .theme-icon-sun {
  background: rgba(255,255,255,.80);
  opacity: 1;
  transform: scale(1.05);
}

.theme-toggle-site.is-light .theme-icon-moon {
  opacity: .45;
  transform: scale(.88);
}

html.light-theme .theme-toggle-site {
  background:
    radial-gradient(circle at top left, rgba(250,204,21,.95), transparent 46%),
    linear-gradient(135deg, #22d3ee, #a855f7) !important;
  border-color: rgba(15,23,42,.10) !important;
}

/* =========================
   DEMO RADIO BUTTON
========================= */

#demo-radio-play {
  background:
    linear-gradient(135deg, #06b6d4, #7c3aed, #ec4899) !important;
  color: #fff !important;
  box-shadow:
    0 14px 34px rgba(124,58,237,.24),
    0 8px 24px rgba(6,182,212,.18) !important;
}

#demo-radio-play.is-playing {
  background:
    linear-gradient(135deg, #10b981, #06b6d4) !important;
  color: #06121f !important;
}

#demo-radio-play:hover {
  transform: translateY(-2px);
  filter: saturate(1.1);
}


/* =========================
   MusicMix Plan Cards FX
   ========================= */

.plan-glow-card {
  position: relative;
  isolation: isolate;
  min-height: 430px;
  transform-style: preserve-3d;
  transition:
    transform .28s ease,
    border-color .28s ease,
    box-shadow .28s ease,
    background .28s ease;
}

.plan-glow-card::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: -2;
  border-radius: inherit;
  background:
    linear-gradient(135deg, rgba(6,182,212,.44), rgba(124,58,237,.28), rgba(236,72,153,.34));
  opacity: 0;
  transition: opacity .28s ease;
}

.plan-glow-card::after {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    radial-gradient(circle at 20% 0%, rgba(6,182,212,.12), transparent 34%),
    radial-gradient(circle at 100% 20%, rgba(236,72,153,.12), transparent 32%),
    #101018;
}

.plan-glow-card:hover {
  transform: translateY(-8px) scale(1.015);
  border-color: rgba(6,182,212,.42);
  box-shadow:
    0 0 0 1px rgba(6,182,212,.16),
    0 24px 70px rgba(6,182,212,.13),
    0 30px 90px rgba(0,0,0,.38);
}

.plan-glow-card:hover::before {
  opacity: 1;
}

.plan-featured {
  border-color: rgba(6,182,212,.38) !important;
  box-shadow:
    0 0 0 1px rgba(6,182,212,.18),
    0 0 48px rgba(124,58,237,.16),
    0 24px 80px rgba(0,0,0,.45);
}

.plan-orb {
  position: absolute;
  top: -80px;
  right: -80px;
  width: 180px;
  height: 180px;
  border-radius: 999px;
  background: rgba(6,182,212,.18);
  filter: blur(26px);
  opacity: .85;
  pointer-events: none;
  animation: musicmixPlanOrb 5s ease-in-out infinite alternate;
}

.plan-featured .plan-orb {
  background: rgba(236,72,153,.20);
}

@keyframes musicmixPlanOrb {
  from {
    transform: translate3d(0,0,0) scale(1);
  }
  to {
    transform: translate3d(-28px,26px,0) scale(1.22);
  }
}

.plan-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.07);
  color: rgba(255,255,255,.78);
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
}

.popular-ribbon {
  position: absolute;
  top: 18px;
  right: -42px;
  z-index: 20;
  transform: rotate(35deg);
  width: 170px;
  text-align: center;
  padding: 8px 0;
  background: linear-gradient(135deg, #06b6d4, #7c3aed, #ec4899);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  box-shadow: 0 12px 34px rgba(124,58,237,.28);
}

.plan-glow-card li {
  transition: transform .22s ease, color .22s ease;
}

.plan-glow-card:hover li {
  color: rgba(255,255,255,.86);
}

.plan-glow-card li:hover {
  transform: translateX(4px);
  color: #fff;
}

/* brilho suave no hero */
.hero-grid {
  position: relative;
}

.hero-grid::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 12% 18%, rgba(6,182,212,.10), transparent 22%),
    radial-gradient(circle at 88% 12%, rgba(236,72,153,.10), transparent 20%);
  animation: musicmixHeroPulse 7s ease-in-out infinite alternate;
}

@keyframes musicmixHeroPulse {
  from {
    opacity: .45;
  }
  to {
    opacity: 1;
  }
}

.mock-stat-card,
.feature-card,
.glass-card {
  transition:
    transform .24s ease,
    border-color .24s ease,
    box-shadow .24s ease;
}

.mock-stat-card:hover,
.feature-card:hover,
.glass-card:hover {
  transform: translateY(-4px);
  border-color: rgba(6,182,212,.26);
  box-shadow:
    0 0 0 1px rgba(6,182,212,.08),
    0 22px 60px rgba(0,0,0,.28);
}

/* linhas neon discretas */
.neon-divider {
  height: 1px;
  width: 100%;
  background: linear-gradient(90deg, transparent, rgba(6,182,212,.55), rgba(124,58,237,.55), transparent);
  opacity: .75;
}

/* =========================
   TRIAL COMERCIAL
   ========================= */

.trial-commercial {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(6, 182, 212, 0.22);
  border-radius: 32px;
  background:
    radial-gradient(circle at 0% 0%, rgba(6,182,212,.18), transparent 30%),
    radial-gradient(circle at 100% 0%, rgba(168,85,247,.16), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.03), rgba(255,255,255,.02));
  box-shadow:
    0 0 0 1px rgba(255,255,255,.03),
    0 30px 80px rgba(0,0,0,.30);
}

.trial-commercial::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, transparent, rgba(255,255,255,.03), transparent);
  transform: translateX(-100%);
  animation: trialSweep 5s linear infinite;
  pointer-events: none;
}

@keyframes trialSweep {
  100% {
    transform: translateX(100%);
  }
}

.trial-commercial-grid {
  display: grid;
  grid-template-columns: 1.5fr 0.8fr;
  gap: 24px;
  padding: 34px;
  align-items: center;
}

.trial-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  border: 1px solid rgba(6,182,212,.28);
  background: rgba(6,182,212,.08);
  color: #67e8f9;
  padding: 8px 14px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.trial-title {
  margin-top: 18px;
  font-size: clamp(2rem, 4vw, 3.3rem);
  line-height: 1.02;
  font-weight: 900;
  color: #fff;
}

.trial-title span {
  background: linear-gradient(90deg, #22d3ee, #a855f7, #ec4899);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.trial-description {
  margin-top: 18px;
  max-width: 760px;
  color: rgba(255,255,255,.72);
  font-size: 16px;
  line-height: 1.8;
}

.trial-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 24px;
}

.trial-benefit {
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  color: rgba(255,255,255,.86);
  font-size: 14px;
  line-height: 1.5;
}

.trial-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 28px;
}

.trial-commercial-side {
  position: relative;
  border-radius: 28px;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.16), transparent 36%),
    radial-gradient(circle at bottom right, rgba(168,85,247,.16), transparent 36%),
    rgba(255,255,255,.03);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 20px 60px rgba(0,0,0,.22);
}

.trial-commercial-badge {
  display: inline-block;
  padding: 8px 12px;
  border-radius: 999px;
  background: linear-gradient(90deg, #22d3ee, #a855f7);
  color: white;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.trial-commercial-price {
  margin-top: 18px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.trial-commercial-price small {
  color: rgba(255,255,255,.65);
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 800;
}

.trial-commercial-price strong {
  font-size: 52px;
  line-height: 1;
  font-weight: 900;
  color: #fff;
}

.trial-commercial-price span {
  color: #67e8f9;
  font-weight: 700;
  font-size: 15px;
}

.trial-commercial-note {
  margin-top: 16px;
  color: rgba(255,255,255,.75);
  line-height: 1.7;
  font-size: 15px;
}

/* =========================
   PLANOS FX
   ========================= */

.plan-glow-card {
  position: relative;
  isolation: isolate;
  min-height: 430px;
  transform-style: preserve-3d;
  transition:
    transform .28s ease,
    border-color .28s ease,
    box-shadow .28s ease,
    background .28s ease;
}

.plan-glow-card::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: -2;
  border-radius: inherit;
  background:
    linear-gradient(135deg, rgba(6,182,212,.44), rgba(124,58,237,.28), rgba(236,72,153,.34));
  opacity: 0;
  transition: opacity .28s ease;
}

.plan-glow-card::after {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    radial-gradient(circle at 20% 0%, rgba(6,182,212,.12), transparent 34%),
    radial-gradient(circle at 100% 20%, rgba(236,72,153,.12), transparent 32%),
    #101018;
}

.plan-glow-card:hover {
  transform: translateY(-8px) scale(1.015);
  border-color: rgba(6,182,212,.42);
  box-shadow:
    0 0 0 1px rgba(6,182,212,.16),
    0 24px 70px rgba(6,182,212,.13),
    0 30px 90px rgba(0,0,0,.38);
}

.plan-glow-card:hover::before {
  opacity: 1;
}

.plan-featured {
  border-color: rgba(6,182,212,.38) !important;
  box-shadow:
    0 0 0 1px rgba(6,182,212,.18),
    0 0 48px rgba(124,58,237,.16),
    0 24px 80px rgba(0,0,0,.45);
}

.plan-orb {
  position: absolute;
  top: -80px;
  right: -80px;
  width: 180px;
  height: 180px;
  border-radius: 999px;
  background: rgba(6,182,212,.18);
  filter: blur(26px);
  opacity: .85;
  pointer-events: none;
  animation: musicmixPlanOrb 5s ease-in-out infinite alternate;
}

.plan-featured .plan-orb {
  background: rgba(236,72,153,.20);
}

@keyframes musicmixPlanOrb {
  from {
    transform: translate3d(0,0,0) scale(1);
  }
  to {
    transform: translate3d(-28px,26px,0) scale(1.22);
  }
}

.plan-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.07);
  color: rgba(255,255,255,.78);
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
}

.popular-ribbon {
  position: absolute;
  top: 18px;
  right: -42px;
  z-index: 20;
  transform: rotate(35deg);
  width: 170px;
  text-align: center;
  padding: 8px 0;
  background: linear-gradient(135deg, #06b6d4, #7c3aed, #ec4899);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  box-shadow: 0 12px 34px rgba(124,58,237,.28);
}

.plan-glow-card li {
  transition: transform .22s ease, color .22s ease;
}

.plan-glow-card:hover li {
  color: rgba(255,255,255,.86);
}

.plan-glow-card li:hover {
  transform: translateX(4px);
  color: #fff;
}

/* RESPONSIVO */
@media (max-width: 1100px) {
  .trial-commercial-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .trial-commercial-grid {
    padding: 22px;
  }

  .trial-benefits {
    grid-template-columns: 1fr;
  }

  .trial-title {
    font-size: 2.2rem;
  }
}

/* =========================
   MUSICMIX HERO ULTRA PREMIUM
   ========================= */

.hero-ultra {
  position: relative;
  min-height: calc(100vh - 80px);
  background:
    radial-gradient(circle at 10% 20%, rgba(6,182,212,.18), transparent 28%),
    radial-gradient(circle at 82% 16%, rgba(236,72,153,.20), transparent 26%),
    radial-gradient(circle at 52% 92%, rgba(124,58,237,.16), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #151534 45%, #27071f 100%);
}

.hero-ultra::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 44px 44px;
  opacity: .18;
}

.hero-ultra::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(6,182,212,.10), transparent 18%, transparent 82%, rgba(236,72,153,.10)),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.05), transparent 38%);
  animation: heroAurora 9s ease-in-out infinite alternate;
}

@keyframes heroAurora {
  from {
    opacity: .42;
    filter: hue-rotate(0deg);
  }
  to {
    opacity: 1;
    filter: hue-rotate(18deg);
  }
}

.hero-ultra-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.hero-particle {
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #22d3ee;
  box-shadow: 0 0 18px rgba(34,211,238,.9);
  opacity: .55;
  animation: floatParticle 7s ease-in-out infinite alternate;
}

.hero-particle-1 {
  top: 18%;
  left: 8%;
}

.hero-particle-2 {
  top: 28%;
  right: 14%;
  background: #ec4899;
  box-shadow: 0 0 18px rgba(236,72,153,.9);
  animation-delay: 1.1s;
}

.hero-particle-3 {
  bottom: 22%;
  left: 38%;
  background: #a855f7;
  box-shadow: 0 0 18px rgba(168,85,247,.9);
  animation-delay: 1.8s;
}

.hero-particle-4 {
  bottom: 12%;
  right: 8%;
  animation-delay: .7s;
}

@keyframes floatParticle {
  from {
    transform: translate3d(0,0,0) scale(1);
  }
  to {
    transform: translate3d(32px,-36px,0) scale(1.45);
  }
}

.hero-ultra-copy,
.hero-ultra-panel-wrap {
  position: relative;
  z-index: 2;
}

.hero-ultra-badge {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 0 34px rgba(6,182,212,.10);
}

.hero-ultra-logo {
  filter:
    drop-shadow(0 0 22px rgba(34,211,238,.20))
    drop-shadow(0 0 32px rgba(168,85,247,.12));
  animation: logoFloat 4.8s ease-in-out infinite alternate;
}

@keyframes logoFloat {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-8px);
  }
}

.hero-ultra-title {
  letter-spacing: -0.055em;
}

.hero-gradient-word {
  display: inline-block;
  background: linear-gradient(90deg, #22d3ee, #6366f1, #a855f7, #ec4899);
  background-size: 240% 100%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: textGradientMove 4s linear infinite;
}

@keyframes textGradientMove {
  from {
    background-position: 0% 50%;
  }
  to {
    background-position: 240% 50%;
  }
}

.hero-ultra-description {
  color: rgba(226,232,240,.78) !important;
}

.hero-main-cta {
  position: relative;
  overflow: hidden;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.08),
    0 18px 44px rgba(124,58,237,.34),
    0 0 38px rgba(34,211,238,.14);
}

.hero-main-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.26), transparent);
  transform: translateX(-120%);
  animation: ctaSweep 3.4s ease-in-out infinite;
}

@keyframes ctaSweep {
  0%, 40% {
    transform: translateX(-120%);
  }
  75%, 100% {
    transform: translateX(120%);
  }
}

.hero-secondary-cta {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

.hero-trust-row span {
  color: #22c55e;
  font-weight: 900;
  text-shadow: 0 0 12px rgba(34,197,94,.45);
}

.hero-ultra-panel-wrap {
  perspective: 1100px;
}

.hero-ultra-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 34px;
  padding: 26px;
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.12), transparent 32%),
    radial-gradient(circle at 100% 0%, rgba(236,72,153,.15), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.085), rgba(255,255,255,.035));
  box-shadow:
    0 0 0 1px rgba(255,255,255,.035),
    0 32px 90px rgba(0,0,0,.38),
    0 0 65px rgba(168,85,247,.12);
  backdrop-filter: blur(18px);
  transform: rotateX(0deg) rotateY(-3deg);
  transition:
    transform .36s ease,
    border-color .36s ease,
    box-shadow .36s ease;
}

.hero-ultra-panel:hover {
  transform: rotateX(0deg) rotateY(0deg) translateY(-6px);
  border-color: rgba(34,211,238,.34);
  box-shadow:
    0 0 0 1px rgba(34,211,238,.14),
    0 36px 110px rgba(0,0,0,.42),
    0 0 82px rgba(34,211,238,.16);
}

.hero-panel-glow {
  position: absolute;
  inset: -40%;
  background:
    conic-gradient(from 120deg, transparent, rgba(34,211,238,.10), transparent, rgba(236,72,153,.12), transparent);
  animation: panelRotate 12s linear infinite;
  pointer-events: none;
}

@keyframes panelRotate {
  to {
    transform: rotate(360deg);
  }
}

.hero-panel-header,
.hero-now-card,
.hero-panel-grid,
.hero-panel-stats {
  position: relative;
  z-index: 2;
}

.hero-panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.hero-panel-kicker,
.hero-box-label,
.hero-mini-stat span {
  display: block;
  color: rgba(255,255,255,.56);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .26em;
  text-transform: uppercase;
}

.hero-panel-header h2 {
  margin-top: 6px;
  color: #fff;
  font-size: clamp(1.45rem, 2.4vw, 2.1rem);
  line-height: 1.05;
  font-weight: 900;
}

.hero-live-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.hero-live-chip.is-live {
  background: rgba(34,197,94,.15);
  color: #86efac;
  border: 1px solid rgba(34,197,94,.18);
}

.live-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34,197,94,.7);
  animation: pulseLive 1.8s infinite;
}

@keyframes pulseLive {
  0% {
    box-shadow: 0 0 0 0 rgba(34,197,94,.7);
  }
  70% {
    box-shadow: 0 0 0 11px rgba(34,197,94,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(34,197,94,0);
  }
}

.hero-now-card {
  margin-top: 20px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 24px;
  padding: 20px;
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.10), transparent 40%),
    rgba(5,8,20,.76);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.hero-now-main strong {
  display: block;
  margin-top: 10px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 950;
}

.hero-now-main small {
  display: block;
  margin-top: 6px;
  color: rgba(255,255,255,.62);
  font-size: 14px;
}

.hero-eq {
  height: 56px;
  display: flex;
  align-items: end;
  gap: 5px;
  padding: 8px 0;
}

.hero-eq span {
  width: 7px;
  height: 20px;
  border-radius: 999px;
  background: linear-gradient(180deg, #22d3ee, #a855f7, #ec4899);
  animation: heroEq 1s ease-in-out infinite alternate;
}

.hero-eq span:nth-child(2) { animation-delay: .12s; }
.hero-eq span:nth-child(3) { animation-delay: .24s; }
.hero-eq span:nth-child(4) { animation-delay: .36s; }
.hero-eq span:nth-child(5) { animation-delay: .48s; }

@keyframes heroEq {
  from {
    height: 14px;
    opacity: .55;
  }
  to {
    height: 52px;
    opacity: 1;
  }
}

.hero-progress-premium {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 10px;
  margin-top: 16px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
}

.hero-progress-premium-bar {
  position: relative;
  width: 72%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #22d3ee, #6366f1, #a855f7, #ec4899);
  background-size: 220% 100%;
  animation: progressMove 2.4s linear infinite;
}

.hero-progress-premium-bar::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.44), transparent);
  animation: progressSweepPremium 1.9s linear infinite;
}

@keyframes progressMove {
  to {
    background-position: 220% 0;
  }
}

@keyframes progressSweepPremium {
  from {
    transform: translateX(-120%);
  }
  to {
    transform: translateX(120%);
  }
}

.hero-panel-grid {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.hero-panel-box {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 22px;
  padding: 18px;
  background: rgba(8,10,24,.78);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
  transition:
    transform .24s ease,
    border-color .24s ease,
    background .24s ease;
}

.hero-panel-box:hover {
  transform: translateY(-4px);
  border-color: rgba(34,211,238,.28);
  background: rgba(12,16,34,.86);
}

.hero-panel-box strong {
  display: block;
  margin-top: 9px;
  color: #fff;
  font-size: 1.35rem;
  font-weight: 950;
}

.hero-panel-box small {
  display: block;
  margin-top: 6px;
  color: rgba(255,255,255,.58);
  font-size: 13px;
}

.hero-panel-box small.positive {
  color: #86efac;
  font-weight: 800;
}

.hero-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 13px;
}

.hero-action-btn {
  border: 0;
  border-radius: 14px;
  padding: 12px 15px;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    opacity .2s ease;
}

.hero-action-btn:hover {
  transform: translateY(-2px);
}

.hero-action-primary {
  color: #fff;
  background: linear-gradient(135deg, #7c3aed, #9333ea, #a855f7);
  box-shadow: 0 14px 34px rgba(124,58,237,.32);
}

.hero-action-secondary {
  color: rgba(255,255,255,.88);
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
}

.auto-start-active {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.auto-start-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 12px rgba(34,197,94,.65);
  animation: autoDotBlink 1.4s ease-in-out infinite;
}

@keyframes autoDotBlink {
  0%, 100% {
    opacity: .45;
    transform: scale(.9);
  }
  50% {
    opacity: 1;
    transform: scale(1.15);
  }
}

.hero-panel-stats {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.hero-mini-stat {
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 20px;
  padding: 16px 14px;
  text-align: center;
  background:
    radial-gradient(circle at top, rgba(255,255,255,.06), transparent 44%),
    rgba(255,255,255,.045);
}

.hero-mini-stat strong {
  display: block;
  margin-top: 7px;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 950;
}

.hero-mini-stat.is-live-stat {
  background:
    radial-gradient(circle at top right, rgba(236,72,153,.13), transparent 42%),
    rgba(255,255,255,.045);
}

@media (max-width: 980px) {
  .hero-ultra-panel {
    transform: none;
  }

  .hero-panel-grid,
  .hero-panel-stats {
    grid-template-columns: 1fr;
  }

  .hero-now-card {
    align-items: flex-start;
    flex-direction: column;
  }
}

.hero-now-main small {
  color: #67e8f9 !important;
  font-weight: 800;
  letter-spacing: .03em;
}

.hero-now-main small::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 14px rgba(34,197,94,.85);
  animation: musicmixNowPulse 1.4s infinite;
}

@keyframes musicmixNowPulse {
  0%, 100% {
    opacity: .45;
    transform: scale(.9);
  }
  50% {
    opacity: 1;
    transform: scale(1.2);
  }
}

/* =========================
   HERO PLAYER REAL
   ========================= */

.hero-ultra-panel.is-playing {
  border-color: rgba(34, 211, 238, .46) !important;
  box-shadow:
    0 0 0 1px rgba(34,211,238,.22),
    0 36px 120px rgba(34,211,238,.18),
    0 0 90px rgba(168,85,247,.16) !important;
}

.hero-now-card.is-playing {
  border-color: rgba(34, 211, 238, .36) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.18), transparent 42%),
    radial-gradient(circle at 100% 0%, rgba(168,85,247,.12), transparent 40%),
    rgba(5,8,20,.86) !important;
}

.hero-live-chip.is-playing {
  animation: heroLiveGlow 1.4s ease-in-out infinite alternate;
}

@keyframes heroLiveGlow {
  from {
    box-shadow: 0 0 0 rgba(34,197,94,0);
  }
  to {
    box-shadow:
      0 0 18px rgba(34,197,94,.35),
      0 0 36px rgba(34,197,94,.16);
  }
}

.hero-radio-is-playing .hero-eq span {
  animation-duration: .72s !important;
}

.hero-radio-is-playing .hero-action-primary {
  background: linear-gradient(135deg, #06b6d4, #7c3aed, #ec4899) !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.10),
    0 16px 42px rgba(6,182,212,.28),
    0 0 44px rgba(236,72,153,.18) !important;
}

.hero-radio-is-playing .hero-progress-premium-bar {
  animation-duration: 1.4s !important;
}

.hero-now-main small {
  color: #67e8f9 !important;
  font-weight: 800;
}

.hero-now-main small::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 14px rgba(34,197,94,.85);
  animation: musicmixNowPulse 1.2s infinite;
}

@keyframes musicmixNowPulse {
  0%, 100% {
    opacity: .45;
    transform: scale(.9);
  }
  50% {
    opacity: 1;
    transform: scale(1.2);
  }
}

/* =========================================================
   MUSICMIX INDEX COLOR FX PREMIUM
   Mais cor, fontes vivas, glow e animações em toda landing
   ========================================================= */

:root {
  --mm-cyan: #22d3ee;
  --mm-blue: #3b82f6;
  --mm-purple: #8b5cf6;
  --mm-pink: #ec4899;
  --mm-green: #22c55e;
  --mm-yellow: #facc15;
  --mm-orange: #fb923c;
}

/* Fundo geral mais vivo */
body {
  background:
    radial-gradient(circle at 12% 8%, rgba(34,211,238,.18), transparent 28%),
    radial-gradient(circle at 86% 12%, rgba(236,72,153,.16), transparent 28%),
    radial-gradient(circle at 48% 90%, rgba(139,92,246,.16), transparent 34%),
    #07070b !important;
}

/* Seleção de texto neon */
::selection {
  background: rgba(34,211,238,.35) !important;
  color: #fff !important;
}

/* Header mais colorido */
header.sticky {
  background:
    linear-gradient(90deg, rgba(7,7,11,.88), rgba(18,12,35,.82), rgba(7,7,11,.88)) !important;
  border-bottom: 1px solid rgba(34,211,238,.18) !important;
  box-shadow:
    0 12px 40px rgba(0,0,0,.26),
    0 0 42px rgba(34,211,238,.08);
}

header .font-display,
header .font-bold {
  background: linear-gradient(90deg, #fff, #67e8f9, #d8b4fe);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Logo com brilho */
header img,
.hero-ultra-logo,
img[alt="MusicMix"],
img[alt="Logo MusicMix"] {
  filter:
    drop-shadow(0 0 16px rgba(34,211,238,.26))
    drop-shadow(0 0 28px rgba(236,72,153,.10));
}

/* Links do menu com underline neon */
.nav-link {
  position: relative;
  font-weight: 700 !important;
}

.nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -7px;
  width: 0;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--mm-cyan), var(--mm-purple), var(--mm-pink));
  transition: width .24s ease;
}

.nav-link:hover::after {
  width: 100%;
}

/* Títulos mais coloridos */
.section-title,
h1,
h2,
h3.font-display {
  text-shadow:
    0 0 28px rgba(34,211,238,.08),
    0 0 40px rgba(236,72,153,.06);
}

.section-title {
  background: linear-gradient(90deg, #fff 0%, #67e8f9 38%, #c084fc 72%, #f9a8d4 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Subtítulos mais legíveis */
.section-subtitle,
.text-muted,
p.text-muted {
  color: rgba(226,232,240,.74) !important;
}

/* Gradiente animado em palavras principais */
.gradient-text {
  background: linear-gradient(90deg, #22d3ee, #8b5cf6, #ec4899, #22d3ee) !important;
  background-size: 260% 100% !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: musicmixTextFlow 5s linear infinite;
}

@keyframes musicmixTextFlow {
  from { background-position: 0% 50%; }
  to { background-position: 260% 50%; }
}

/* Botões com mais vida */
.btn-primary {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10) !important;
  background: linear-gradient(135deg, #06b6d4, #7c3aed, #ec4899) !important;
  background-size: 180% 180% !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.08),
    0 18px 46px rgba(124,58,237,.30),
    0 0 42px rgba(6,182,212,.14) !important;
  animation: musicmixButtonGradient 5s ease infinite;
}

.btn-primary::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.32), transparent);
  transform: translateX(-120%);
  animation: musicmixButtonSweep 3s ease-in-out infinite;
}

.btn-primary:hover {
  transform: translateY(-3px) scale(1.015) !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.14),
    0 22px 56px rgba(236,72,153,.24),
    0 0 56px rgba(34,211,238,.18) !important;
}

.btn-secondary {
  border-color: rgba(34,211,238,.22) !important;
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.10), transparent 32%),
    rgba(255,255,255,.06) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.btn-secondary:hover {
  border-color: rgba(236,72,153,.34) !important;
  background:
    radial-gradient(circle at top left, rgba(236,72,153,.12), transparent 32%),
    rgba(255,255,255,.10) !important;
  transform: translateY(-2px);
}

@keyframes musicmixButtonGradient {
  0% { background-position: 0% 50%; }
  50% { background-position: 90% 50%; }
  100% { background-position: 0% 50%; }
}

@keyframes musicmixButtonSweep {
  0%, 42% { transform: translateX(-120%); }
  74%, 100% { transform: translateX(120%); }
}

/* Badge SaaS mais premium */
.badge-brand {
  color: #a5f3fc !important;
  border-color: rgba(34,211,238,.24) !important;
  background:
    linear-gradient(90deg, rgba(34,211,238,.10), rgba(139,92,246,.08), rgba(236,72,153,.08)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 34px rgba(34,211,238,.10);
}

/* Cards com borda colorida */
.glass-card,
.feature-card,
.plan-card,
.mock-stat-card,
.faq-item {
  position: relative;
  overflow: hidden;
  border-color: rgba(255,255,255,.10) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.08), transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(236,72,153,.07), transparent 34%),
    rgba(255,255,255,.045) !important;
  box-shadow:
    0 16px 48px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.04);
}

.glass-card::before,
.feature-card::before,
.plan-card::before,
.mock-stat-card::before,
.faq-item::before {
  content: "";
  position: absolute;
  inset: -1px;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(34,211,238,.28), transparent 28%, rgba(236,72,153,.22));
  opacity: 0;
  transition: opacity .28s ease;
}

.glass-card:hover::before,
.feature-card:hover::before,
.plan-card:hover::before,
.mock-stat-card:hover::before,
.faq-item:hover::before {
  opacity: 1;
}

.glass-card:hover,
.feature-card:hover,
.plan-card:hover,
.mock-stat-card:hover,
.faq-item:hover {
  transform: translateY(-5px);
  border-color: rgba(34,211,238,.28) !important;
  box-shadow:
    0 0 0 1px rgba(34,211,238,.10),
    0 24px 70px rgba(0,0,0,.30),
    0 0 48px rgba(34,211,238,.08) !important;
}

/* Cards de benefícios com ícone visual antes do título */
.feature-card h3 {
  color: #fff !important;
}

.feature-card h3::before {
  content: "";
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  border-radius: 8px;
  color: #67e8f9;
  background: rgba(34,211,238,.10);
  box-shadow: 0 0 18px rgba(34,211,238,.18);
}

/* Mockup do painel mais vibrante */
.mock-stat-card {
  border-color: rgba(34,211,238,.12) !important;
}

.mock-stat-card p {
  color: rgba(165,243,252,.68) !important;
}

.mock-stat-card h3,
.mock-stat-card .font-extrabold,
.mock-stat-card .font-bold {
  color: #fff !important;
  text-shadow: 0 0 18px rgba(34,211,238,.10);
}

/* Barra de progresso neon */
.mock-stat-card .bg-gradient-to-r,
.h-2.rounded-full.bg-gradient-to-r {
  background: linear-gradient(90deg, #22d3ee, #7c3aed, #ec4899) !important;
  background-size: 220% 100% !important;
  animation: musicmixBarFlow 3s linear infinite;
}

@keyframes musicmixBarFlow {
  to { background-position: 220% 0; }
}

/* Planos com mais cor */
.plan-card h3 {
  background: linear-gradient(90deg, #fff, #67e8f9, #f9a8d4);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.plan-card li {
  color: rgba(226,232,240,.78) !important;
}

.plan-card li::first-letter {
  color: #22c55e;
}

/* Seção Trial comercial ainda mais colorida */
.trial-commercial {
  border-color: rgba(34,211,238,.30) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.22), transparent 30%),
    radial-gradient(circle at 100% 0%, rgba(236,72,153,.20), transparent 30%),
    radial-gradient(circle at 50% 100%, rgba(139,92,246,.15), transparent 34%),
    rgba(255,255,255,.035) !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.04),
    0 34px 95px rgba(0,0,0,.34),
    0 0 80px rgba(34,211,238,.10) !important;
}

.trial-title {
  text-shadow:
    0 0 28px rgba(34,211,238,.12),
    0 0 42px rgba(236,72,153,.08);
}

.trial-benefit {
  border-color: rgba(255,255,255,.11) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.025)) !important;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}

.trial-benefit:hover {
  transform: translateX(5px);
  border-color: rgba(34,211,238,.28) !important;
  background:
    linear-gradient(135deg, rgba(34,211,238,.09), rgba(236,72,153,.05)) !important;
}

/* FAQ colorido */
.faq-item button,
[data-faq-button] {
  color: #fff !important;
}

.faq-item:hover {
  border-color: rgba(236,72,153,.25) !important;
}

/* Rodapé mais premium */
footer {
  background:
    radial-gradient(circle at 20% 0%, rgba(34,211,238,.08), transparent 30%),
    radial-gradient(circle at 80% 0%, rgba(236,72,153,.08), transparent 30%);
}

footer a:hover,
footer .hover\:text-white:hover {
  color: #67e8f9 !important;
}

/* Inputs login/register, se compartilharem CSS */
input,
select,
textarea {
  transition:
    border-color .2s ease,
    box-shadow .2s ease,
    background .2s ease !important;
}

input:focus,
select:focus,
textarea:focus {
  border-color: rgba(34,211,238,.55) !important;
  box-shadow:
    0 0 0 4px rgba(34,211,238,.08),
    0 0 24px rgba(34,211,238,.08) !important;
}

/* Cards do hero ultra ainda mais destacados */
.hero-ultra-panel {
  box-shadow:
    0 0 0 1px rgba(255,255,255,.04),
    0 36px 120px rgba(0,0,0,.46),
    0 0 90px rgba(34,211,238,.12),
    0 0 120px rgba(236,72,153,.08) !important;
}

.hero-now-card {
  border-color: rgba(34,211,238,.20) !important;
}

.hero-now-main strong {
  background: linear-gradient(90deg, #fff, #67e8f9, #f9a8d4);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Mais cor nos mini stats */
.hero-mini-stat:nth-child(1) {
  border-color: rgba(34,211,238,.16);
}

.hero-mini-stat:nth-child(2) {
  border-color: rgba(139,92,246,.16);
}

.hero-mini-stat:nth-child(3) {
  border-color: rgba(236,72,153,.16);
}

/* Animação suave global em elementos principais */
.feature-card,
.plan-card,
.mock-stat-card,
.glass-card,
.trial-commercial,
.hero-ultra-panel {
  will-change: transform;
}

/* Responsivo: reduz excesso de glow no mobile */
@media (max-width: 768px) {
  .glass-card:hover,
  .feature-card:hover,
  .plan-card:hover,
  .mock-stat-card:hover,
  .faq-item:hover {
    transform: none;
  }

  .section-title {
    line-height: 1.12;
  }

  .btn-primary::before {
    animation: none;
  }
}


/* MUSICMIX FEATURE ICONS */
.feature-card h3 {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  color: #ffffff !important;
}

.feature-card h3::before {
  display: none !important;
  content: none !important;
}

.feature-icon {
  width: 56px;
  height: 56px;
  min-width: 56px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 10px 28px rgba(0,0,0,.22);
  border: 1px solid rgba(255,255,255,.08);
}

.feature-icon::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 30% 25%, rgba(255,255,255,.16), transparent 36%);
  pointer-events: none;
}

.feature-icon svg {
  width: 27px;
  height: 27px;
  position: relative;
  z-index: 2;
}

.feature-icon-cyan {
  color: #67e8f9;
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.22), transparent 38%),
    linear-gradient(135deg, rgba(8,20,30,.95), rgba(18,36,48,.95));
  box-shadow:
    0 0 0 1px rgba(34,211,238,.10),
    0 0 26px rgba(34,211,238,.16);
}

.feature-icon-blue {
  color: #93c5fd;
  background:
    radial-gradient(circle at top left, rgba(59,130,246,.22), transparent 38%),
    linear-gradient(135deg, rgba(10,18,34,.95), rgba(20,28,46,.95));
  box-shadow:
    0 0 0 1px rgba(59,130,246,.10),
    0 0 26px rgba(59,130,246,.16);
}

.feature-icon-pink {
  color: #f9a8d4;
  background:
    radial-gradient(circle at top left, rgba(236,72,153,.22), transparent 38%),
    linear-gradient(135deg, rgba(28,12,26,.95), rgba(44,20,40,.95));
  box-shadow:
    0 0 0 1px rgba(236,72,153,.10),
    0 0 26px rgba(236,72,153,.16);
}

.feature-icon-green {
  color: #86efac;
  background:
    radial-gradient(circle at top left, rgba(34,197,94,.22), transparent 38%),
    linear-gradient(135deg, rgba(10,26,18,.95), rgba(16,38,28,.95));
  box-shadow:
    0 0 0 1px rgba(34,197,94,.10),
    0 0 26px rgba(34,197,94,.16);
}

.feature-icon-purple {
  color: #c4b5fd;
  background:
    radial-gradient(circle at top left, rgba(139,92,246,.22), transparent 38%),
    linear-gradient(135deg, rgba(20,12,30,.95), rgba(34,18,46,.95));
  box-shadow:
    0 0 0 1px rgba(139,92,246,.10),
    0 0 26px rgba(139,92,246,.16);
}

.feature-icon-orange {
  color: #fdba74;
  background:
    radial-gradient(circle at top left, rgba(251,146,60,.22), transparent 38%),
    linear-gradient(135deg, rgba(32,18,10,.95), rgba(48,28,16,.95));
  box-shadow:
    0 0 0 1px rgba(251,146,60,.10),
    0 0 26px rgba(251,146,60,.16);
}

.feature-card:hover .feature-icon {
  transform: translateY(-2px) scale(1.04);
  transition: transform .22s ease;
}

@media (max-width: 768px) {
  .feature-icon {
    width: 50px;
    height: 50px;
    min-width: 50px;
    border-radius: 16px;
  }

  .feature-icon svg {
    width: 24px;
    height: 24px;
  }

  .feature-card h3 {
    gap: 12px !important;
  }
}

/* =========================
   MUSICMIX HERO VOLUME ULTRA
   barra neon, ícone, mute/unmute, animação sem bolinha glow
   ========================= */

.hero-volume-card {
  position: relative;
  overflow: hidden;
  min-height: 118px;
  border-color: rgba(34, 211, 238, .16) !important;
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.10), transparent 38%),
    radial-gradient(circle at bottom right, rgba(168,85,247,.10), transparent 38%),
    rgba(255,255,255,.045) !important;
}

.hero-volume-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.hero-volume-title {
  display: flex;
  align-items: center;
  gap: 12px;
}

.hero-volume-icon {
  width: 42px;
  height: 42px;
  border-radius: 15px;
  border: 1px solid rgba(34,211,238,.22);
  background:
    radial-gradient(circle at 30% 20%, rgba(34,211,238,.20), transparent 40%),
    rgba(255,255,255,.055);
  color: #67e8f9;
  display: grid;
  place-items: center;
  cursor: pointer;
  transition:
    transform .2s ease,
    border-color .2s ease,
    background .2s ease;
}

.hero-volume-icon:hover {
  transform: translateY(-2px) scale(1.03);
  border-color: rgba(236,72,153,.34);
  background:
    radial-gradient(circle at 30% 20%, rgba(236,72,153,.18), transparent 42%),
    rgba(255,255,255,.075);
}

.hero-volume-icon svg {
  width: 23px;
  height: 23px;
  fill: currentColor;
}

.hero-volume-wave {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  opacity: .95;
}

.hero-volume-icon svg.is-muted .hero-volume-wave {
  opacity: 0;
}

.hero-volume-icon svg.is-muted::after {
  content: "";
}

.hero-volume-title strong {
  display: block;
  margin-top: 3px;
  color: #67e8f9;
  font-size: 1.05rem;
  font-weight: 950;
  letter-spacing: -.03em;
}

.hero-volume-status {
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(34,197,94,.18);
  background: rgba(34,197,94,.10);
  color: #86efac;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.hero-volume-is-muted .hero-volume-status {
  border-color: rgba(239,68,68,.24);
  background: rgba(239,68,68,.10);
  color: #fecaca;
}

.hero-volume-slider-wrap {
  position: relative;
  height: 12px;
  margin-top: 18px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  overflow: hidden;
}

.hero-volume-slider-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(34,211,238,.16), rgba(168,85,247,.14), rgba(236,72,153,.12));
  opacity: .7;
}

.hero-volume-fill {
  position: absolute;
  inset: 0 auto 0 0;
  width: 70%;
  border-radius: inherit;
  background: linear-gradient(90deg, #22d3ee, #6366f1, #a855f7, #ec4899);
  background-size: 220% 100%;
  animation: heroVolumeFlow 2.2s linear infinite;
  pointer-events: none;
}

.hero-volume-fill::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
  transform: translateX(-100%);
  animation: heroVolumeSweep 1.8s linear infinite;
}

@keyframes heroVolumeFlow {
  to {
    background-position: 220% 0;
  }
}

@keyframes heroVolumeSweep {
  to {
    transform: translateX(120%);
  }
}

.hero-volume-slider {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

/* sem bolinha glow: thumb invisível/limpo */
.hero-volume-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 1px;
  height: 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.hero-volume-slider::-moz-range-thumb {
  width: 1px;
  height: 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.hero-volume-is-moving .hero-volume-card {
  border-color: rgba(34,211,238,.36) !important;
  box-shadow:
    0 0 0 1px rgba(34,211,238,.10),
    0 20px 60px rgba(34,211,238,.10),
    0 0 42px rgba(168,85,247,.10) !important;
}

.hero-volume-is-moving .hero-volume-fill {
  animation-duration: .9s;
}

.hero-volume-is-muted .hero-volume-fill {
  background: linear-gradient(90deg, #ef4444, #fb7185) !important;
  width: 0% !important;
}

@media (max-width: 768px) {
  .hero-volume-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .hero-volume-status {
    align-self: flex-start;
  }
}

/* =========================
   MUSICMIX HERO VOLUME ULTRA
   barra neon, ícone, mute/unmute, animação sem bolinha glow
   ========================= */

.hero-volume-card {
  position: relative;
  overflow: hidden;
  min-height: 118px;
  border-color: rgba(34, 211, 238, .16) !important;
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.10), transparent 38%),
    radial-gradient(circle at bottom right, rgba(168,85,247,.10), transparent 38%),
    rgba(255,255,255,.045) !important;
}

.hero-volume-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.hero-volume-title {
  display: flex;
  align-items: center;
  gap: 12px;
}

.hero-volume-icon {
  width: 42px;
  height: 42px;
  border-radius: 15px;
  border: 1px solid rgba(34,211,238,.22);
  background:
    radial-gradient(circle at 30% 20%, rgba(34,211,238,.20), transparent 40%),
    rgba(255,255,255,.055);
  color: #67e8f9;
  display: grid;
  place-items: center;
  cursor: pointer;
  transition:
    transform .2s ease,
    border-color .2s ease,
    background .2s ease;
}

.hero-volume-icon:hover {
  transform: translateY(-2px) scale(1.03);
  border-color: rgba(236,72,153,.34);
  background:
    radial-gradient(circle at 30% 20%, rgba(236,72,153,.18), transparent 42%),
    rgba(255,255,255,.075);
}

.hero-volume-icon svg {
  width: 23px;
  height: 23px;
  fill: currentColor;
}

.hero-volume-wave {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  opacity: .95;
}

.hero-volume-icon svg.is-muted .hero-volume-wave {
  opacity: 0;
}

.hero-volume-icon svg.is-muted::after {
  content: "";
}

.hero-volume-title strong {
  display: block;
  margin-top: 3px;
  color: #67e8f9;
  font-size: 1.05rem;
  font-weight: 950;
  letter-spacing: -.03em;
}

.hero-volume-status {
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(34,197,94,.18);
  background: rgba(34,197,94,.10);
  color: #86efac;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.hero-volume-is-muted .hero-volume-status {
  border-color: rgba(239,68,68,.24);
  background: rgba(239,68,68,.10);
  color: #fecaca;
}

.hero-volume-slider-wrap {
  position: relative;
  height: 12px;
  margin-top: 18px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  overflow: hidden;
}

.hero-volume-slider-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(34,211,238,.16), rgba(168,85,247,.14), rgba(236,72,153,.12));
  opacity: .7;
}

.hero-volume-fill {
  position: absolute;
  inset: 0 auto 0 0;
  width: 70%;
  border-radius: inherit;
  background: linear-gradient(90deg, #22d3ee, #6366f1, #a855f7, #ec4899);
  background-size: 220% 100%;
  animation: heroVolumeFlow 2.2s linear infinite;
  pointer-events: none;
}

.hero-volume-fill::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
  transform: translateX(-100%);
  animation: heroVolumeSweep 1.8s linear infinite;
}

@keyframes heroVolumeFlow {
  to {
    background-position: 220% 0;
  }
}

@keyframes heroVolumeSweep {
  to {
    transform: translateX(120%);
  }
}

.hero-volume-slider {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

/* sem bolinha glow: thumb invisível/limpo */
.hero-volume-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 1px;
  height: 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.hero-volume-slider::-moz-range-thumb {
  width: 1px;
  height: 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.hero-volume-is-moving .hero-volume-card {
  border-color: rgba(34,211,238,.36) !important;
  box-shadow:
    0 0 0 1px rgba(34,211,238,.10),
    0 20px 60px rgba(34,211,238,.10),
    0 0 42px rgba(168,85,247,.10) !important;
}

.hero-volume-is-moving .hero-volume-fill {
  animation-duration: .9s;
}

.hero-volume-is-muted .hero-volume-fill {
  background: linear-gradient(90deg, #ef4444, #fb7185) !important;
  width: 0% !important;
}

@media (max-width: 768px) {
  .hero-volume-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .hero-volume-status {
    align-self: flex-start;
  }
}

/* =========================
   MUSICMIX HERO VOLUME VISÍVEL
   ========================= */

.hero-volume-card-ultra {
  position: relative;
  z-index: 5;
  margin-top: 18px;
  margin-bottom: 18px;
  padding: 18px;
  border-radius: 22px;
  border: 1px solid rgba(34,211,238,.20);
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.14), transparent 36%),
    radial-gradient(circle at 100% 0%, rgba(236,72,153,.12), transparent 36%),
    rgba(8,10,24,.78);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 16px 44px rgba(0,0,0,.22),
    0 0 34px rgba(34,211,238,.08);
}

.hero-volume-top {
  display: flex;
  align-items: center;
  gap: 14px;
}

.hero-volume-btn {
  width: 46px;
  height: 46px;
  min-width: 46px;
  border-radius: 16px;
  border: 1px solid rgba(34,211,238,.24);
  background:
    radial-gradient(circle at 30% 20%, rgba(34,211,238,.20), transparent 42%),
    rgba(255,255,255,.06);
  color: #67e8f9;
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.hero-volume-btn:hover {
  transform: translateY(-2px);
  border-color: rgba(236,72,153,.35);
  background:
    radial-gradient(circle at 30% 20%, rgba(236,72,153,.18), transparent 42%),
    rgba(255,255,255,.08);
}

.hero-volume-btn svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.hero-volume-wave {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
}

#hero-volume-svg.is-muted .hero-volume-wave {
  opacity: 0;
}

.hero-volume-info {
  flex: 1;
  min-width: 0;
}

.hero-volume-info span {
  display: block;
  color: rgba(255,255,255,.55);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .24em;
}

.hero-volume-info strong {
  display: block;
  margin-top: 3px;
  color: #67e8f9;
  font-size: 22px;
  font-weight: 950;
  line-height: 1;
}

.hero-volume-status-ultra {
  padding: 8px 11px;
  border-radius: 999px;
  border: 1px solid rgba(34,197,94,.22);
  background: rgba(34,197,94,.10);
  color: #86efac;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.hero-volume-muted .hero-volume-status-ultra {
  border-color: rgba(239,68,68,.24);
  background: rgba(239,68,68,.12);
  color: #fecaca;
}

.hero-volume-track {
  position: relative;
  height: 12px;
  margin-top: 16px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
}

.hero-volume-track::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(34,211,238,.16), rgba(168,85,247,.13), rgba(236,72,153,.12));
}

.hero-volume-fill-ultra {
  position: absolute;
  inset: 0 auto 0 0;
  width: 70%;
  border-radius: inherit;
  background: linear-gradient(90deg, #22d3ee, #6366f1, #a855f7, #ec4899);
  background-size: 230% 100%;
  animation: heroVolumeNeonFlow 2.2s linear infinite;
  pointer-events: none;
}

.hero-volume-fill-ultra::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-120%);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
  animation: heroVolumeSweepVisible 1.8s linear infinite;
}

@keyframes heroVolumeNeonFlow {
  to {
    background-position: 230% 0;
  }
}

@keyframes heroVolumeSweepVisible {
  to {
    transform: translateX(120%);
  }
}

.hero-volume-range {
  position: absolute;
  inset: 0;
  z-index: 4;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

/* sem bolinha glow */
.hero-volume-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 1px;
  height: 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.hero-volume-range::-moz-range-thumb {
  width: 1px;
  height: 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.hero-volume-moving .hero-volume-card-ultra {
  border-color: rgba(34,211,238,.42);
  box-shadow:
    0 0 0 1px rgba(34,211,238,.12),
    0 20px 60px rgba(34,211,238,.12),
    0 0 42px rgba(168,85,247,.10);
}

.hero-volume-moving .hero-volume-fill-ultra {
  animation-duration: .8s;
}

.hero-volume-muted .hero-volume-fill-ultra {
  width: 0% !important;
  background: linear-gradient(90deg, #ef4444, #fb7185) !important;
}

@media (max-width: 768px) {
  .hero-volume-top {
    flex-wrap: wrap;
  }

  .hero-volume-status-ultra {
    margin-left: 60px;
  }
}

/* =========================
   MUSICMIX REGISTER FORM FIX
   Campos obrigatórios, select escuro, máscaras
   ========================= */

.required-star {
  color: #fb7185;
  font-weight: 900;
  margin-left: 4px;
  text-shadow: 0 0 12px rgba(251, 113, 133, .55);
}

.required-hint {
  border: 1px solid rgba(34, 211, 238, .18);
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.10), transparent 34%),
    rgba(255,255,255,.045);
  color: rgba(226,232,240,.82);
  border-radius: 18px;
  padding: 14px 16px;
  font-size: 13px;
  line-height: 1.6;
}

.required-hint strong {
  color: #67e8f9;
}

#register-form select,
#register-form input {
  color: #ffffff !important;
}

#register-form select {
  background-color: rgba(255,255,255,.06) !important;
  color: #ffffff !important;
  color-scheme: dark;
}

#register-form select option {
  background: #101018 !important;
  color: #ffffff !important;
}

#register-form select option:checked,
#register-form select option:hover {
  background: #1e293b !important;
  color: #67e8f9 !important;
}

#register-form input:required,
#register-form select:required {
  border-color: rgba(34,211,238,.20);
}

#register-form input:required:valid,
#register-form select:required:valid {
  border-color: rgba(34,197,94,.28);
}

#register-form input:required:invalid:not(:placeholder-shown) {
  border-color: rgba(251,113,133,.38);
}

#documentNumber,
#whatsapp,
#phone {
  letter-spacing: .02em;
  font-weight: 700;
}

#register-form label {
  font-weight: 800 !important;
}

#form-feedback {
  margin-bottom: 16px;
}

/* =========================
   FIX REGISTER CPF / PHONE COMPACT
   ========================= */

.register-compact-field {
  position: relative;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  padding: 14px;
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.07), transparent 34%),
    rgba(255,255,255,.025);
}

.register-compact-field label {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 8px !important;
  font-size: 13px !important;
  line-height: 1.2;
}

.register-compact-field input {
  height: 46px;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .02em;
}

.register-compact-field p {
  min-height: 16px;
  line-height: 1.35;
}

.register-compact-field:focus-within {
  border-color: rgba(34,211,238,.34);
  box-shadow:
    0 0 0 1px rgba(34,211,238,.08),
    0 14px 34px rgba(34,211,238,.08);
}

.required-star {
  color: #fb7185;
  font-weight: 900;
  text-shadow: 0 0 10px rgba(251,113,133,.55);
}

/* =========================
   REGISTER FINAL ALIGN / LOGO / TEXT
   ========================= */

/* Lado esquerdo mais limpo */
.register-left {
  justify-content: center !important;
  padding-right: 42px !important;
}

.register-left > img[src*="logo-full"],
.register-main-logo {
  display: none !important;
}

/* Mantém só o logo pequeno do topo esquerdo */
.register-left > a {
  margin-bottom: 56px !important;
}

/* Diminui fonte gigante da chamada */
.register-left h1 {
  max-width: 580px !important;
  font-size: clamp(2.6rem, 3.8vw, 4.25rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.045em !important;
  margin-top: 0 !important;
}

.register-left p {
  max-width: 560px !important;
  font-size: 1rem !important;
  line-height: 1.85 !important;
}

/* Cards laterais mais discretos */
.register-left .mt-10 {
  margin-top: 36px !important;
  max-width: 560px !important;
}

.register-left .glass-card {
  padding: 16px 18px !important;
  border-radius: 18px !important;
}

/* Card do formulário */
.register-right {
  align-items: center !important;
  justify-content: center !important;
}

.register-card-padding {
  position: relative !important;
  padding: 34px !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Logo pequeno dentro do card do formulário */
.register-card-logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  padding: 9px 12px;
  border-radius: 18px;
  border: 1px solid rgba(34,211,238,.16);
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.12), transparent 36%),
    rgba(255,255,255,.04);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 0 28px rgba(34,211,238,.08);
}

.register-card-logo img {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  object-fit: contain;
  filter:
    drop-shadow(0 0 12px rgba(34,211,238,.24))
    drop-shadow(0 0 18px rgba(236,72,153,.12));
}

.register-card-logo strong {
  display: block;
  color: #fff;
  font-size: 18px;
  font-weight: 950;
  line-height: 1;
}

.register-card-logo span {
  display: block;
  margin-top: 3px;
  color: rgba(226,232,240,.68);
  font-size: 12px;
  line-height: 1;
}

/* Título do formulário alinhado */
.register-form-title {
  margin-top: 0 !important;
  font-size: 2.35rem !important;
  line-height: 1.05 !important;
  letter-spacing: -0.045em !important;
}

/* Reduz espaço morto no topo do formulário */
.register-card-padding .mb-7,
.register-card-padding .mb-8 {
  margin-bottom: 24px !important;
}

/* Organiza melhor seções */
#register-form > div:not(.register-hint):not(.register-check-card):not(.register-trial-box) {
  padding: 18px !important;
}

#register-form .grid {
  align-items: start !important;
}

/* Campos mais consistentes */
.register-field input,
.register-field select {
  height: 48px !important;
}

.register-field small {
  font-size: 11px !important;
}

/* Remove qualquer logo mobile duplicado dentro do card caso Tailwind não esconda */
.register-card-padding a.lg\:hidden {
  display: none !important;
}

/* Mobile */
@media (max-width: 1024px) {
  .register-card-padding {
    max-width: 100% !important;
  }

  .register-card-logo {
    display: inline-flex !important;
  }
}

@media (max-width: 768px) {
  .register-card-padding {
    padding: 24px !important;
  }

  .register-form-title {
    font-size: 2rem !important;
  }
}

/* =========================
   REGISTER LOGO CENTRALIZADO
   ========================= */

.register-card-logo {
  display: none !important;
}

.register-card-logo-center {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0 auto 22px auto;
  padding-top: 4px;
}

.register-card-logo-center img {
  width: min(220px, 70%);
  height: auto;
  object-fit: contain;
  filter:
    drop-shadow(0 0 18px rgba(34,211,238,.28))
    drop-shadow(0 0 28px rgba(236,72,153,.14));
}

.register-form-title {
  text-align: center !important;
}

.register-card-padding .mb-7,
.register-card-padding .mb-8 {
  text-align: center !important;
}

.register-card-padding .mb-7 p,
.register-card-padding .mb-8 p {
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 768px) {
  .register-card-logo-center img {
    width: min(190px, 76%);
  }
}

/* =========================
   LOGIN LOGO CENTRALIZADO
   ========================= */

.login-card-logo-center {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0 auto 22px auto;
  padding-top: 4px;
}

.login-card-logo-center img {
  width: min(220px, 70%);
  height: auto;
  object-fit: contain;
  filter:
    drop-shadow(0 0 18px rgba(34,211,238,.28))
    drop-shadow(0 0 28px rgba(236,72,153,.14));
}

.login-form-title {
  margin-top: 0 !important;
  text-align: center !important;
  font-size: 2.35rem !important;
  line-height: 1.05 !important;
  letter-spacing: -0.045em !important;
}

#login-form {
  margin-top: 26px !important;
}

#login-form label {
  font-weight: 800 !important;
}

#login-form input {
  height: 50px;
  border-radius: 15px;
  font-weight: 700;
  background:
    linear-gradient(135deg, rgba(255,255,255,.065), rgba(255,255,255,.035)) !important;
}

#login-form input:focus {
  border-color: rgba(34,211,238,.55) !important;
  box-shadow:
    0 0 0 4px rgba(34,211,238,.08),
    0 0 24px rgba(34,211,238,.08) !important;
}

/* Garante que o botão de tema não apareça no login mesmo se sobrar CSS/HTML antigo */
body .theme-toggle-site {
  display: none !important;
}

@media (max-width: 768px) {
  .login-card-logo-center img {
    width: min(190px, 76%);
  }

  .login-form-title {
    font-size: 2rem !important;
  }
}

/* =========================
   LOGIN LOGO FINAL SIZE
   ========================= */

/* Remove qualquer logo-full duplicado na lateral esquerda do login */
body:has(#login-form) .hidden.lg\:block > img[src*="logo-full"] {
  display: none !important;
}

/* Deixa o logo do formulário menor e centralizado */
.login-card-logo-center {
  margin-bottom: 18px !important;
}

.login-card-logo-center img {
  width: min(160px, 56%) !important;
  max-height: 120px !important;
  object-fit: contain !important;
}

/* Ajusta o título depois do logo menor */
.login-form-title {
  margin-top: 0 !important;
  font-size: 2.15rem !important;
}

/* No mobile, menor ainda */
@media (max-width: 768px) {
  .login-card-logo-center img {
    width: min(145px, 62%) !important;
    max-height: 105px !important;
  }
}

/* ===== MUSICMIX FINAL LANDING PATCH ===== */
.mobile-menu {
  max-height: 0;
  overflow: hidden;
  display: block !important;
  opacity: 0;
  pointer-events: none;
  transition: max-height .25s ease, opacity .2s ease;
}
.mobile-menu.open {
  max-height: 540px;
  opacity: 1;
  pointer-events: auto;
}
.mobile-menu .container {
  display: grid;
  gap: 10px;
  padding-top: 14px;
  padding-bottom: 18px;
}
.faq-content {
  display: block !important;
  max-height: 0;
  overflow: hidden;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  opacity: 0;
  transition: max-height .25s ease, opacity .2s ease, padding .2s ease;
}
.faq-item.open .faq-content {
  max-height: 280px;
  opacity: 1;
  padding: 0 24px 22px !important;
}
.starter-promo-note {
  margin-top: 8px !important;
  color: rgba(250,204,21,.92) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}

/* ===== MUSICMIX MENU/FAQ FIX REAL ===== */
@media (max-width: 980px) {
  .mobile-button {
    display: inline-grid !important;
    place-items: center !important;
  }

  .nav,
  .header-actions {
    display: none !important;
  }
}

.mobile-menu {
  display: block !important;
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  border-top: 1px solid rgba(255,255,255,.10);
  padding: 0 !important;
  transition: max-height .28s ease, opacity .2s ease, padding .2s ease !important;
}

.mobile-menu.mm-open,
.mobile-menu.open {
  max-height: 620px !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  padding: 18px 0 !important;
}

.mobile-menu .container {
  display: grid !important;
  gap: 10px !important;
}

.mobile-menu a,
.mobile-menu button {
  width: 100% !important;
  margin-top: 0 !important;
}

.faq-list {
  display: grid !important;
  gap: 14px !important;
}

.faq-item {
  border-radius: 22px !important;
  overflow: hidden !important;
}

.faq-button {
  width: 100% !important;
  border: 0 !important;
  cursor: pointer !important;
  background: transparent !important;
  color: #fff !important;
  padding: 22px 24px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
  text-align: left !important;
  font-size: 16px !important;
  font-weight: 950 !important;
}

.faq-question-text {
  display: block !important;
  color: #fff !important;
}

.faq-plus {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  background: rgba(34,211,238,.12) !important;
  color: #67e8f9 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  transition: transform .22s ease, background .22s ease !important;
}

.faq-content {
  display: block !important;
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  padding: 0 24px !important;
  color: rgba(255,255,255,.68) !important;
  line-height: 1.75 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  transition: max-height .28s ease, opacity .2s ease, padding .2s ease !important;
}

.faq-item.mm-open .faq-content,
.faq-item.open .faq-content {
  max-height: 260px !important;
  opacity: 1 !important;
  padding: 0 24px 22px !important;
}

.faq-item.mm-open .faq-plus,
.faq-item.open .faq-plus {
  transform: rotate(45deg) !important;
  background: rgba(168,85,247,.18) !important;
  color: #c4b5fd !important;
}

/* ===== MUSICMIX FAQ VISUAL FIX FINAL ===== */
.faq-button span,
.faq-question-text {
  transform: none !important;
  rotate: 0deg !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

.faq-item.open .faq-button span,
.faq-item.mm-open .faq-button span {
  transform: none !important;
}

.faq-question-text {
  flex: 1 1 auto !important;
  display: block !important;
  color: #fff !important;
  white-space: normal !important;
  line-height: 1.45 !important;
  text-align: left !important;
}

.faq-plus {
  transform: none !important;
  rotate: 0deg !important;
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  background: rgba(34,211,238,.12) !important;
  color: #67e8f9 !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

.faq-item.open .faq-plus,
.faq-item.mm-open .faq-plus {
  transform: rotate(45deg) !important;
  background: rgba(168,85,247,.18) !important;
  color: #c4b5fd !important;
}

.footer-cta,
.bottom-cta,
.sticky-cta,
.cta-strip {
  display: none !important;
}

/* ===== MUSICMIX MENU FAQ CLEAN FINAL ===== */
@media (max-width: 980px) {
  .mobile-button {
    display: inline-grid !important;
    place-items: center !important;
  }

  .nav,
  .header-actions {
    display: none !important;
  }
}

.mobile-menu {
  transition: max-height .25s ease, opacity .2s ease !important;
  border-top: 1px solid rgba(255,255,255,.10);
}

.mobile-menu .container {
  display: grid !important;
  gap: 10px !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.faq-button {
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  padding: 22px 24px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
  text-align: left !important;
  cursor: pointer !important;
}

.faq-question-text {
  display: block !important;
  flex: 1 1 auto !important;
  transform: none !important;
  rotate: 0deg !important;
  writing-mode: horizontal-tb !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.45 !important;
}

.faq-plus {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  background: rgba(34,211,238,.12) !important;
  color: #67e8f9 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  transform: none !important;
}

.faq-content {
  color: rgba(255,255,255,.70) !important;
  line-height: 1.75 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  transition: max-height .25s ease, opacity .2s ease, padding .2s ease !important;
}

.footer-cta,
.bottom-cta,
.sticky-cta,
.cta-strip {
  display: none !important;
}

.starter-promo-note {
  margin-top: 8px !important;
  color: rgba(250,204,21,.92) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}

/* ===== MUSICMIX FAQ MENU SEM DOT FINAL ===== */
@media (max-width: 980px) {
  .mobile-button {
    display: inline-grid !important;
    place-items: center !important;
  }

  .nav,
  .header-actions {
    display: none !important;
  }
}

.mobile-menu {
  transition: max-height .25s ease, opacity .2s ease !important;
  border-top: 1px solid rgba(255,255,255,.10);
}

.mobile-menu .container {
  display: grid !important;
  gap: 10px !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.faq-button {
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  padding: 22px 24px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
  text-align: left !important;
  cursor: pointer !important;
}

.faq-question-text {
  display: block !important;
  flex: 1 1 auto !important;
  transform: none !important;
  rotate: 0deg !important;
  writing-mode: horizontal-tb !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.45 !important;
}

.faq-plus {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  background: rgba(34,211,238,.12) !important;
  color: #67e8f9 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  transform: none !important;
}

.faq-content {
  color: rgba(255,255,255,.70) !important;
  line-height: 1.75 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  transition: max-height .25s ease, opacity .2s ease, padding .2s ease !important;
}

.footer-cta,
.bottom-cta,
.sticky-cta,
.cta-strip {
  display: none !important;
}

.starter-promo-note {
  margin-top: 8px !important;
  color: rgba(250,204,21,.92) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}

/* ===== MUSICMIX FAQ MENU RESTORE TOP SAFE ===== */
@media (max-width: 980px) {
  .mobile-button {
    display: inline-grid !important;
    place-items: center !important;
  }

  .nav,
  .header-actions {
    display: none !important;
  }
}

.mobile-menu .container {
  display: grid !important;
  gap: 10px !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.faq-button {
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  padding: 22px 24px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
  text-align: left !important;
  cursor: pointer !important;
}

.faq-question-text {
  display: block !important;
  flex: 1 1 auto !important;
  transform: none !important;
  rotate: 0deg !important;
  writing-mode: horizontal-tb !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.45 !important;
}

.faq-plus {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  background: rgba(34,211,238,.12) !important;
  color: #67e8f9 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  transform: none !important;
}

.faq-content {
  color: rgba(255,255,255,.70) !important;
  line-height: 1.75 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.footer-cta,
.bottom-cta,
.sticky-cta,
.cta-strip {
  display: none !important;
}

.starter-promo-note {
  margin-top: 8px !important;
  color: rgba(250,204,21,.92) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}

/* ===== MUSICMIX FAQ/MENU INLINE SAFE ===== */
@media (max-width: 980px) {
  .mobile-button {
    display: inline-grid !important;
    place-items: center !important;
  }

  .nav,
  .header-actions {
    display: none !important;
  }
}

.mobile-menu .container {
  display: grid !important;
  gap: 10px !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.faq-button {
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  padding: 22px 24px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
  text-align: left !important;
  cursor: pointer !important;
}

.faq-question-text {
  display: block !important;
  flex: 1 1 auto !important;
  transform: none !important;
  rotate: 0deg !important;
  writing-mode: horizontal-tb !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.45 !important;
}

.faq-plus {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  background: rgba(34,211,238,.12) !important;
  color: #67e8f9 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  transform: none !important;
}

.faq-content {
  color: rgba(255,255,255,.70) !important;
  line-height: 1.75 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.footer-cta,
.bottom-cta,
.sticky-cta,
.cta-strip {
  display: none !important;
}

/* ===== MUSICMIX HAMBURGUER MOBILE FINAL ===== */
@media (max-width: 980px) {
  #mobile-menu-button,
  .mobile-button {
    display: inline-grid !important;
    place-items: center !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    background: rgba(255,255,255,.06) !important;
    color: #fff !important;
    cursor: pointer !important;
    z-index: 10001 !important;
  }

  .nav,
  .header-actions {
    display: none !important;
  }

  #mobile-menu,
  .mobile-menu {
    display: block !important;
    max-height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-top: 1px solid rgba(255,255,255,.10) !important;
    transition: max-height .25s ease, opacity .2s ease, padding .2s ease !important;
  }

  #mobile-menu.mm-open,
  .mobile-menu.mm-open {
    max-height: 720px !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  #mobile-menu .container,
  .mobile-menu .container {
    display: grid !important;
    gap: 10px !important;
  }

  #mobile-menu a,
  #mobile-menu button,
  .mobile-menu a,
  .mobile-menu button {
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    margin: 0 !important;
  }
}

/* ===== MUSICMIX FAQ PREMIUM EFFECT FINAL ===== */
#faq .section-title,
.faq-list,
.faq-item,
.faq-button,
.faq-content {
  -webkit-font-smoothing: antialiased !important;
  text-rendering: geometricPrecision !important;
}

.faq-list {
  display: grid !important;
  gap: 16px !important;
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.faq-item {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 24px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  background:
    linear-gradient(135deg, rgba(10,14,24,.92), rgba(8,11,20,.96)) !important;
  box-shadow:
    0 18px 54px rgba(0,0,0,.22),
    0 0 0 1px rgba(255,255,255,.018) inset !important;
  transition:
    border-color .22s ease,
    transform .22s ease,
    box-shadow .22s ease,
    background .22s ease !important;
}

.faq-item::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.10), transparent 28%),
    radial-gradient(circle at 100% 0%, rgba(59,130,246,.08), transparent 30%) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .22s ease !important;
}

.faq-item:hover,
.faq-item.open {
  border-color: rgba(34,211,238,.26) !important;
  transform: translateY(-1px) !important;
  box-shadow:
    0 22px 64px rgba(0,0,0,.26),
    0 0 32px rgba(34,211,238,.055),
    0 0 0 1px rgba(34,211,238,.055) inset !important;
}

.faq-item:hover::before,
.faq-item.open::before {
  opacity: 1 !important;
}

.faq-button {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  padding: 24px 26px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 18px !important;
  text-align: left !important;
  cursor: pointer !important;
}

.faq-question-text {
  display: block !important;
  flex: 1 1 auto !important;
  color: rgba(255,255,255,.94) !important;
  font-size: clamp(16px, 1.35vw, 19px) !important;
  font-weight: 950 !important;
  letter-spacing: -.025em !important;
  line-height: 1.38 !important;
  transform: none !important;
  rotate: 0deg !important;
  writing-mode: horizontal-tb !important;
}

.faq-plus {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 38px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 14px !important;
  background:
    linear-gradient(135deg, rgba(34,211,238,.16), rgba(59,130,246,.10)) !important;
  border: 1px solid rgba(34,211,238,.20) !important;
  color: #67e8f9 !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  transform: none !important;
  transition:
    transform .22s ease,
    background .22s ease,
    color .22s ease,
    border-color .22s ease !important;
}

.faq-item.open .faq-plus {
  transform: rotate(90deg) !important;
  background:
    linear-gradient(135deg, rgba(34,211,238,.24), rgba(59,130,246,.18)) !important;
  border-color: rgba(34,211,238,.34) !important;
  color: #ffffff !important;
}

.faq-content {
  position: relative !important;
  z-index: 1 !important;
  color: rgba(226,232,240,.76) !important;
  line-height: 1.82 !important;
  font-size: clamp(14px, 1.08vw, 16px) !important;
  font-weight: 650 !important;
  letter-spacing: -.01em !important;
  padding-left: 26px !important;
  padding-right: 72px !important;
}

.faq-item.open .faq-content {
  animation: musicmixFaqFade .22s ease both !important;
}

@keyframes musicmixFaqFade {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.starter-promo-note {
  margin-top: 8px !important;
  color: rgba(250,204,21,.94) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.55 !important;
}

@media (max-width: 768px) {
  .faq-button {
    padding: 20px 20px !important;
  }

  .faq-content {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .faq-question-text {
    font-size: 16px !important;
  }

  .faq-plus {
    flex-basis: 34px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 12px !important;
  }
}

/* ===== MUSICMIX LANDING PLANOS + FAQ FULL FINAL ===== */

/* PLANOS */
#planos .plans-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

#planos .plan-card {
  position: relative !important;
  overflow: hidden !important;
  min-height: 685px !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 28px !important;
  border-radius: 30px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.075), transparent 28%),
    radial-gradient(circle at 100% 0%, rgba(59,130,246,.055), transparent 32%),
    linear-gradient(180deg, rgba(8,12,22,.96), rgba(5,7,14,.98)) !important;
  box-shadow:
    0 18px 54px rgba(0,0,0,.24),
    0 0 0 1px rgba(255,255,255,.025) inset !important;
  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease,
    background .22s ease !important;
}

#planos .plan-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 14% 10%, rgba(34,211,238,.11), transparent 24%),
    radial-gradient(circle at 86% 0%, rgba(99,102,241,.09), transparent 28%) !important;
  opacity: .55 !important;
  pointer-events: none !important;
}

#planos .plan-card > * {
  position: relative !important;
  z-index: 1 !important;
}

#planos .plan-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(34,211,238,.24) !important;
  box-shadow:
    0 24px 70px rgba(0,0,0,.30),
    0 0 32px rgba(34,211,238,.055),
    0 0 0 1px rgba(34,211,238,.055) inset !important;
}

/* PRO PREMIUM */
#planos .plan-card.highlight {
  border-color: rgba(250,204,21,.28) !important;
  background:
    radial-gradient(circle at 10% 0%, rgba(250,204,21,.085), transparent 26%),
    radial-gradient(circle at 100% 0%, rgba(124,58,237,.13), transparent 34%),
    linear-gradient(180deg, rgba(11,13,23,.98), rgba(7,8,15,.99)) !important;
  box-shadow:
    0 26px 78px rgba(0,0,0,.34),
    0 0 48px rgba(250,204,21,.06),
    0 0 0 1px rgba(250,204,21,.07) inset !important;
  transform: translateY(-8px) !important;
  padding-top: 82px !important;
}

#planos .plan-card.highlight:hover {
  transform: translateY(-12px) !important;
}

#planos .plan-card .plan-tag {
  position: absolute !important;
  top: 24px !important;
  left: 24px !important;
  right: 24px !important;
  width: auto !important;
  height: 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: linear-gradient(90deg, #facc15, #facc15) !important;
  color: #101010 !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .16em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  box-shadow: 0 10px 26px rgba(250,204,21,.18) !important;
}

#planos .plan-card .plan-icon {
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  margin: 0 0 22px 0 !important;
  border-radius: 15px !important;
  background: rgba(34,211,238,.10) !important;
  display: inline-grid !important;
  place-items: center !important;
}

#planos .plan-card.highlight .plan-icon {
  background: rgba(250,204,21,.12) !important;
}

#planos .plan-card h3 {
  min-height: 34px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  color: rgba(255,255,255,.96) !important;
  font-size: 21px !important;
  font-weight: 600 !important;
  letter-spacing: -.04em !important;
}

#planos .plan-card > p {
  min-height: 72px !important;
  margin: 10px 0 0 !important;
  color: rgba(226,232,240,.72) !important;
  line-height: 1.58 !important;
  font-size: 14px !important;
}

#planos .plan-card .price {
  min-height: 86px !important;
  margin: 28px 0 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  gap: 4px !important;
  flex-wrap: nowrap !important;
}

#planos .plan-card .price span:first-child {
  color: rgba(255,255,255,.66) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-bottom: 9px !important;
}

#planos .plan-card .price strong {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  line-height: 1 !important;
  font-size: clamp(36px, 2.8vw, 44px) !important;
  letter-spacing: -.05em !important;
  color: #a5f3fc !important;
}

#planos .plan-card.highlight .price strong {
  color: #fef08a !important;
}

#planos .plan-card .price span:last-child {
  color: rgba(255,255,255,.70) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  margin-bottom: 10px !important;
}

#planos .starter-promo-note {
  min-height: 78px !important;
  margin: 8px 0 0 !important;
  padding: 12px 12px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(250,204,21,.20) !important;
  background:
    linear-gradient(135deg, rgba(250,204,21,.105), rgba(250,204,21,.035)) !important;
  color: #fde68a !important;
  font-size: 12.5px !important;
  font-weight: 780 !important;
  line-height: 1.55 !important;
}

#planos .starter-promo-note strong {
  color: #fff5b5 !important;
}

#planos .plan-list {
  min-height: 188px !important;
  margin: 22px 0 28px !important;
  padding: 0 !important;
  display: grid !important;
  align-content: start !important;
  gap: 18px !important;
}

#planos .plan-list li {
  min-height: 22px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  color: rgba(255,255,255,.84) !important;
  font-size: 14px !important;
  font-weight: 760 !important;
  line-height: 1.4 !important;
}

#planos .plan-list li svg {
  flex: 0 0 16px !important;
  margin-top: 2px !important;
  color: #10f0b6 !important;
}

#planos .plan-card > .btn {
  width: 100% !important;
  min-height: 52px !important;
  margin-top: auto !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  font-weight: 950 !important;
}

#planos .plan-card:not(.highlight) > .btn {
  border: 1px solid rgba(34,211,238,.20) !important;
  background: rgba(255,255,255,.04) !important;
  color: #fff !important;
  box-shadow: none !important;
}

#planos .plan-card.highlight > .btn {
  background: linear-gradient(90deg, #22d3ee, #7c3aed) !important;
  color: #061018 !important;
  box-shadow: 0 16px 36px rgba(34,211,238,.14) !important;
}

/* FAQ PREMIUM */
#faq .section-title,
.faq-list,
.faq-item,
.faq-button,
.faq-content {
  -webkit-font-smoothing: antialiased !important;
  text-rendering: geometricPrecision !important;
}

.faq-list {
  display: grid !important;
  gap: 16px !important;
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.faq-item {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 24px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  background:
    linear-gradient(135deg, rgba(10,14,24,.92), rgba(8,11,20,.96)) !important;
  box-shadow:
    0 18px 54px rgba(0,0,0,.22),
    0 0 0 1px rgba(255,255,255,.018) inset !important;
  transition:
    border-color .22s ease,
    transform .22s ease,
    box-shadow .22s ease !important;
}

.faq-item:hover,
.faq-item.open {
  border-color: rgba(34,211,238,.26) !important;
  transform: translateY(-1px) !important;
  box-shadow:
    0 22px 64px rgba(0,0,0,.26),
    0 0 32px rgba(34,211,238,.055),
    0 0 0 1px rgba(34,211,238,.055) inset !important;
}

.faq-button {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  padding: 24px 26px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 18px !important;
  text-align: left !important;
  cursor: pointer !important;
}

.faq-question-text {
  display: block !important;
  flex: 1 1 auto !important;
  color: rgba(255,255,255,.94) !important;
  font-size: clamp(16px, 1.35vw, 19px) !important;
  font-weight: 950 !important;
  letter-spacing: -.025em !important;
  line-height: 1.38 !important;
  transform: none !important;
  rotate: 0deg !important;
  writing-mode: horizontal-tb !important;
}

.faq-plus {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 38px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 14px !important;
  background:
    linear-gradient(135deg, rgba(34,211,238,.16), rgba(59,130,246,.10)) !important;
  border: 1px solid rgba(34,211,238,.20) !important;
  color: #67e8f9 !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  transform: none !important;
  transition:
    transform .22s ease,
    background .22s ease,
    color .22s ease,
    border-color .22s ease !important;
}

.faq-item.open .faq-plus {
  transform: rotate(90deg) !important;
  background:
    linear-gradient(135deg, rgba(34,211,238,.24), rgba(59,130,246,.18)) !important;
  border-color: rgba(34,211,238,.34) !important;
  color: #ffffff !important;
}

.faq-content {
  position: relative !important;
  z-index: 1 !important;
  color: rgba(226,232,240,.76) !important;
  line-height: 1.82 !important;
  font-size: clamp(14px, 1.08vw, 16px) !important;
  font-weight: 650 !important;
  letter-spacing: -.01em !important;
  padding-left: 26px !important;
  padding-right: 72px !important;
}

@media (max-width: 1100px) {
  #planos .plans-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  #planos .plan-card,
  #planos .plan-card.highlight {
    min-height: auto !important;
    padding: 26px !important;
    transform: none !important;
  }

  #planos .plan-card.highlight {
    padding-top: 76px !important;
  }

  #planos .plan-card:hover,
  #planos .plan-card.highlight:hover {
    transform: none !important;
  }

  #planos .plan-card > p,
  #planos .plan-card .price,
  #planos .plan-list,
  #planos .starter-promo-note {
    min-height: auto !important;
  }
}

@media (max-width: 768px) {
  .faq-button {
    padding: 20px 20px !important;
  }

  .faq-content {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .faq-question-text {
    font-size: 16px !important;
  }

  .faq-plus {
    flex-basis: 34px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 12px !important;
  }
}

/* ===== MUSICMIX FAQ CENTRALIZADO FINAL ===== */
#faq {
  text-align: center !important;
}

#faq .container {
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#faq .section-head {
  text-align: center !important;
  display: grid !important;
  justify-items: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 42px !important;
}

#faq .section-title {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 900px !important;
}

#faq .section-title::after,
#faq .section-head::after {
  left: 50% !important;
  transform: translateX(-50%) !important;
}

#faq .section-subtitle {
  text-align: center !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#faq .faq-list {
  width: min(100%, 900px) !important;
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  gap: 16px !important;
}

#faq .faq-item {
  text-align: left !important;
}

#faq .faq-button {
  min-height: 76px !important;
  padding: 22px 24px !important;
}

#faq .faq-question-text {
  font-size: 17px !important;
  font-weight: 950 !important;
  letter-spacing: -0.03em !important;
}

#faq .faq-content {
  text-align: left !important;
  padding-left: 24px !important;
  padding-right: 72px !important;
  color: rgba(226,232,240,.78) !important;
}

@media (max-width: 768px) {
  #faq .container {
    width: min(100% - 28px, 1080px) !important;
  }

  #faq .section-head {
    margin-bottom: 28px !important;
  }

  #faq .faq-list {
    width: 100% !important;
  }

  #faq .faq-button {
    min-height: 68px !important;
    padding: 18px 18px !important;
  }

  #faq .faq-question-text {
    font-size: 15.5px !important;
  }

  #faq .faq-content {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}
