@charset UTF-8;:root{--btn-radius:8px;--btn-padding-x:1.6rem;--btn-padding-y:.8rem;--btn-gap:.8rem;--btn-font-size:1.4rem;--btn-font-weight:600;--btn-letter-spacing:.05em;--btn-transition:.3s;--btn-easing:cubic-bezier(0.4,0,.2,1);--btn-hover-lift:-2px;--btn-hover-scale:1;--btn-cursor:pointer;--btn-focus-ring-width:2px;--btn-focus-ring-offset:2px;--btn-focus-ring-color:var(--primary,#6842ff);--btn-text-transform:uppercase;--btn-line-height:1.2;--btn-border-width:1px;--btn-pill-radius:50px;--btn-rounded-radius:12px;--btn-spark-size:10px;--btn-spark-color:rgba(255,255,255,.9);--btn-spark-glow:rgba(255,255,255,.8);--btn-spark-duration:2s;--btn-primary-gradient:linear-gradient(135deg,var(--primary) 0,#8b5cf6 100%);--btn-primary-gradient-hover:linear-gradient(135deg,#7d3ef5 0,#9d6ef9 100%);--btn-primary-shadow:rgba(104,66,255,.4);--btn-primary-ghost-border:rgba(104,66,255,.5);--btn-primary-ghost-border-hover:var(--primary);--btn-primary-ghost-bg-hover:rgba(104,66,255,.15);--btn-primary-ghost-shadow:rgba(104,66,255,.25);--btn-secondary-shadow:rgba(30,68,212,.4);--btn-secondary-ghost-border:rgba(30,68,212,.5);--btn-secondary-ghost-border-hover:var(--secondary);--btn-secondary-ghost-bg-hover:rgba(30,68,212,.15);--btn-secondary-ghost-shadow:rgba(30,68,212,.25);--btn-tertiary-shadow:rgba(221,16,131,.4);--btn-tertiary-ghost-border:rgba(221,16,131,.5);--btn-tertiary-ghost-border-hover:var(--tertiary);--btn-tertiary-ghost-bg-hover:rgba(221,16,131,.15);--btn-tertiary-ghost-shadow:rgba(221,16,131,.25);--btn-light-bg:var(--light,#f5f5f5);--btn-light-text:var(--dark,#1a1a1a);--btn-light-shadow:rgba(0,0,0,.1);--btn-light-hover-bg:#3a3a3a;--btn-light-hover-text:#f5f5f5;--btn-light-ghost-border:rgba(245,245,245,.5);--btn-light-ghost-border-hover:var(--light,#f5f5f5);--btn-light-ghost-bg-hover:rgba(245,245,245,.15);--btn-light-ghost-shadow:rgba(245,245,245,.25);--btn-dark-bg:var(--dark,#1a1a1a);--btn-dark-text:var(--light,#f5f5f5);--btn-dark-shadow:rgba(0,0,0,.3);--btn-dark-hover-bg:#d5d5d5;--btn-dark-hover-text:#1a1a1a;--btn-dark-ghost-border:rgba(26,26,26,.5);--btn-dark-ghost-border-hover:var(--dark,#1a1a1a);--btn-dark-ghost-bg-hover:rgba(26,26,26,.15);--btn-dark-ghost-shadow:rgba(26,26,26,.25)}@keyframes sparkBackAndForth{0%{left:0}50%{left:100%}100%{left:0}}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--btn-gap);padding:var(--btn-padding-y) var(--btn-padding-x);position:relative;overflow:hidden;width:fit-content;background:var(--btn-primary-gradient);border-radius:var(--btn-radius);border:var(--btn-border-width) solid transparent;font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);line-height:var(--btn-line-height);color:#FFF;text-decoration:none;text-transform:var(--btn-text-transform);letter-spacing:var(--btn-letter-spacing);text-align:center;cursor:var(--btn-cursor);transition:all var(--btn-transition) var(--btn-easing)}.btn-primary:hover{transform:translateY(var(--btn-hover-lift)) scale(var(--btn-hover-scale));box-shadow:0 8px 24px var(--btn-primary-shadow);background:var(--btn-primary-gradient-hover)}.btn-primary:focus-visible{outline:var(--btn-focus-ring-width) solid var(--btn-focus-ring-color);outline-offset:var(--btn-focus-ring-offset)}.btn-primary:active{transform:translateY(0) scale(1)}.btn-primary,.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary p,.btn-primary span,.btn-primary a,.btn-primary label,.btn-primary:hover p,.btn-primary:hover span,.btn-primary:hover a,.btn-primary:hover label{color:#FFF}.btn-primary p,.btn-primary span,.btn-primary label{margin:0;padding:0}.btn-primary__arrow{transition:transform var(--btn-transition) ease}.btn-primary:hover .btn-primary__arrow{transform:translateX(4px)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--btn-gap);padding:var(--btn-padding-y) var(--btn-padding-x);position:relative;overflow:hidden;width:fit-content;background-color:var(--secondary);border-radius:var(--btn-radius);border:var(--btn-border-width) solid transparent;font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);line-height:var(--btn-line-height);color:#FFF;text-decoration:none;text-transform:var(--btn-text-transform);letter-spacing:var(--btn-letter-spacing);text-align:center;cursor:var(--btn-cursor);transition:all var(--btn-transition) var(--btn-easing)}.btn-secondary:hover{background-color:var(--secondary-hover,#2957e0);box-shadow:0 8px 24px var(--btn-secondary-shadow);transform:translateY(var(--btn-hover-lift)) scale(var(--btn-hover-scale))}.btn-secondary:focus-visible{outline:var(--btn-focus-ring-width) solid var(--btn-focus-ring-color);outline-offset:var(--btn-focus-ring-offset)}.btn-secondary:active{transform:translateY(0) scale(1)}.btn-secondary,.btn-secondary:hover,.btn-secondary:focus,.btn-secondary:active,.btn-secondary p,.btn-secondary span,.btn-secondary a,.btn-secondary label,.btn-secondary:hover p,.btn-secondary:hover span,.btn-secondary:hover a,.btn-secondary:hover label{color:#FFF}.btn-secondary p,.btn-secondary span,.btn-secondary label{margin:0;padding:0}.btn-tertiary{display:inline-flex;align-items:center;justify-content:center;gap:var(--btn-gap);padding:var(--btn-padding-y) var(--btn-padding-x);position:relative;overflow:hidden;width:fit-content;background-color:var(--tertiary);border-radius:var(--btn-radius);border:var(--btn-border-width) solid transparent;font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);line-height:var(--btn-line-height);color:#FFF;text-decoration:none;text-transform:var(--btn-text-transform);letter-spacing:var(--btn-letter-spacing);text-align:center;cursor:var(--btn-cursor);transition:all var(--btn-transition) var(--btn-easing)}.btn-tertiary:hover{background-color:var(--tertiary-hover,#ee1b96);box-shadow:0 8px 24px var(--btn-tertiary-shadow);transform:translateY(var(--btn-hover-lift)) scale(var(--btn-hover-scale))}.btn-tertiary:focus-visible{outline:var(--btn-focus-ring-width) solid var(--btn-focus-ring-color);outline-offset:var(--btn-focus-ring-offset)}.btn-tertiary:active{transform:translateY(0) scale(1)}.btn-tertiary,.btn-tertiary:hover,.btn-tertiary:focus,.btn-tertiary:active,.btn-tertiary p,.btn-tertiary span,.btn-tertiary a,.btn-tertiary label,.btn-tertiary:hover p,.btn-tertiary:hover span,.btn-tertiary:hover a,.btn-tertiary:hover label{color:#FFF}.btn-tertiary p,.btn-tertiary span,.btn-tertiary label{margin:0;padding:0}.btn-light{display:inline-flex;align-items:center;justify-content:center;gap:var(--btn-gap);padding:var(--btn-padding-y) var(--btn-padding-x);position:relative;overflow:hidden;width:fit-content;background-color:var(--btn-light-bg);border-radius:var(--btn-radius);border:var(--btn-border-width) solid transparent;font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);line-height:var(--btn-line-height);color:var(--btn-light-text);text-decoration:none;text-transform:var(--btn-text-transform);letter-spacing:var(--btn-letter-spacing);text-align:center;cursor:var(--btn-cursor);transition:all var(--btn-transition) var(--btn-easing)}.btn-light:hover{background-color:var(--btn-light-hover-bg);color:var(--btn-light-hover-text);box-shadow:0 8px 24px var(--btn-dark-shadow);transform:translateY(var(--btn-hover-lift)) scale(var(--btn-hover-scale))}.btn-light:focus-visible{outline:var(--btn-focus-ring-width) solid var(--btn-focus-ring-color);outline-offset:var(--btn-focus-ring-offset)}.btn-light:active{transform:translateY(0) scale(1)}.btn-light p,.btn-light span,.btn-light a,.btn-light label{color:inherit;margin:0;padding:0}.btn-light:hover p,.btn-light:hover span,.btn-light:hover a,.btn-light:hover label{color:inherit}.btn-light.btn--ghost{background:transparent;border:1px solid var(--btn-light-ghost-border);color:var(--btn-light-bg)}.btn-light.btn--ghost:hover{background:var(--btn-light-ghost-bg-hover);border-color:var(--btn-light-ghost-border-hover);box-shadow:0 8px 24px var(--btn-light-ghost-shadow);color:var(--btn-light-bg)}.btn-dark{display:inline-flex;align-items:center;justify-content:center;gap:var(--btn-gap);padding:var(--btn-padding-y) var(--btn-padding-x);position:relative;overflow:hidden;width:fit-content;background-color:var(--btn-dark-bg);border-radius:var(--btn-radius);border:var(--btn-border-width) solid transparent;font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);line-height:var(--btn-line-height);color:var(--btn-dark-text);text-decoration:none;text-transform:var(--btn-text-transform);letter-spacing:var(--btn-letter-spacing);text-align:center;cursor:var(--btn-cursor);transition:all var(--btn-transition) var(--btn-easing)}.btn-dark:hover{background-color:var(--btn-dark-hover-bg);color:var(--btn-dark-hover-text);box-shadow:0 8px 24px var(--btn-light-shadow);transform:translateY(var(--btn-hover-lift)) scale(var(--btn-hover-scale))}.btn-dark:focus-visible{outline:var(--btn-focus-ring-width) solid var(--btn-focus-ring-color);outline-offset:var(--btn-focus-ring-offset)}.btn-dark:active{transform:translateY(0) scale(1)}.btn-dark p,.btn-dark span,.btn-dark a,.btn-dark label{color:inherit;margin:0;padding:0}.btn-dark:hover p,.btn-dark:hover span,.btn-dark:hover a,.btn-dark:hover label{color:inherit}.btn-dark.btn--ghost{background:transparent;border:1px solid var(--btn-dark-ghost-border);color:var(--btn-dark-bg)}.btn-dark.btn--ghost:hover{background:var(--btn-dark-ghost-bg-hover);border-color:var(--btn-dark-ghost-border-hover);box-shadow:0 8px 24px var(--btn-dark-ghost-shadow);color:var(--btn-dark-bg)}.btn--sm{padding:calc(var(--btn-padding-y) * .75) calc(var(--btn-padding-x) * .75);font-size:calc(var(--btn-font-size) * .85)}.btn--lg{padding:clamp(0.9rem,2.5vw,1.2rem) clamp(1.8rem,5vw,2.4rem);font-size:clamp(1.4rem,2vw,1.6rem)}.btn--xl{padding:clamp(1rem,3vw,1.6rem) clamp(2rem,6vw,3.2rem);font-size:clamp(1.5rem,2.5vw,1.8rem)}.btn--full{width:100%;display:flex}.btn--pill{border-radius:var(--btn-pill-radius)}.btn--rounded{border-radius:var(--btn-rounded-radius)}.btn-primary.btn--ghost{background:transparent;border:1px solid var(--btn-primary-ghost-border)}.btn-primary.btn--ghost:hover{background:var(--btn-primary-ghost-bg-hover);border-color:var(--btn-primary-ghost-border-hover);box-shadow:0 8px 24px var(--btn-primary-ghost-shadow)}.btn-secondary.btn--ghost{background:transparent;border:1px solid var(--btn-secondary-ghost-border)}.btn-secondary.btn--ghost:hover{background:var(--btn-secondary-ghost-bg-hover);border-color:var(--btn-secondary-ghost-border-hover);box-shadow:0 8px 24px var(--btn-secondary-ghost-shadow)}.btn-tertiary.btn--ghost{background:transparent;border:1px solid var(--btn-tertiary-ghost-border)}.btn-tertiary.btn--ghost:hover{background:var(--btn-tertiary-ghost-bg-hover);border-color:var(--btn-tertiary-ghost-border-hover);box-shadow:0 8px 24px var(--btn-tertiary-ghost-shadow)}.btn--spark::after{content:"";position:absolute;bottom:0;width:var(--btn-spark-size);height:var(--btn-spark-size);background:radial-gradient(circle,var(--btn-spark-color) 0,rgba(255,255,255,0) 80%);border-radius:50%;box-shadow:0 0 10px 3px var(--btn-spark-glow);opacity:0;pointer-events:none}.btn--spark:hover::after{opacity:1;animation:sparkBackAndForth var(--btn-spark-duration) ease-in-out infinite}.btn--spark:not(:hover)::after{animation:none;opacity:0}.skip-link{position:fixed;top:0;left:0;transform:translateY(-100%);z-index:9999;background:var(--primary,#6842ff);border-radius:0 0 var(--btn-radius) var(--btn-radius);padding:var(--btn-padding-y) var(--btn-padding-x);font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);line-height:var(--btn-line-height);color:#FFF;text-decoration:none;text-align:center;white-space:nowrap;transition:transform var(--btn-transition) var(--btn-easing)}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0);outline:var(--btn-focus-ring-width) solid #FFF;outline-offset:calc(var(--btn-focus-ring-offset) * -1);box-shadow:0 4px 20px rgba(0,0,0,.3)}.skip-link:hover{background:var(--primary-hover,#5835d4)}.skip-link:active{transform:translateY(2px)}.btn-gradient-spark{position:relative;display:inline-flex;flex-direction:row;justify-content:center;align-items:center;gap:1rem;padding:1.2rem 2.4rem;height:fit-content;width:fit-content;overflow:hidden;border-radius:80px 150px 80px 80px;background:conic-gradient(from 180deg at 50% 50%,#7166D1 0deg,#1E44D4 112.5deg,#C186CF 253.125deg,#7166D1 360deg);border:0;font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:500;color:#FFF;text-decoration:none;text-align:center;cursor:var(--btn-cursor);transition:transform .3s ease-out,filter .3s ease-in-out,box-shadow .3s ease-in-out}.btn-gradient-spark:hover{transform:translateY(-5px) scale(var(--btn-hover-scale));filter:brightness(1.2) drop-shadow(3px 5px 10px rgba(0,0,0,.3))}.btn-gradient-spark:focus-visible{outline:var(--btn-focus-ring-width) solid var(--btn-focus-ring-color);outline-offset:var(--btn-focus-ring-offset)}.btn-gradient-spark:active{transform:translateY(0) scale(1)}.btn-gradient-spark,.btn-gradient-spark:hover,.btn-gradient-spark:focus,.btn-gradient-spark:active,.btn-gradient-spark p,.btn-gradient-spark span,.btn-gradient-spark a,.btn-gradient-spark label,.btn-gradient-spark:hover p,.btn-gradient-spark:hover span,.btn-gradient-spark:hover a,.btn-gradient-spark:hover label{color:#FFF}.btn-gradient-spark p,.btn-gradient-spark span,.btn-gradient-spark label{margin:0;padding:0}.btn-gradient-spark::after{content:"";position:absolute;bottom:0;width:10px;height:10px;background:radial-gradient(circle,rgba(255,255,255,.9) 0,rgba(255,255,255,0) 80%);border-radius:50%;box-shadow:0 0 10px 3px rgba(255,255,255,.8);opacity:0;pointer-events:none}.btn-gradient-spark:hover::after{opacity:1;animation:sparkBackAndForth 2s ease-in-out infinite}.btn-gradient-spark:not(:hover)::after{animation:none;opacity:0}