@font-face{font-family: 'Manrope';font-style: normal;font-weight: 400 800;font-display: swap;src: url('./fonts/manrope-latin.woff2') format('woff2');}@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 400;font-display: swap;src: url('./fonts/ibm-plex-sans-400.woff2') format('woff2');}@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 600;font-display: swap;src: url('./fonts/ibm-plex-sans-600.woff2') format('woff2');}@font-face{font-family: 'IBM Plex Sans';font-style: normal;font-weight: 700;font-display: swap;src: url('./fonts/ibm-plex-sans-700.woff2') format('woff2');}:root{--color-primary: #8a44e0;--color-accent: #06b6d4;--color-primary-dark: #6d28d9;--color-accent-dark: #0891b2;--color-text: #1e293b;--color-text-muted: #64748b;--color-text-light: #94a3b8;--color-bg: #ffffff;--color-bg-alt: #f8fafc;--color-bg-card: #ffffff;--color-border: #e2e8f0;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--space-xs: 0.25rem;--space-sm: 0.5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(0,0,0,0.04);--shadow-md: 0 4px 12px rgba(0,0,0,0.06);--shadow-lg: 0 12px 32px rgba(0,0,0,0.08);--gradient-brand: linear-gradient(90deg,#721dfc 0%,#0866ee 52%,#00c4de 100%);--gradient-action: linear-gradient(90deg,#5918c8 0%,#1255bd 52%,#087d90 100%);--gradient-action-hover: linear-gradient(90deg,#4812a4 0%,#0e459b 52%,#066576 100%);}*,*::before,*::after{box-sizing: border-box;margin: 0;padding: 0;}html{scroll-behavior: smooth;overflow-x: hidden;}body{font-family: 'IBM Plex Sans',sans-serif;background: #F8FAFC;color: #1e293b;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;overflow-x: hidden;}h1,h2,h3,h4,h5,h6{font-family: 'Manrope',sans-serif;}a{text-decoration: none;color: inherit;-webkit-tap-highlight-color: transparent;}a.btn-primary{color: #fff;}button{cursor: pointer;border: none;background: none;font-family: inherit;outline: none;-webkit-tap-highlight-color: transparent;}ul{list-style: none;}img{max-width: 100%;display: block;}::-webkit-scrollbar{width: 8px;}::-webkit-scrollbar-track{background: #F8FAFC;}::-webkit-scrollbar-thumb{background: #CBD5E1;border-radius: 4px;}::-webkit-scrollbar-thumb:hover{background: #94A3B8;}.container{max-width: 80rem;margin: 0 auto;padding: 0 1rem;}@media (min-width: 640px){.container{padding: 0 1.5rem;}}@media (min-width: 1024px){.container{padding: 0 2rem;}}.gradient-text{color: #0f172a;}.logo-text.gradient-text{background: var(--gradient-brand);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}.gradient-bg{background: var(--gradient-brand);}.gradient-bg-hover:hover{background: var(--gradient-action-hover);}@keyframes fadeInUp{from{opacity: 0;transform: translateY(20px);}to{opacity: 1;transform: translateY(0);}}@keyframes dash{to{stroke-dashoffset: -12;}}@keyframes floatSlow{0%,100%{transform: translateY(0);}50%{transform: translateY(-12px);}}@keyframes floatSlowAlt{0%,100%{transform: translateY(0);}50%{transform: translateY(-8px);}}@keyframes spin{to{transform: rotate(360deg);}}.animate-fade-in-up{animation: fadeInUp 0.6s ease-out both;}.animate-spin{animation: spin 1s linear infinite;}.site-header{position: fixed;top: 0;left: 0;right: 0;z-index: 50;transition: background 0.3s,border-color 0.3s,box-shadow 0.3s;}@media (min-width: 1100px){.site-header > .container{max-width: none;padding-right: 2.5rem;padding-left: 2.5rem;}}.site-header.scrolled{background: rgba(255,255,255,0.97);border-bottom: 1px solid rgba(226,232,240,0.8);box-shadow: 0 1px 3px rgba(0,0,0,0.05);}.header-inner{position: relative;display: flex;align-items: center;justify-content: space-between;height: 4rem;}@media (min-width: 640px){.header-inner{height: 5rem;}}@media (min-width: 1100px){.header-inner{height: 6.5rem;}}.logo-link{display: flex;align-items: center;gap: 0.625rem;user-select: none;}.logo-icon{width: 34px;height: 34px;background: var(--gradient-brand);border-radius: 50%;display: flex;align-items: center;justify-content: center;box-shadow: 0 1px 3px rgba(0,0,0,0.1);}.logo-icon span{color: #fff;font-weight: 800;font-family: 'Manrope',sans-serif;font-size: 17px;}.logo-text{font-size: 1.25rem;font-weight: 800;font-family: 'Manrope',sans-serif;letter-spacing: 0;}@media (min-width: 1100px){.logo-link{gap: 0.9rem;}.logo-icon{width: 52px;height: 52px;}.logo-icon span{font-size: 1.35rem;}.logo-text{font-size: 1.65rem;letter-spacing: 0;}}.desktop-nav{display: none;align-items: center;gap: 2rem;}@media (min-width: 1100px){.desktop-nav{display: flex;gap: 2.75rem;font-size: 1.05rem;}.desktop-nav > .btn-primary{padding: 0.85rem 2.1rem;font-size: 1rem;}}.nav-link{position: relative;color: #475569;font-weight: 600;transition: color 0.2s;}.nav-link:hover{color: #0f172a;}.nav-link::after{content: '';position: absolute;bottom: -2px;left: 0;width: 0;height: 2px;background: var(--gradient-brand);transition: width 0.3s;}.nav-link:hover::after{width: 100%;}.btn-primary{display: inline-flex;align-items: center;justify-content: center;gap: 0.5rem;background: var(--gradient-action);color: #fff;font-weight: 600;border-radius: 0.75rem;padding: 0.625rem 1.5rem;transition: background 0.3s,box-shadow 0.3s,transform 0.2s;font-family: 'IBM Plex Sans',sans-serif;font-size: 0.875rem;white-space: nowrap;}.btn-primary:hover{background: var(--gradient-action-hover);box-shadow: 0 4px 20px rgba(139,92,246,0.3);}.btn-primary:active{transform: scale(0.98);}.btn-primary.btn-lg{padding: 0.875rem 2rem;font-size: 1rem;border-radius: 0.75rem;}.btn-outline{display: inline-flex;align-items: center;justify-content: center;gap: 0.5rem;background: transparent;color: #334155;font-weight: 600;border: 1px solid #cbd5e1;border-radius: 0.75rem;padding: 0.875rem 2rem;font-size: 1rem;transition: background 0.2s,transform 0.2s;font-family: 'IBM Plex Sans',sans-serif;white-space: nowrap;}.btn-outline:hover{background: #f8fafc;}.btn-outline:active{background: #f1f5f9;transform: scale(0.98);}.mobile-menu-details{margin-left: auto;}.mobile-menu-details > summary::-webkit-details-marker{display: none;}.mobile-menu-details > summary::marker{content: '';}.mobile-menu-btn{display: flex;padding: 0.75rem;margin-right: -0.25rem;border-radius: 0.5rem;color: #334155;transition: background 0.2s;}.mobile-menu-btn:hover{background: #f1f5f9;}.mobile-menu-btn:active{background: #e2e8f0;}@media (min-width: 1100px){.mobile-menu-btn{display: none;}}.mobile-menu-btn svg{width: 24px;height: 24px;}.mobile-menu-icon-close{display: none;}.mobile-menu-details[open] .mobile-menu-icon-open{display: none;}.mobile-menu-details[open] .mobile-menu-icon-close{display: block;}.mobile-nav{position: absolute;top: 100%;right: 0;left: 0;display: none;padding: 1rem 0;border-top: 1px solid rgba(226,232,240,0.5);background: rgba(255,255,255,0.98);border-radius: 0 0 1rem 1rem;box-shadow: 0 10px 25px rgba(0,0,0,0.08);}.mobile-menu-details[open] .mobile-nav{display: block;}@media (min-width: 1100px){.mobile-menu-details,.mobile-nav{display: none !important;}}.mobile-nav a{display: block;padding: 1rem;color: #475569;font-weight: 600;border-radius: 0.5rem;transition: color 0.2s,background 0.2s;}.mobile-nav a:hover{color: #0f172a;background: #f8fafc;}.mobile-nav a:active{background: #f1f5f9;}.mobile-nav-cta{padding: 0.5rem 1rem 0;}.mobile-nav-cta .btn-primary{width: 100%;color: #fff;}.site-footer{background: #0f172a;color: #fff;position: relative;overflow: hidden;}.footer-accent{position: absolute;top: 0;left: 0;right: 0;height: 1px;background: linear-gradient(to right,transparent,rgba(138,68,224,0.3),transparent);}.footer-inner{padding: 3rem 0;}@media (min-width: 640px){.footer-inner{padding: 4rem 0;}}.footer-grid{display: grid;grid-template-columns: 1fr;gap: 2rem;}@media (min-width: 768px){.footer-grid{grid-template-columns: 1fr 1fr;}}@media (min-width: 1024px){.footer-grid{grid-template-columns: 2fr 1fr 1fr;gap: 3rem;}}.footer-brand{display: flex;flex-direction: column;gap: 1rem;}.footer-brand p{color: #94a3b8;max-width: 28rem;line-height: 1.7;}.footer-links h2,.footer-contact h2{font-size: 0.875rem;font-weight: 600;text-transform: uppercase;letter-spacing: 0.05em;color: #cbd5e1;font-family: 'Manrope',sans-serif;margin-bottom: 1rem;}.footer-links ul{display: flex;flex-direction: column;gap: 0.75rem;}.footer-links a{color: #94a3b8;transition: color 0.2s;}.footer-links a:hover{color: #fff;}.footer-contact ul{display: flex;flex-direction: column;gap: 0.75rem;}.footer-contact li{display: flex;align-items: flex-start;gap: 0.5rem;color: #94a3b8;}.footer-contact li svg{width: 1rem;height: 1rem;flex-shrink: 0;margin-top: 0.25rem;}.footer-contact .sub{font-size: 0.75rem;color: #64748b;}.footer-bottom{margin-top: 3rem;padding-top: 2rem;border-top: 1px solid #1e293b;display: flex;flex-direction: column;align-items: center;gap: 1rem;}@media (min-width: 640px){.footer-bottom{flex-direction: row;justify-content: space-between;}}.footer-bottom p{color: #64748b;font-size: 0.875rem;}[data-gradient="purple"]{background: linear-gradient(135deg,#ede9fe,#bfdbfe);}[data-gradient="cyan"]{background: linear-gradient(135deg,#cffafe,#a5f3fc);}[data-gradient="green"]{background: linear-gradient(135deg,#dcfce7,#a7f3d0);}[data-gradient="amber"]{background: linear-gradient(135deg,#fef3c7,#fed7aa);}.honeypot-field{position: absolute;left: -9999px;top: -9999px;opacity: 0;height: 0;width: 0;overflow: hidden;}.markdown-link{color: #334155;text-decoration: underline;}.legal-page{padding: var(--space-3xl) 0;background: var(--color-bg-alt);}.legal-content{max-width: 760px;margin: 0 auto;background: var(--color-bg-card);padding: clamp(var(--space-xl),5vw,var(--space-3xl));border-radius: var(--radius-lg);box-shadow: var(--shadow-md);}.legal-header{margin-bottom: var(--space-2xl);padding-bottom: var(--space-lg);border-bottom: 1px solid var(--color-border);}.legal-title{font-size: clamp(1.75rem,4vw,2.5rem);font-weight: 700;letter-spacing: -0.02em;color: var(--color-text);margin-bottom: var(--space-sm);}.legal-meta{font-size: 0.875rem;color: var(--color-text-muted);}.legal-section{margin-bottom: var(--space-2xl);}.legal-section h2{font-size: 1.25rem;font-weight: 600;color: var(--color-text);margin-bottom: var(--space-md);letter-spacing: -0.01em;}.legal-subhead{font-size: 1rem;font-weight: 600;color: var(--color-text);margin-top: var(--space-lg);margin-bottom: var(--space-sm);letter-spacing: -0.005em;}.legal-section p{color: var(--color-text);line-height: 1.7;margin-bottom: var(--space-md);}.legal-section ul{padding-left: var(--space-lg);margin-bottom: var(--space-md);}.legal-section li{color: var(--color-text);line-height: 1.7;margin-bottom: var(--space-sm);}.legal-section a{color: #334155;text-decoration: underline;text-underline-offset: 2px;}.legal-section a:hover{color: #334155;}.legal-section strong{font-weight: 600;color: var(--color-text);}.back-to-top{position: fixed;bottom: 5rem;right: 1.25rem;z-index: 90;width: 2.75rem;height: 2.75rem;border-radius: 50%;background: var(--gradient-action);color: #fff;display: flex;align-items: center;justify-content: center;box-shadow: 0 4px 15px rgba(138,68,224,0.3);opacity: 0;transform: translateY(1rem);pointer-events: none;transition: opacity 0.3s,transform 0.3s;cursor: pointer;border: none;}.back-to-top.visible{opacity: 1;transform: translateY(0);pointer-events: auto;}.back-to-top:hover{box-shadow: 0 6px 25px rgba(138,68,224,0.45);transform: translateY(-2px);}.back-to-top:active{transform: scale(0.95);}.nav-dropdown{position: relative;display: inline-block;}.nav-link--dropdown{display: inline-flex;align-items: center;gap: 0.35rem;background: transparent;border: none;padding: 0.45rem 0.9rem;font-family: inherit;font-size: inherit;font-weight: inherit;color: inherit;cursor: pointer;border-radius: 8px;transition: color 0.2s ease,background 0.2s ease;}.nav-link--dropdown::-webkit-details-marker,.mobile-nav-dropdown-trigger::-webkit-details-marker{display: none;}.nav-link--dropdown::marker,.mobile-nav-dropdown-trigger::marker{content: '';}.nav-link--dropdown .nav-chevron{transition: transform 0.2s ease;}.nav-dropdown[open] .nav-link--dropdown .nav-chevron{transform: rotate(180deg);}.nav-dropdown-menu{position: absolute;top: calc(100% + 0.55rem);left: 50%;transform: translateX(-50%) translateY(-6px);min-width: 19.5rem;background: #fff;border: 1px solid rgba(148,163,184,0.25);border-radius: 1.25rem;box-shadow: 0 20px 40px -12px rgba(15,23,42,0.15),0 8px 16px -8px rgba(15,23,42,0.08);padding: 1rem;display: flex;flex-direction: column;opacity: 0;visibility: hidden;pointer-events: none;transition: opacity 0.18s ease,transform 0.18s ease,visibility 0.18s ease;z-index: 100;}.nav-dropdown[open] .nav-dropdown-menu{opacity: 1;visibility: visible;pointer-events: auto;transform: translateX(-50%) translateY(0);}.nav-dropdown-menu a{padding: 0.95rem 0.9rem;border-radius: 0.55rem;text-decoration: none;font-size: 1rem;color: #334155;font-weight: 500;transition: background 0.15s ease,color 0.15s ease;white-space: nowrap;}.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus-visible{background: linear-gradient(135deg,rgba(138,68,224,0.08),rgba(48,193,221,0.08));color: #334155;outline: none;}.nav-dropdown-divider{display: block;height: 1px;background: rgba(148,163,184,0.25);margin: 0.4rem 0.85rem;}.mobile-nav-dropdown{display: flex;flex-direction: column;}.mobile-nav-dropdown-trigger{display: flex;align-items: center;justify-content: space-between;width: 100%;background: transparent;border: none;padding: 1rem;font-family: inherit;font-size: 1rem;font-weight: 600;color: #475569;cursor: pointer;text-align: left;border-radius: 0.5rem;transition: color 0.2s ease,background 0.2s ease;}.mobile-nav-dropdown-trigger:hover{color: #0f172a;background: #f8fafc;}.mobile-nav-dropdown-trigger:focus-visible{outline: 2px solid rgba(138,68,224,0.4);outline-offset: -2px;}.mobile-nav-dropdown[open] .mobile-nav-dropdown-trigger{color: #334155;background: transparent;}.mobile-nav-dropdown-trigger .nav-chevron{transition: transform 0.22s ease;}.mobile-nav-dropdown[open] .mobile-nav-dropdown-trigger .nav-chevron{transform: rotate(180deg);}.mobile-nav-dropdown-menu{display: flex;flex-direction: column;max-height: 0;overflow: hidden;transition: max-height 0.25s ease;padding-left: 1rem;margin: 0 0 0 1.2rem;border-left: 2px solid rgba(138,68,224,0.25);}.mobile-nav-dropdown[open] .mobile-nav-dropdown-menu{max-height: 400px;}.mobile-nav .mobile-nav-dropdown-menu a{display: block;padding: 0.7rem 0.9rem;font-size: 0.95rem;font-weight: 500;color: #475569;border-radius: 0.4rem;}.mobile-nav .mobile-nav-dropdown-menu a:hover{background: rgba(138,68,224,0.06);color: #334155;}.mobile-nav-dropdown-divider{display: block;height: 1px;background: rgba(148,163,184,0.22);margin: 0.4rem 0.9rem;}.skip-link{position: absolute;top: -100px;left: 1rem;z-index: 9999;padding: 0.75rem 1.25rem;background: var(--color-primary,#8a44e0);color: #fff;text-decoration: none;font-weight: 600;font-size: 0.9375rem;border-radius: 0.5rem;box-shadow: 0 4px 16px -2px rgba(0,0,0,0.2);transition: top 0.2s ease;}.skip-link:focus,.skip-link:focus-visible{top: 1rem;outline: 2px solid #fff;outline-offset: 2px;}.site-header{background: rgba(247,251,255,0.98);border-bottom: 1px solid rgba(109,40,217,0.09);box-shadow: none;}.site-header.scrolled{background: rgba(255,255,255,0.98);border-bottom-color: rgba(109,40,217,0.12);box-shadow: 0 5px 18px rgba(30,41,59,0.055);}.header-inner{height: 4.25rem;}.site-header .logo-link{gap: 0.65rem;transition: opacity 160ms ease;}.site-header .logo-link:hover{opacity: 0.82;}.site-header .logo-icon{width: 34px;height: 34px;background: var(--gradient-brand);border: 1px solid rgba(255,255,255,0.62);border-radius: 50%;box-shadow: 0 4px 12px rgba(71,85,159,0.16);}.site-header .logo-icon span{font-size: 0.95rem;font-weight: 800;}.site-header .logo-text,.site-header .logo-text.gradient-text{font-size: 1.2rem;font-weight: 800;line-height: 1.2;letter-spacing: 0;background: var(--gradient-brand);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;}.site-header .nav-link{color: #475569;font-size: 0.9rem;font-weight: 600;letter-spacing: 0;}.site-header .nav-link:hover{color: #334155;}.site-header .nav-link::after{bottom: -0.45rem;height: 1px;background: var(--gradient-brand);}.site-header .desktop-nav > .btn-primary,.site-header .mobile-nav-cta .btn-primary{min-height: 2.6rem;padding: 0.62rem 1.2rem;color: #ffffff;font-size: 0.85rem;font-weight: 600;background: var(--gradient-action);border: 1px solid rgba(79,70,229,0.08);border-radius: 7px;box-shadow: 0 4px 14px rgba(71,85,159,0.14);transition: background 160ms ease,box-shadow 160ms ease,transform 160ms ease;}.site-header .desktop-nav > .btn-primary:hover,.site-header .mobile-nav-cta .btn-primary:hover{background: var(--gradient-action-hover);border-color: rgba(79,70,229,0.12);box-shadow: 0 6px 18px rgba(71,85,159,0.2);}.site-header .desktop-nav > .btn-primary:focus-visible,.site-header .mobile-nav-cta .btn-primary:focus-visible{outline: 3px solid rgba(124,58,237,0.22);outline-offset: 3px;}.site-header .mobile-menu-btn{width: 2.5rem;height: 2.5rem;align-items: center;justify-content: center;padding: 0;margin-right: 0;color: #334155;border: 1px solid transparent;border-radius: 6px;}.site-header .mobile-menu-btn:hover{background: rgba(124,58,237,0.055);border-color: rgba(124,58,237,0.12);}.site-header .mobile-nav{padding: 0.7rem 0 1rem;background: rgba(250,252,255,0.985);border-top-color: rgba(109,40,217,0.1);border-radius: 0;box-shadow: 0 12px 24px rgba(15,23,42,0.075);}.site-header .mobile-nav a,.site-header .mobile-nav-dropdown-trigger{padding: 0.78rem 1rem;color: #475569;font-size: 0.9rem;font-weight: 600;border-radius: 6px;}.site-header .mobile-nav-cta{padding: 0.7rem 1rem 0;}@media (min-width: 640px){.header-inner{height: 4.75rem;}}@media (min-width: 1100px){.site-header > .container{max-width: 80rem;padding-right: 2rem;padding-left: 2rem;}.header-inner{height: 5rem;}.site-header .logo-link{gap: 0.75rem;}.site-header .logo-icon{width: 40px;height: 40px;}.site-header .logo-icon span{font-size: 1.05rem;}.site-header .logo-text,.site-header .logo-text.gradient-text{font-size: 1.35rem;}.site-header .desktop-nav{gap: 2.25rem;font-size: 0.9rem;}.site-header .desktop-nav > .btn-primary{padding: 0.62rem 1.3rem;font-size: 0.85rem;}}