.elementor-23 .elementor-element.elementor-element-c6a2433{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-5e63fff{width:100%;max-width:100%;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-5e63fff */:root {
            --jade: #2E8B6E;
            --jade-light: #3AAF8A;
            --gray-dark: #2D2F36;
            --gray-mid: #4A4D58;
            --gray-light: #F4F5F7;
            --orange: #F07C2A;
            --orange-light: #FF9144;
            --white: #FFFFFF;
            --bg-darker: #1A1C22;
            --font-main: 'Vazirmatn', sans-serif;
            --transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            --transition-slow: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }

        *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
        html { scroll-behavior: smooth; }
        body { font-family: var(--font-main); background-color: var(--gray-dark); color: var(--white); line-height: 1.6; overflow-x: hidden; }
        a { text-decoration: none; color: inherit; }
        ul { list-style: none; }
        img { max-width: 100%; display: block; }
        button { font-family: inherit; cursor: pointer; border: none; outline: none; background: transparent; }

        .container { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 24px; position: relative; z-index: 2; }

        .section-title { text-align: center; margin-bottom: 60px; position: relative; }
        .section-title h2 { font-size: 2.5rem; font-weight: 900; margin-bottom: 16px; display: inline-block; position: relative; color: var(--white); }
        .section-title h2::after { content: ''; position: absolute; bottom: -8px; right: 50%; transform: translateX(50%); width: 60%; height: 4px; background-color: var(--orange); border-radius: 2px; }
        .section-title p { color: rgba(255,255,255,0.7); font-size: 1.1rem; }

        .btn { display: inline-flex; align-items: center; justify-content: center; padding: 12px 28px; border-radius: 8px; font-weight: 700; transition: var(--transition); text-align: center; gap: 8px; pointer-events: auto; cursor: pointer; }
        .btn-orange { background-color: var(--orange); color: var(--white); }
        .btn-orange:hover { background-color: var(--orange-light); transform: translateY(-3px); box-shadow: 0 10px 20px rgba(240, 124, 42, 0.3); }
        .btn-outline-jade { border: 2px solid var(--jade); color: var(--jade-light); }
        .btn-outline-jade:hover { background-color: var(--jade); color: var(--white); transform: translateY(-3px); box-shadow: 0 10px 20px rgba(46, 139, 110, 0.2); }
        .btn-outline-white { border: 2px solid var(--white); color: var(--white); }
        .btn-outline-white:hover { background-color: var(--white); color: var(--gray-dark); transform: translateY(-3px); }

        .navbar { position: fixed; top: 0; left: 0; width: 100%; padding: 24px 0; z-index: 1000; transition: var(--transition); }
        .navbar.scrolled { padding: 16px 0; background-color: rgba(45, 47, 54, 0.95); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 4px 30px rgba(0,0,0,0.1); }
        .nav-container { display: flex; justify-content: space-between; align-items: center; }
        .logo { display: flex; align-items: center; gap: 12px; font-size: 1.5rem; font-weight: 900; color: var(--white); }
        .logo-icon { width: 32px; height: 32px; border-radius: 8px; position: relative; background: var(--jade); }
        .logo-icon::after { content: ''; position: absolute; top: 10px; left: 10px; width: 12px; height: 12px; background: var(--white); transform: rotate(-45deg); }
        .nav-links { display: flex; gap: 32px; align-items: center; }
        .nav-links a { font-weight: 500; position: relative; padding: 8px 0; transition: var(--transition); }
        .nav-links a:hover { color: var(--jade-light); }
        .nav-links a::after { content: ''; position: absolute; bottom: 0; right: 0; width: 0; height: 2px; background-color: var(--jade-light); transition: var(--transition); }
        .nav-links a:hover::after { width: 100%; }
        .hamburger { display: none; flex-direction: column; gap: 6px; cursor: pointer; z-index: 1001; }
        .hamburger span { width: 30px; height: 3px; background-color: var(--white); border-radius: 3px; transition: var(--transition); }

        .hero { min-height: 100vh; display: flex; align-items: center; position: relative; overflow: hidden; background-color: var(--gray-dark); padding-top: 80px; }
        
        #hero-canvas { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; }
        .hero-overlay { position: absolute; inset: 0; background: radial-gradient(circle at center, rgba(45, 47, 54, 0.4) 0%, rgba(45, 47, 54, 0.8) 100%); z-index: 2; pointer-events: none; }

        .hero-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px); background-size: 50px 50px; z-index: 0; pointer-events: none; }

        .hero-layout { display: grid; grid-template-columns: 1.2fr 1fr; gap: 40px; align-items: center; position: relative; z-index: 10; width: 100%; pointer-events: none; }
        .hero-layout > * { pointer-events: auto; }
        
        .hero-content { position: relative; z-index: 2; }
        .badge { display: inline-flex; align-items: center; gap: 8px; padding: 8px 20px; background: rgba(255,255,255,0.05); color: var(--white); border: 1px solid rgba(255,255,255,0.1); border-radius: 30px; font-size: 0.9rem; font-weight: 700; margin-bottom: 32px; backdrop-filter: blur(10px); box-shadow: 0 8px 20px rgba(0,0,0,0.15); }
        .badge .pulse-dot { width: 10px; height: 10px; background: var(--orange); border-radius: 50%; box-shadow: 0 0 12px var(--orange); animation: pulseDot 2s infinite; }
        
        .hero h1 { font-size: 4.5rem; font-weight: 900; line-height: 1.3; margin-bottom: 24px; text-shadow: 0 4px 20px rgba(0,0,0,0.5); }
        .gradient-text { background: linear-gradient(135deg, var(--jade-light), var(--orange-light)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; display: inline-block; }
        .hero p { font-size: 1.2rem; color: rgba(255,255,255,0.9); margin-bottom: 48px; max-width: 90%; line-height: 1.8; text-shadow: 0 2px 10px rgba(0,0,0,0.5); }
        .hero-btns { display: flex; gap: 16px; opacity: 1; animation: none; }

        .hero-visuals { position: relative; height: 550px; display: flex; justify-content: center; align-items: center; perspective: 1200px; }
        
        .glass-card { position: absolute; background: linear-gradient(135deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.01) 100%); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255,255,255,0.08); border-radius: 24px; box-shadow: 0 30px 60px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.2); padding: 24px; transform-style: preserve-3d; transition: transform 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94); overflow: visible; }
        .glass-card::before { content: ''; position: absolute; inset: 0; border-radius: 24px; background: linear-gradient(135deg, rgba(255,255,255,0.4) 0%, transparent 40%, transparent 60%, rgba(255,255,255,0.1) 100%); opacity: 0; transition: opacity 0.3s; pointer-events: none; transform: translateZ(1px); }
        .glass-card:hover::before { opacity: 1; }

        .card-code { top: 5%; right: 0; width: 320px; animation: floatCard 6s ease-in-out infinite; z-index: 3; }
        .card-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24px; transform: translateZ(20px); }
        .mac-btns { display: flex; gap: 8px; }
        .dot { width: 12px; height: 12px; border-radius: 50%; }
        .dot.red { background: #ff5f56; box-shadow: 0 0 10px #ff5f56; } .dot.yellow { background: #ffbd2e; box-shadow: 0 0 10px #ffbd2e; } .dot.green { background: #27c93f; box-shadow: 0 0 10px #27c93f; }
        .status-badge { font-size: 0.7rem; font-weight: 700; background: rgba(58, 175, 138, 0.15); color: var(--jade-light); padding: 4px 10px; border-radius: 20px; border: 1px solid rgba(58, 175, 138, 0.3); display: flex; align-items: center; gap: 6px; }
        .status-badge::before { content: ''; width: 6px; height: 6px; background: var(--jade-light); border-radius: 50%; animation: blinkCursor 1s infinite; }
        
        .code-lines { display: flex; flex-direction: column; gap: 14px; position: relative; transform: translateZ(30px); }
        .line { height: 10px; border-radius: 5px; background: rgba(255,255,255,0.05); overflow: hidden; position: relative; width: 0; animation: typingCode 4s infinite alternate ease-in-out; }
        .line::after { content: ''; position: absolute; top: 0; left: -100%; width: 50%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.5), transparent); animation: shimmer 2s infinite; }
        .line.w-70 { background: linear-gradient(90deg, var(--jade), var(--jade-light)); animation-delay: 0s; --tw: 70%; }
        .line.w-40 { margin-right: 20%; animation-delay: 0.4s; --tw: 40%; background: rgba(255,255,255,0.2); }
        .line.w-90 { animation-delay: 0.8s; --tw: 90%; background: linear-gradient(90deg, var(--orange), var(--orange-light)); }
        .line.w-50 { margin-right: 10%; background: rgba(255,255,255,0.15); animation-delay: 1.2s; --tw: 50%; }
        .radar-spinner { position: absolute; bottom: 10px; left: 20px; width: 40px; height: 40px; border-radius: 50%; border: 1px dashed rgba(255,255,255,0.2); animation: rotateSlow 4s linear infinite; transform: translateZ(40px); display: flex; align-items: center; justify-content: center; }
        .radar-spinner::after { content: ''; width: 20px; height: 20px; background: conic-gradient(from 0deg, transparent 0%, var(--jade-light) 100%); border-radius: 50%; filter: blur(4px); }

        .card-stats { bottom: 10%; left: -5%; width: 340px; animation: floatCard 7s ease-in-out infinite 1s reverse; z-index: 2; padding: 28px; }
        .stats-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; transform: translateZ(20px); }
        .stats-icon-wrap { display: flex; align-items: center; gap: 16px; }
        .stats-icon { width: 50px; height: 50px; background: linear-gradient(135deg, rgba(240,124,42,0.2), rgba(240,124,42,0.05)); border: 1px solid rgba(240,124,42,0.3); border-radius: 14px; display: flex; align-items: center; justify-content: center; color: var(--orange-light); box-shadow: 0 10px 20px rgba(240,124,42,0.15); }
        .stats-info { display: flex; flex-direction: column; justify-content: center; padding-top: 6px; }
        .stats-info h4 { font-size: 0.95rem; color: rgba(255,255,255,0.7); margin-bottom: 6px; font-weight: 600; line-height: 1; }
        .stats-info .value { font-size: 1.6rem; font-weight: 900; color: var(--white); display: flex; align-items: center; gap: 8px; line-height: 1; }
        .growth-badge { background: rgba(39, 201, 63, 0.2); color: #27c93f; font-size: 0.8rem; padding: 4px 8px; border-radius: 8px; font-weight: 700; transform: translateZ(40px); animation: bounceSoft 2s infinite; }
        .chart-container { position: relative; height: 80px; width: 100%; transform: translateZ(30px); display: flex; align-items: flex-end; justify-content: space-between; }
        .bar { width: 12%; background: rgba(255,255,255,0.05); border-radius: 6px 6px 0 0; position: relative; overflow: hidden; }
        .bar-fill { position: absolute; bottom: 0; left: 0; width: 100%; background: linear-gradient(to top, rgba(240,124,42,0.1), var(--orange)); border-radius: 6px 6px 0 0; animation: barGrow 2s ease-out forwards; transform-origin: bottom; }
        .bar:nth-child(1) .bar-fill { height: 40%; animation-delay: 0.1s; }
        .bar:nth-child(2) .bar-fill { height: 60%; animation-delay: 0.2s; }
        .bar:nth-child(3) .bar-fill { height: 45%; animation-delay: 0.3s; }
        .bar:nth-child(4) .bar-fill { height: 80%; animation-delay: 0.4s; }
        .bar:nth-child(5) .bar-fill { height: 100%; animation-delay: 0.5s; box-shadow: 0 -5px 15px rgba(240,124,42,0.4); }
        .svg-line { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 2; pointer-events: none; filter: drop-shadow(0 8px 6px rgba(46,139,110,0.5)); }
        .svg-line path { stroke-dasharray: 1000; stroke-dashoffset: 1000; animation: drawLine 3s cubic-bezier(0.4, 0, 0.2, 1) forwards infinite alternate; }

        .card-live { top: 40%; left: -10%; padding: 20px 24px; animation: floatCard 5s ease-in-out infinite 0.5s; z-index: 4; display: flex; align-items: center; gap: 20px; }
        .live-pulse-ring { position: relative; width: 16px; height: 16px; transform: translateZ(20px); }
        .live-dot { width: 16px; height: 16px; background: var(--jade-light); border-radius: 50%; position: absolute; z-index: 2; box-shadow: 0 0 10px var(--jade-light); }
        .live-ring { position: absolute; width: 100%; height: 100%; border: 2px solid var(--jade-light); border-radius: 50%; animation: pulseRing 1.5s cubic-bezier(0.215, 0.61, 0.355, 1) infinite; }
        .live-text { display: flex; flex-direction: column; transform: translateZ(20px); }
        .live-text span:first-child { font-size: 0.8rem; color: rgba(255,255,255,0.6); margin-bottom: 2px; }
        .live-text strong { font-size: 1.2rem; font-weight: 900; color: var(--white); font-family: monospace; }
        .shapes-group { display: flex; transform: translateZ(30px); margin-right: 15px; align-items: center; }
        .shape-mini { width: 32px; height: 32px; border: 2px solid #2D2F36; margin-left: -10px; display: flex; justify-content: center; align-items: center; box-shadow: 0 4px 10px rgba(0,0,0,0.3); backdrop-filter: blur(5px); }
        .shape-mini:nth-child(1) { background: linear-gradient(135deg, #FF9144, #F07C2A); z-index: 3; border-radius: 8px; transform: rotate(-10deg); }
        .shape-mini:nth-child(2) { background: linear-gradient(135deg, #3AAF8A, #2E8B6E); z-index: 2; border-radius: 50%; }
        .shape-mini:nth-child(3) { background: linear-gradient(135deg, #7B61FF, #6042E3); z-index: 1; border-radius: 6px 14px 6px 14px; transform: rotate(10deg); }
        .shape-mini svg { width: 14px; height: 14px; color: #fff; }

        @keyframes floatGlow { 0% { transform: translate(0, 0) scale(1); } 100% { transform: translate(40px, 40px) scale(1.1); } }
        @keyframes floatCard { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-20px); } }
        @keyframes pulseDot { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.4; transform: scale(1.3); } }
        @keyframes shimmer { 100% { left: 200%; } }
        @keyframes typingCode { 0%, 10% { width: 0; opacity: 0; } 50%, 100% { width: var(--tw); opacity: 1; } }
        @keyframes blinkCursor { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
        @keyframes barGrow { 0% { height: 0; } 100% { height: var(--h); } }
        @keyframes drawLine { 0% { stroke-dashoffset: 1000; } 100% { stroke-dashoffset: 0; } }
        @keyframes bounceSoft { 0%, 100% { transform: translateZ(40px) translateY(0); } 50% { transform: translateZ(40px) translateY(-5px); } }
        @keyframes pulseRing { 0% { transform: scale(1); opacity: 1; } 100% { transform: scale(3); opacity: 0; } }
        @keyframes rotateSlow { to { transform: translateZ(40px) rotate(360deg); } }

        .trusted-brands { padding: 60px 0; background-color: var(--bg-darker); overflow: hidden; border-bottom: 1px solid rgba(255,255,255,0.05); border-top: 1px solid rgba(255,255,255,0.05); }
        .trusted-brands h3 { text-align: center; font-size: 1.1rem; color: rgba(255,255,255,0.6); margin-bottom: 8px; font-weight: 500;}
        .brands-divider { width: 40px; height: 3px; background-color: var(--orange); margin: 0 auto 40px; border-radius: 2px;}
        .brands-wrapper { overflow: hidden; width: 100%; display: flex; flex-direction: column; gap: 20px;}
        .brands-track { width: 100%; overflow: hidden; padding: 12px 0; }
        .brands-inner { display: flex; gap: 24px; width: max-content; }
        @keyframes marqueeRTL { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
        @keyframes marqueeLTR { 0% { transform: translateX(-50%); } 100% { transform: translateX(0); } }
        .track-rtl .brands-inner { animation: marqueeRTL 28s linear infinite; }
        .track-ltr .brands-inner { animation: marqueeLTR 22s linear infinite; }
        .brands-wrapper:hover .brands-inner { animation-play-state: paused; }
        .brand-logo { padding: 16px 32px; border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; background: rgba(255,255,255,0.03); display: flex; align-items: center; gap: 12px; white-space: nowrap; transition: var(--transition); filter: grayscale(1) opacity(0.5); cursor: default; }
        .brand-logo:hover { filter: grayscale(0) opacity(1); border-color: rgba(46,139,110,0.4); background: rgba(46,139,110,0.06); transform: translateY(-3px); }
        .brand-name { font-weight: 700; font-size: 1.1rem; color: var(--white); }
        .logo-shape { width: 24px; height: 24px; background: var(--jade); border-radius: 4px; position: relative; }
        .logo-shape::after { content:''; position:absolute; inset: 4px; border-radius: 2px; background: var(--gray-dark); }

        .stats { background-color: var(--jade); padding: 60px 0; position: relative; z-index: 20; }
        .stats-grid { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 32px; }
        .stat-item { flex: 1; min-width: 200px; text-align: center; position: relative; }
        .stat-item:not(:last-child)::after { content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 2px; height: 50px; background-color: rgba(240, 124, 42, 0.5); }
        .stat-number { font-size: 3rem; font-weight: 900; color: var(--white); margin-bottom: 8px; display: flex; justify-content: center; align-items: center; direction: ltr; }
        .stat-label { font-size: 1.1rem; font-weight: 500; color: rgba(255,255,255,0.9); }

        .services-section { padding: 100px 0; background: #0D0E11; position: relative; background-image: linear-gradient(rgba(46,139,110,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(46,139,110,0.04) 1px, transparent 1px); background-size: 48px 48px; }
        .services-header { text-align: center; margin-bottom: 56px; }
        .section-badge { display: inline-block; padding: 6px 20px; background: rgba(46,139,110,0.12); color: #3AAF8A; border: 1px solid rgba(46,139,110,0.25); border-radius: 100px; font-size: 13px; margin-bottom: 16px; font-weight: 700; }
        .services-header h2 { font-size: 38px; font-weight: 900; color: #F4F5F7; margin-bottom: 10px; }
        .services-header p { color: rgba(244,245,247,0.45); font-size: 15px; }

        .services-body { display: grid; grid-template-columns: 280px 1fr; gap: 32px; align-items: stretch; min-height: 560px; }
        .services-tabs { display: flex; flex-direction: column; gap: 8px; }
        .tab-item { display: flex; align-items: center; gap: 14px; padding: 18px 20px; border-radius: 14px; cursor: pointer; border: 1px solid transparent; background: rgba(255,255,255,0.03); transition: all 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94); position: relative; overflow: hidden; }
        .tab-item:hover { background: rgba(46,139,110,0.07); border-color: rgba(46,139,110,0.2); transform: translateX(-4px); }
        .tab-item.active { background: rgba(46,139,110,0.12); border-color: rgba(46,139,110,0.45); transform: translateX(-6px); }
        .tab-item.active::before { content: ''; position: absolute; right: 0; top: 20%; bottom: 20%; width: 3px; background: linear-gradient(to bottom, #2E8B6E, #3AAF8A); border-radius: 2px 0 0 2px; }
        .tab-icon { width: 44px; height: 44px; border-radius: 12px; background: rgba(46,139,110,0.1); display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: background 0.3s, transform 0.3s; color: rgba(255,255,255,0.7); }
        .tab-item.active .tab-icon { background: rgba(46,139,110,0.25); color: #3AAF8A; }
        .tab-text strong { display: block; font-size: 15px; font-weight: 700; color: #F4F5F7; margin-bottom: 3px; transition: color 0.3s; }
        .tab-item.active .tab-text strong { color: var(--orange); }
        .tab-text span { display: block; font-size: 12px; color: rgba(244,245,247,0.4); }

        .services-panel { position: relative; }
        .panel { display: none; flex-direction: column; gap: 24px; background: #161820; border-radius: 24px; border: 1px solid rgba(255,255,255,0.06); padding: 36px; height: 100%; animation: panelFadeIn 0.45s cubic-bezier(0.34, 1.56, 0.64, 1); }
        .panel.active { display: flex; }
        @keyframes panelFadeIn { from { opacity: 0; transform: translateX(-20px) scale(0.98); } to { opacity: 1; transform: translateX(0) scale(1); } }
        .panel-hero { display: flex; gap: 24px; align-items: center; padding-bottom: 24px; border-bottom: 1px solid rgba(255,255,255,0.06); }
        .panel-hero-text h3 { font-size: 22px; font-weight: 800; color: #F4F5F7; margin-bottom: 10px; }
        .panel-hero-text p { color: rgba(244,245,247,0.6); font-size: 14px; line-height: 2; }
        .panel-features { display: flex; flex-wrap: wrap; gap: 10px; }
        .feature-pill { padding: 7px 16px; border-radius: 100px; font-size: 13px; background: rgba(255,255,255,0.04); color: rgba(244,245,247,0.7); border: 1px solid rgba(255,255,255,0.08); transition: all 0.25s ease; cursor: default; }
        .feature-pill:hover { background: rgba(46,139,110,0.12); border-color: rgba(46,139,110,0.35); color: #3AAF8A; transform: translateY(-2px); }
        .panel-stats { display: flex; gap: 0; background: rgba(255,255,255,0.02); border-radius: 16px; border: 1px solid rgba(255,255,255,0.05); overflow: hidden; }
        .mini-stat { flex: 1; padding: 18px 20px; text-align: center; border-left: 1px solid rgba(255,255,255,0.05); transition: background 0.3s; }
        .mini-stat:last-child { border-left: none; }
        .mini-stat:hover { background: rgba(46,139,110,0.06); }
        .mini-stat strong { display: block; font-size: 24px; font-weight: 900; color: #F07C2A; margin-bottom: 4px; }
        .mini-stat span { display: block; font-size: 12px; color: rgba(244,245,247,0.45); }

        .why-us { padding: 100px 0; background-color: var(--gray-dark); overflow: hidden; position: relative; z-index: 1; }
        .why-us-content { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
        .why-text h2 { font-size: 2.5rem; font-weight: 900; margin-bottom: 24px; }
        .why-text p { color: rgba(255,255,255,0.7); margin-bottom: 32px; font-size: 1.1rem; }
        .feature-list { display: flex; flex-direction: column; gap: 16px; margin-bottom: 40px; }
        .feature-item { display: flex; align-items: center; gap: 16px; font-size: 1.1rem; font-weight: 500; }
        .feature-icon { width: 24px; height: 24px; background-color: var(--jade); border-radius: 50%; display: flex; align-items: center; justify-content: center; }
        .feature-icon svg { width: 14px; fill: var(--white); }
        .why-graphic { position: relative; display: flex; justify-content: center; align-items: center; }
        .abstract-svg { width: 100%; max-width: 500px; animation: rotateSlow 20s linear infinite; }

        /* Digital Creation Machine (Sticky Scroll) */
        .machine-pinned { height: 400vh; position: relative; background: #0D0E11; border-top: 1px solid rgba(255,255,255,0.05); }
        .machine-sticky { position: sticky; top: 0; height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; }
        .machine-glow { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 700px; height: 700px; filter: blur(120px); opacity: 0.15; transition: background 0.8s ease; border-radius: 50%; pointer-events: none; z-index: 0; }
        
        .machine-container { display: flex; align-items: center; justify-content: space-between; gap: 60px; z-index: 2; width: 100%; }
        
        .m-text-col { flex: 1; position: relative; height: 400px; display: flex; flex-direction: column; justify-content: center; }
        .m-title { margin-bottom: 50px; }
        .m-title .badge { background: rgba(255,255,255,0.05); color: #fff; margin-bottom: 12px; }
        .m-title h2 { font-size: 2.5rem; font-weight: 900; color: white; line-height: 1.3; }
        
        .m-step { position: absolute; top: 150px; right: 0; opacity: 0; transform: translateY(40px); transition: all 0.6s cubic-bezier(0.34, 1.56, 0.64, 1); visibility: hidden; width: 100%; }
        .m-step.active { opacity: 1; transform: translateY(0); visibility: visible; }
        .m-step-num { font-size: 5rem; font-weight: 900; color: transparent; -webkit-text-stroke: 2px rgba(255,255,255,0.05); line-height: 1; margin-bottom: 16px; font-family: monospace; }
        .m-step h3 { font-size: 1.8rem; font-weight: 800; color: white; margin-bottom: 16px; }
        .m-step p { font-size: 1.1rem; color: rgba(255,255,255,0.6); line-height: 1.8; max-width: 90%; }
        
        .m-visual-col { flex: 1; position: relative; height: 500px; display: flex; align-items: center; justify-content: center; perspective: 1200px; }
        .m-visual { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; opacity: 0; transform: scale(0.8) rotateY(-20deg); transition: all 0.8s cubic-bezier(0.34, 1.56, 0.64, 1); pointer-events: none; }
        .m-visual.active { opacity: 1; transform: scale(1) rotateY(0deg); }

        /* Machine Visuals */
        .orb-wireframe { width: 250px; height: 250px; border-radius: 50%; border: 2px dashed rgba(46, 139, 110, 0.6); animation: spin3D 10s linear infinite; position: relative; transform-style: preserve-3d; box-shadow: inset 0 0 50px rgba(46, 139, 110, 0.2); }
        .orb-wireframe::before, .orb-wireframe::after { content: ''; position: absolute; inset: -2px; border-radius: 50%; border: 2px solid rgba(46, 139, 110, 0.3); }
        .orb-wireframe::before { transform: rotateX(60deg); } .orb-wireframe::after { transform: rotateY(60deg); }
        @keyframes spin3D { to { transform: rotateX(360deg) rotateY(360deg); } }

        .glass-stack { position: relative; width: 300px; height: 300px; transform-style: preserve-3d; transform: rotateX(60deg) rotateZ(-45deg); }
        .g-pane { position: absolute; inset: 0; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 20px; backdrop-filter: blur(10px); box-shadow: -10px 10px 30px rgba(0,0,0,0.5); animation: floatPane 4s ease-in-out infinite alternate; }
        .g-pane.p1 { transform: translateZ(0px); background: rgba(240, 124, 42, 0.1); border-color: rgba(240, 124, 42, 0.3); }
        .g-pane.p2 { transform: translateZ(60px); animation-delay: 0.2s; }
        .g-pane.p3 { transform: translateZ(120px); animation-delay: 0.4s; background: rgba(255,255,255,0.1); }
        @keyframes floatPane { to { transform: translateZ(calc(var(--z) + 30px)); } }

        .cyber-terminal { width: 340px; height: 240px; background: #0a0b0d; border: 1px solid #7B61FF; border-radius: 12px; padding: 24px; box-shadow: 0 0 40px rgba(123, 97, 255, 0.2), inset 0 0 20px rgba(123, 97, 255, 0.1); display: flex; flex-direction: column; gap: 16px; position: relative; overflow: hidden; }
        .cyber-terminal::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 2px; background: linear-gradient(90deg, transparent, #7B61FF, transparent); animation: scanline 2s linear infinite; }
        .t-line { height: 8px; background: rgba(123, 97, 255, 0.3); border-radius: 4px; position: relative; overflow: hidden; }
        .t-line::after { content:''; position: absolute; top:0; left:0; height:100%; background: #7B61FF; animation: matrixType 2s steps(10) infinite alternate; }
        .t-line:nth-child(1)::after { animation-duration: 1.5s; width: 80%; } .t-line:nth-child(2)::after { animation-duration: 2.2s; width: 40%; } .t-line:nth-child(3)::after { animation-duration: 1.8s; width: 90%; } .t-line:nth-child(4)::after { animation-duration: 2.5s; width: 60%; }
        @keyframes scanline { 0% { top: 0; } 100% { top: 100%; } }
        @keyframes matrixType { 0% { width: 0; } }

        .core-explosion { width: 300px; height: 300px; position: relative; display: flex; align-items: center; justify-content: center; }
        .core-star { width: 60px; height: 60px; background: #ff3333; border-radius: 50%; box-shadow: 0 0 60px #ff3333, 0 0 100px #ff3333; animation: starPulse 1s ease-in-out infinite alternate; z-index: 2; }
        .core-ring { position: absolute; border-radius: 50%; border: 2px solid #ff3333; opacity: 0; animation: ringExplode 3s cubic-bezier(0.215, 0.61, 0.355, 1) infinite; }
        .core-ring.r1 { animation-delay: 0s; } .core-ring.r2 { animation-delay: 1s; } .core-ring.r3 { animation-delay: 2s; }
        @keyframes starPulse { to { transform: scale(1.3); } }
        @keyframes ringExplode { 0% { width: 60px; height: 60px; opacity: 1; border-width: 4px; } 100% { width: 400px; height: 400px; opacity: 0; border-width: 1px; } }

        .port-pinned-section { height: 400vh; position: relative; background-color: var(--bg-darker); }
        .port-sticky-wrapper { position: sticky; top: 0; height: 100vh; width: 100%; display: flex; align-items: center; justify-content: center; overflow: hidden; }
        
        .port-dynamic-bg { position: absolute; inset: 0; z-index: 0; transition: background 0.8s ease; }
        .port-dynamic-bg::before { content: ''; position: absolute; top: 20%; right: 20%; width: 50vw; height: 50vw; border-radius: 50%; filter: blur(120px); opacity: 0.15; transition: background 0.8s ease; transform: translate(50%, -50%); pointer-events: none; }
        
        /* FIX: Adjusted Desktop Positioning for title and container */
        .port-header-sticky { position: absolute; top: 6vh; left: 0; width: 100%; text-align: center; z-index: 10; pointer-events: none; }
        .port-header-sticky h2 { font-size: 2.5rem; font-weight: 900; color: white; margin-bottom: 8px; }
        .port-header-sticky p { font-size: 1.1rem; color: rgba(255,255,255,0.7); }

        .port-cards-container { position: relative; width: 90%; max-width: 1200px; height: 65vh; margin-top: 8vh; z-index: 2; }
        
        .port-card { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255,255,255,0.03); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,0.08); border-radius: 30px; display: flex; overflow: hidden; opacity: 0; visibility: hidden; transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94); transform: translateY(100px) scale(0.95); box-shadow: 0 30px 60px rgba(0,0,0,0.5); }
        .port-card.active { opacity: 1; visibility: visible; transform: translateY(0) scale(1); z-index: 10; }
        .port-card.prev { opacity: 0; visibility: hidden; transform: translateY(-100px) scale(0.95); z-index: 5; }

        .port-img-col { width: 55%; position: relative; overflow: hidden; }
        .port-img-col img { width: 100%; height: 100%; object-fit: cover; transition: transform 6s linear; }
        .port-card.active .port-img-col img { transform: scale(1.1); }
        .port-img-col::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to left, rgba(20,22,28,1), transparent); }

        .port-info-col { width: 45%; padding: 60px 50px; display: flex; flex-direction: column; justify-content: center; }
        .port-tag { display: inline-flex; padding: 6px 16px; border-radius: 20px; font-size: 0.85rem; font-weight: 700; margin-bottom: 24px; align-self: flex-start; transition: all 0.5s ease; }
        .port-info-col h3 { font-size: 2.4rem; font-weight: 900; margin-bottom: 20px; line-height: 1.2; }
        .port-info-col p { color: rgba(255,255,255,0.7); font-size: 1.1rem; margin-bottom: 32px; line-height: 1.8; }
        
        .port-metrics { display: flex; gap: 32px; margin-bottom: 40px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,0.1); }
        .port-metric-item { display: flex; flex-direction: column; }
        .port-metric-item strong { font-size: 1.8rem; font-weight: 900; line-height: 1; margin-bottom: 8px; }
        .port-metric-item span { font-size: 0.85rem; color: rgba(255,255,255,0.5); }
        
        .btn-port { display: inline-flex; align-items: center; gap: 12px; padding: 16px 32px; border-radius: 12px; font-weight: 700; font-size: 1.05rem; transition: all 0.3s; align-self: flex-start; color: white; }
        .btn-port svg { width: 20px; transition: transform 0.3s; }
        .btn-port:hover svg { transform: translateX(-5px); }

        /* Dynamic Portfolio Themes */
        .port-card[data-index="0"] .port-tag { background: rgba(46, 139, 110, 0.15); color: var(--jade-light); border: 1px solid rgba(46, 139, 110, 0.3); }
        .port-card[data-index="0"] .port-metric-item strong { color: var(--jade-light); }
        .port-card[data-index="0"] .btn-port { background: var(--jade); box-shadow: 0 10px 20px rgba(46, 139, 110, 0.2); }
        .port-card[data-index="0"].active ~ .port-dynamic-bg::before { background: var(--jade); }

        .port-card[data-index="1"] .port-tag { background: rgba(240, 124, 42, 0.15); color: var(--orange-light); border: 1px solid rgba(240, 124, 42, 0.3); }
        .port-card[data-index="1"] .port-metric-item strong { color: var(--orange-light); }
        .port-card[data-index="1"] .btn-port { background: var(--orange); box-shadow: 0 10px 20px rgba(240, 124, 42, 0.2); }
        .port-card[data-index="1"].active ~ .port-dynamic-bg::before { background: var(--orange); }

        .port-card[data-index="2"] .port-tag { background: rgba(123, 97, 255, 0.15); color: #9D88FF; border: 1px solid rgba(123, 97, 255, 0.3); }
        .port-card[data-index="2"] .port-metric-item strong { color: #9D88FF; }
        .port-card[data-index="2"] .btn-port { background: #7B61FF; box-shadow: 0 10px 20px rgba(123, 97, 255, 0.2); }
        .port-card[data-index="2"].active ~ .port-dynamic-bg::before { background: #7B61FF; }

        .port-card[data-index="3"] .port-tag { background: rgba(45, 156, 219, 0.15); color: #5CC2F2; border: 1px solid rgba(45, 156, 219, 0.3); }
        .port-card[data-index="3"] .port-metric-item strong { color: #5CC2F2; }
        .port-card[data-index="3"] .btn-port { background: #2D9CDB; box-shadow: 0 10px 20px rgba(45, 156, 219, 0.2); }
        .port-card[data-index="3"].active ~ .port-dynamic-bg::before { background: #2D9CDB; }

        .port-progress-track { position: absolute; right: 40px; top: 50%; transform: translateY(-50%); width: 4px; height: 200px; background: rgba(255,255,255,0.1); border-radius: 4px; z-index: 10; display: flex; flex-direction: column; justify-content: space-between; }
        .port-progress-bar { position: absolute; top: 0; left: 0; width: 100%; height: 25%; background: var(--white); border-radius: 4px; transition: top 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); box-shadow: 0 0 10px rgba(255,255,255,0.5); }

        .testimonials-slider { padding: 120px 0; background: #0E0F14; position: relative; overflow: hidden; }
        .ambient-relax-glow { position: absolute; top: 20%; right: 10%; width: 60vw; height: 60vw; background: radial-gradient(circle, rgba(96, 66, 227, 0.06) 0%, transparent 70%); pointer-events: none; z-index: 0; }
        .ambient-relax-glow-2 { position: absolute; bottom: -10%; left: -10%; width: 50vw; height: 50vw; background: radial-gradient(circle, rgba(46, 139, 110, 0.05) 0%, transparent 70%); pointer-events: none; z-index: 0; }
        .t-header { text-align: center; margin-bottom: 50px; position: relative; z-index: 2; }
        .t-header h2 { font-size: 2.5rem; font-weight: 900; color: #E0E2E8; }
        .t-header p { color: rgba(224, 226, 232, 0.5); font-size: 1.1rem; margin-top: 8px; }
        .t-slider-wrapper { display: flex; align-items: center; gap: 24px; position: relative; z-index: 2; }
        .t-nav-btn { width: 56px; height: 56px; border-radius: 50%; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.08); color: rgba(255,255,255,0.7); display: flex; justify-content: center; align-items: center; cursor: pointer; transition: all 0.3s; flex-shrink: 0; backdrop-filter: blur(5px); }
        .t-nav-btn:hover { background: rgba(96, 66, 227, 0.15); border-color: rgba(96, 66, 227, 0.4); color: #fff; transform: scale(1.05); }
        .t-track-container { flex-grow: 1; overflow: hidden; position: relative; mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent); -webkit-mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent); }
        .t-track { display: flex; gap: 24px; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x mandatory; padding: 20px 0; scrollbar-width: none; }
        .t-track::-webkit-scrollbar { display: none; }
        .t-card-modern { flex: 0 0 calc(33.333% - 16px); min-width: 340px; scroll-snap-align: center; background: linear-gradient(145deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01)); border: 1px solid rgba(255,255,255,0.04); border-radius: 24px; padding: 40px 32px; display: flex; flex-direction: column; justify-content: space-between; position: relative; transition: all 0.4s ease; cursor: grab; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
        .t-card-modern:active { cursor: grabbing; }
        .t-card-modern:hover { transform: translateY(-8px); border-color: rgba(96, 66, 227, 0.3); box-shadow: 0 20px 40px rgba(0,0,0,0.3), 0 0 30px rgba(96, 66, 227, 0.1); background: linear-gradient(145deg, rgba(255,255,255,0.05), rgba(96, 66, 227, 0.05)); }
        .quote-icon { position: absolute; top: 24px; right: 24px; font-size: 60px; font-family: serif; color: rgba(255,255,255,0.04); line-height: 1; pointer-events: none; }
        .t-stars { display: flex; gap: 4px; color: #ffbd2e; font-size: 14px; margin-bottom: 24px; }
        .t-text { font-size: 1.05rem; color: rgba(224, 226, 232, 0.8); line-height: 1.9; margin-bottom: 32px; font-style: italic; z-index: 2; position: relative; }
        .t-client { display: flex; align-items: center; gap: 16px; border-top: 1px solid rgba(255,255,255,0.06); padding-top: 24px; z-index: 2; position: relative; }
        .t-avatar-img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; border: 2px solid rgba(255,255,255,0.1); transition: border-color 0.3s; }
        .t-card-modern:hover .t-avatar-img { border-color: #9D88FF; }
        .t-info h4 { font-size: 1.1rem; color: #E0E2E8; font-weight: 700; margin-bottom: 4px; line-height: 1; }
        .t-info span { font-size: 0.85rem; color: rgba(224, 226, 232, 0.4); font-weight: 500; }

        .faq-light-section { padding: 120px 0; background-color: var(--gray-dark); position: relative; }
        .faq-island { background: #F4F5F7; border-radius: 40px; padding: 80px 60px; box-shadow: 0 40px 80px rgba(0,0,0,0.4); display: flex; gap: 60px; align-items: flex-start; position: relative; overflow: hidden; }
        .faq-island::before { content: ''; position: absolute; top: -50%; left: -20%; width: 500px; height: 500px; background: radial-gradient(circle, rgba(58, 175, 138, 0.15) 0%, transparent 70%); pointer-events: none; }
        .faq-sidebar { width: 40%; position: sticky; top: 120px; z-index: 2; }
        .faq-sidebar h2 { font-size: 3rem; font-weight: 900; margin-bottom: 24px; line-height: 1.3; color: #121318; }
        .faq-sidebar p { color: #4A4D58; margin-bottom: 40px; font-size: 1.1rem; line-height: 1.8; }
        .support-widget { background: #ffffff; padding: 24px; border-radius: 20px; box-shadow: 0 20px 40px rgba(0,0,0,0.05); border: 1px solid rgba(0,0,0,0.03); display: flex; align-items: center; gap: 16px; width: fit-content; animation: floatCard 6s infinite; }
        .sw-avatar { width: 50px; height: 50px; border-radius: 50%; background: #eee; position: relative; }
        .sw-avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
        .sw-dot { position: absolute; bottom: 0; right: 0; width: 14px; height: 14px; background: #27c93f; border: 3px solid #fff; border-radius: 50%; }
        .sw-info h5 { font-size: 1rem; color: #121318; font-weight: 700; margin-bottom: 4px; }
        .sw-info span { font-size: 0.85rem; color: #777; }
        .faq-content { width: 60%; display: flex; flex-direction: column; gap: 16px; z-index: 2; }
        .faq-item-light { background: #ffffff; border: 1px solid rgba(0,0,0,0.05); border-radius: 20px; overflow: hidden; transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); box-shadow: 0 10px 30px rgba(0,0,0,0.02); }
        .faq-item-light:hover { border-color: rgba(46,139,110,0.3); transform: translateX(-5px); }
        .faq-item-light.active { background: #F2FBF7; border-color: var(--jade); box-shadow: 0 20px 40px rgba(46,139,110,0.1); transform: translateX(-10px); }
        .faq-question-light { padding: 24px 32px; display: flex; justify-content: space-between; align-items: center; cursor: pointer; font-weight: 700; color: #121318; transition: color 0.3s; font-size: 1.15rem; }
        .faq-item-light.active .faq-question-light { color: var(--jade); }
        .faq-icon-light { width: 36px; height: 36px; border: 2px solid #eaeaea; border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); flex-shrink: 0; background: #fafafa; color: #121318; }
        .faq-item-light.active .faq-icon-light { transform: rotate(135deg); background: var(--jade); border-color: var(--jade); color: var(--white); box-shadow: 0 0 15px rgba(46,139,110,0.4); }
        .faq-answer-light { max-height: 0; overflow: hidden; transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), padding 0.3s ease, opacity 0.3s ease; color: #4A4D58; line-height: 1.9; padding: 0 32px; opacity: 0; }
        .faq-item-light.active .faq-answer-light { max-height: 400px; padding-bottom: 32px; opacity: 1; }

        .cta-vibrant-section { padding: 140px 0; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; border-top: 1px solid rgba(255,255,255,0.05); background: linear-gradient(-45deg, #F07C2A, #e73c7e, #23a6d5, #3AAF8A); background-size: 400% 400%; animation: vibrantFluid 15s ease infinite; }
        @keyframes vibrantFluid { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
        .cta-bg-marquee { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-5deg); width: 120vw; pointer-events: none; z-index: 0; opacity: 0.1; }
        .marquee-track { display: flex; white-space: nowrap; animation: marqueeScroll 30s linear infinite; }
        .marquee-track span { font-size: 12vw; font-weight: 900; font-family: 'Arial', sans-serif; color: transparent; -webkit-text-stroke: 2px #ffffff; text-transform: uppercase; padding: 0 2vw; }
        @keyframes marqueeScroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
        .cta-glow-orb { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 600px; height: 600px; background: radial-gradient(circle, rgba(255,255,255,0.4) 0%, transparent 70%); filter: blur(60px); z-index: 1; animation: pulseOrb 4s ease-in-out infinite alternate; pointer-events: none; }
        @keyframes pulseOrb { 0% { transform: translate(-50%, -50%) scale(0.8); opacity: 0.5; } 100% { transform: translate(-50%, -50%) scale(1.2); opacity: 1; } }
        .cta-widget { position: absolute; background: rgba(255, 255, 255, 0.15); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.4); border-radius: 20px; padding: 16px 24px; color: white; font-weight: 700; display: flex; align-items: center; gap: 12px; z-index: 5; box-shadow: 0 20px 40px rgba(0,0,0,0.1); }
        .cw-1 { top: 15%; left: 10%; animation: floatCard 6s infinite 0.5s; font-size: 1.1rem; }
        .cw-2 { bottom: 15%; right: 10%; animation: floatCard 7s infinite reverse; font-size: 1.1rem; }
        .cw-icon { font-size: 1.8rem; }
        .cta-content { position: relative; z-index: 10; text-align: center; }
        .cta-title { font-size: 3.5rem; font-weight: 900; margin-bottom: 24px; color: #ffffff; text-shadow: 0 10px 30px rgba(0,0,0,0.3); line-height: 1.3; }
        .cta-desc { font-size: 1.25rem; color: rgba(255,255,255,0.9); margin-bottom: 48px; max-width: 600px; margin-left: auto; margin-right: auto; line-height: 1.8; text-shadow: 0 2px 10px rgba(0,0,0,0.2); }
        .cta-actions { display: flex; gap: 24px; justify-content: center; align-items: center; }
        .btn-neon { position: relative; display: inline-flex; justify-content: center; align-items: center; padding: 18px 48px; font-size: 1.15rem; font-weight: 800; color: #121318; background: #ffffff; border-radius: 12px; overflow: hidden; transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); z-index: 1; box-shadow: 0 15px 30px rgba(0,0,0,0.2); }
        .btn-neon::before { content: ''; position: absolute; inset: -4px; background: linear-gradient(90deg, #F07C2A, #FF4B2B, #7B61FF, #F07C2A); background-size: 300% auto; animation: shineGradient 3s linear infinite; z-index: -1; opacity: 0; transition: opacity 0.3s; }
        .btn-neon:hover { color: white; transform: translateY(-5px) scale(1.05); box-shadow: 0 20px 40px rgba(0,0,0,0.3); }
        .btn-neon:hover::before { opacity: 1; }
        .btn-neon span { position: relative; z-index: 2; transition: color 0.3s; }
        @keyframes shineGradient { to { background-position: 300% center; } }
        .btn-glass { display: inline-flex; padding: 16px 40px; font-size: 1.1rem; font-weight: 700; color: #ffffff; border: 2px solid rgba(255,255,255,0.6); border-radius: 12px; backdrop-filter: blur(10px); transition: all 0.4s; background: rgba(255,255,255,0.1); }
        .btn-glass:hover { background: #ffffff; color: #121318; transform: translateY(-3px); }

        .footer { background-color: var(--bg-darker); padding: 80px 0 24px; border-top: 4px solid var(--orange); position: relative; z-index: 2; }
        .footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1.5fr; gap: 40px; margin-bottom: 60px; }
        .footer-about p { color: rgba(255,255,255,0.6); margin: 24px 0; font-size: 0.95rem; }
        .footer h4 { font-size: 1.2rem; font-weight: 700; margin-bottom: 24px; color: var(--white); }
        .footer-links li { margin-bottom: 12px; }
        .footer-links a { color: rgba(255,255,255,0.6); transition: var(--transition); }
        .footer-links a:hover { color: var(--orange); padding-right: 8px; }
        .footer-bottom { text-align: center; padding-top: 24px; border-top: 1px solid rgba(255,255,255,0.1); color: rgba(255,255,255,0.5); font-size: 0.9rem; }

        .reveal-up { opacity: 0; transform: translateY(40px); transition: opacity 0.8s ease, transform 0.8s ease; }
        .reveal-up.active { opacity: 1; transform: translateY(0); }

        @media (max-width: 1024px) {
            .hero-layout { grid-template-columns: 1fr; text-align: center; gap: 60px; }
            .hero-content { display: flex; flex-direction: column; align-items: center; }
            .hero p { max-width: 100%; }
            .hero-visuals { height: 400px; transform: scale(0.9); }
            
            .services-body { grid-template-columns: 1fr; }
            .services-tabs { flex-direction: row; overflow-x: auto; padding-bottom: 8px; gap: 8px; }
            .tab-item { flex-direction: column; align-items: center; text-align: center; min-width: 140px; padding: 14px 12px; }
            
            .machine-container { flex-direction: column-reverse; text-align: center; gap: 40px; }
            .m-text-col, .m-visual-col { height: 350px; }
            .m-step { transform: translateY(30px) translateX(0); right: auto; left: 0; }
            
            .port-cards-container { width: 95%; height: 60vh; margin-top: 12vh; }
            .port-card { flex-direction: column; border-radius: 20px; }
            .port-img-col { width: 100%; height: 50%; }
            .port-info-col { width: 100%; height: 50%; padding: 30px; justify-content: flex-start; }
            
            .faq-island { flex-direction: column; padding: 60px 40px; }
            .faq-sidebar, .faq-content { width: 100%; position: static; }
            .faq-sidebar { margin-bottom: 40px; }

            .t-card-modern { flex: 0 0 calc(50% - 12px); }
            .footer-grid { grid-template-columns: 1fr 1fr; }
        }

        @media (max-width: 768px) {
            .nav-links { position: fixed; top: 0; right: -100%; width: 250px; height: 100vh; background-color: var(--gray-dark); flex-direction: column; padding-top: 100px; transition: var(--transition); box-shadow: -10px 0 30px rgba(0,0,0,0.5); z-index: 999; }
            .nav-links.open { right: 0; }
            .hamburger { display: flex; }
            
            .hero { padding: 120px 20px 60px; flex-direction: column; text-align: center; }
            .hero h1 { font-size: clamp(30px, 8vw, 40px) !important; margin-bottom: 16px; }
            .hero p { margin-bottom: 30px; font-size: 1.05rem; }
            .hero-btns { flex-direction: column; width: 100%; max-width: 320px; margin: 0 auto; }
            .hero-btns a { width: 100%; }
            
            .hero-visuals { height: 480px; margin-top: 20px; width: 100%; display: block; perspective: none; }
            .glass-card { right: 0; left: 0; margin: 0 auto; position: absolute; transform-style: flat; }
            .card-code { top: 0; width: 90%; max-width: 320px; z-index: 1; transform: translateZ(0) !important; }
            .card-live { top: 130px; width: 90%; max-width: 320px; z-index: 3; transform: translateZ(0) !important; }
            .card-stats { top: 250px; width: 95%; max-width: 340px; z-index: 2; transform: translateZ(0) !important; }
            
            .why-us-content { grid-template-columns: 1fr; text-align: center; }
            .feature-item { justify-content: flex-start; }
            .stats-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 16px !important; }
            .stat-item:not(:last-child)::after { display: none; }
            
            .machine-sticky { padding-top: 10vh; align-items: flex-start; }
            .m-visual-col { height: 280px; }
            .m-text-col { height: auto; }
            .m-step { top: 0; position: relative; display: none; }
            .m-step.active { display: block; }
            
            /* PORTFOLIO MOBILE FIX */
            .port-header-sticky { top: 8vh; position: relative; margin-bottom: 4vh; }
            .port-header-sticky h2 { font-size: 1.8rem; }
            .port-sticky-wrapper { flex-direction: column; justify-content: flex-start; padding-top: 10vh; }
            .port-cards-container { height: 60vh; margin-top: 0; width: 95%; }
            .port-card { transform: translateY(50px) scale(0.95); flex-direction: column; border-radius: 20px; }
            .port-card.prev { transform: translateY(-50px) scale(0.95); }
            .port-info-col { padding: 20px; }
            .port-info-col h3 { font-size: 1.5rem; margin-bottom: 12px; }
            .port-info-col p { font-size: 0.95rem; margin-bottom: 16px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
            .port-metrics { gap: 16px; margin-bottom: 16px; padding-bottom: 16px; }
            .port-metric-item strong { font-size: 1.4rem; }
            .port-progress-track { display: none; }
            
            .t-slider-wrapper { margin-top: 32px; }
            .t-nav-btn { display: none; }
            .t-track-container { mask-image: none; -webkit-mask-image: none; }
            .t-card-modern { flex: 0 0 85%; min-width: 280px; scroll-snap-align: start; }
            
            .faq-island { padding: 40px 24px; border-radius: 24px; text-align: center; }
            .support-widget { margin: 0 auto; }
            .faq-question-light { font-size: 1rem; padding: 20px; text-align: right; }
            
            .cta-title { font-size: 2.2rem; }
            .cta-actions { flex-direction: column; }
            .cta-actions a { width: 100%; }
            .cta-widget { display: none; }
        }

        @media (max-width: 480px) {
            .hero h1 { font-size: 2.2rem !important; }
            .stats-grid { grid-template-columns: 1fr !important; }
            .footer-grid { grid-template-columns: 1fr !important; }
            
            .hero-visuals { height: 420px; transform: scale(0.85); transform-origin: top center; }
            .card-live { top: 110px; }
            .card-stats { top: 220px; }
            
            .port-cards-container { height: 55vh; }
            .port-header-sticky h2 { font-size: 1.6rem; }
        }
    
        /* ==================== PANEL VISUAL ANIMATIONS ==================== */
        .panel-hero-visual { width: 180px; height: 130px; border-radius: 16px; flex-shrink: 0; position: relative; overflow: hidden; background: #0D0E11; display: flex; align-items: center; justify-content: center; }
        .panel-hero-text h3 { font-size: 22px; font-weight: 800; color: #F4F5F7; margin-bottom: 10px; }
        .panel-hero-text p { color: rgba(244,245,247,0.6); font-size: 14px; line-height: 2; }

        .panel-features { display: flex; flex-wrap: wrap; gap: 10px; }
        .feature-pill { padding: 7px 16px; border-radius: 100px; font-size: 13px; background: rgba(255,255,255,0.04); color: rgba(244,245,247,0.7); border: 1px solid rgba(255,255,255,0.08); transition: all 0.25s ease; cursor: default; }
        .feature-pill:hover { background: rgba(46,139,110,0.12); border-color: rgba(46,139,110,0.35); color: #3AAF8A; transform: translateY(-2px); }

        .panel-stats { display: flex; gap: 0; background: rgba(255,255,255,0.02); border-radius: 16px; border: 1px solid rgba(255,255,255,0.05); overflow: hidden; }
        .mini-stat { flex: 1; padding: 18px 20px; text-align: center; border-left: 1px solid rgba(255,255,255,0.05); transition: background 0.3s; }
        .mini-stat:last-child { border-left: none; }
        .mini-stat:hover { background: rgba(46,139,110,0.06); }
        .mini-stat strong { display: block; font-size: 24px; font-weight: 900; color: #F07C2A; margin-bottom: 4px; }
        .mini-stat span { display: block; font-size: 12px; color: rgba(244,245,247,0.45); }

        .panel-cta { display: inline-flex; align-items: center; gap: 8px; color: #3AAF8A; font-size: 14px; font-weight: 600; text-decoration: none; padding: 12px 0; border-top: 1px solid rgba(255,255,255,0.05); margin-top: auto; transition: all 0.3s; }
        .panel-cta:hover { color: #F07C2A; gap: 14px; }

        /* Custom Panel Visual Animations */
        #panel-web .panel-hero-visual { border: 1px solid rgba(46,139,110,0.2); flex-direction: column; padding: 16px; gap: 8px; justify-content: flex-start; }
        #panel-web .panel-hero-visual::before { content: ''; display: block; height: 8px; border-radius: 4px; background: rgba(46,139,110,0.6); animation: wireframeLine 2s ease-in-out infinite alternate; }
        #panel-web .panel-hero-visual::after { content: ''; display: block; height: 8px; border-radius: 4px; background: rgba(46,139,110,0.3); width: 60%; animation: wireframeLine 2s ease-in-out infinite alternate-reverse; }
        .wire-box { height: 40px; border-radius: 4px; background: rgba(240,124,42,0.2); width: 100%; margin-top: auto; animation: pulse 3s infinite;}
        @keyframes wireframeLine { 0% { width: 30%; opacity: 0.3; } 100% { width: 85%; opacity: 0.9; } }

        #panel-seo .panel-hero-visual { border: 1px solid rgba(240,124,42,0.15); align-items: flex-end; padding: 20px; gap: 6px; }
        .seo-bar { width: 18px; border-radius: 4px 4px 0 0; background: linear-gradient(to top, #2E8B6E, #F07C2A); animation: barGrow 1.5s cubic-bezier(0.34,1.56,0.64,1) forwards; transform-origin: bottom; }
        .seo-bar:nth-child(1) { height: 30%; animation-delay: 0.1s; } .seo-bar:nth-child(2) { height: 50%; animation-delay: 0.2s; }
        .seo-bar:nth-child(3) { height: 40%; animation-delay: 0.3s; } .seo-bar:nth-child(4) { height: 70%; animation-delay: 0.4s; }
        .seo-bar:nth-child(5) { height: 90%; animation-delay: 0.5s; background: linear-gradient(to top, #F07C2A, #FF9144); }
        @keyframes barGrow { from { transform: scaleY(0); } to { transform: scaleY(1); } }

        #panel-photo .panel-hero-visual { border: 1px solid rgba(46,139,110,0.15); }
        .aperture-ring { width: 60px; height: 60px; border-radius: 50%; border: 4px solid rgba(46,139,110,0.6); display: flex; align-items: center; justify-content: center; animation: aperturePulse 3s ease-in-out infinite; }
        .aperture-ring::before { content: ''; width: 20px; height: 20px; border-radius: 50%; background: var(--orange); transition: all 0.5s;}
        @keyframes aperturePulse { 0%, 100% { transform: scale(1); border-color: rgba(46,139,110,0.6); } 50% { transform: scale(1.2); border-color: rgba(240,124,42,0.8); } }

        #panel-print .panel-hero-visual { border: 1px solid rgba(240,124,42,0.15); }
        .cmyk-dot { width: 30px; height: 30px; border-radius: 50%; position: absolute; mix-blend-mode: screen; opacity: 0.8; animation: cmykOrbit 4s linear infinite; }
        .cmyk-dot:nth-child(1) { background: #2E8B6E; animation-delay: 0s; }
        .cmyk-dot:nth-child(2) { background: #F07C2A; animation-delay: -1.3s; }
        .cmyk-dot:nth-child(3) { background: #7B61FF; animation-delay: -2.6s; }
        @keyframes cmykOrbit { 0% { transform: rotate(0deg) translateX(20px) rotate(0deg); } 100% { transform: rotate(360deg) translateX(20px) rotate(-360deg); } }

        /* ==================== VIDEO SHOWCASE ==================== */
        .video-showcase { padding: 100px 0; background-color: var(--bg-darker); display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 85vh; position: relative; overflow: hidden; }
        .video-window-container { position: sticky; top: 10vh; width: 100%; display: flex; justify-content: center; align-items: center; height: 80vh; perspective: 1000px; }
        .video-window { width: 300px; height: 120px; max-width: 100%; border: 1px solid var(--orange); border-radius: 24px; position: relative; overflow: hidden; transition: width 0.1s ease-out, height 0.1s ease-out; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 40px rgba(240, 124, 42, 0.15); }
        .video-bg { position: absolute; inset: -20px; background: linear-gradient(45deg, #1A1C22, #2E8B6E, #F07C2A); background-size: 400% 400%; animation: gradientBG 15s ease infinite; z-index: 1; filter: blur(10px); }
        .video-overlay { position: absolute; inset: 0; background: rgba(26, 28, 34, 0.85); z-index: 2; transition: opacity 0.5s ease; }
        .video-content { position: relative; z-index: 3; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; width: 100%; height: 100%; }
        .video-title { font-size: 1.5rem; font-weight: 700; letter-spacing: 2px; transition: var(--transition); color: var(--white); }
        .play-btn { width: 80px; height: 80px; border-radius: 50%; background-color: var(--orange); display: flex; align-items: center; justify-content: center; cursor: pointer; transition: var(--transition); opacity: 0; transform: scale(0.5); color: var(--white); margin-bottom: 20px; }
        .play-btn:hover { background-color: var(--orange-light); transform: scale(1.1) !important; box-shadow: 0 0 30px rgba(240,124,42,0.6); }
        .play-btn svg { width: 32px; height: 32px; fill: currentColor; margin-right: -4px; }
        
        /* Video Ticker */
        .video-ticker-wrap { position: absolute; bottom: 0; left: 0; right: 0; z-index: 10; overflow: hidden; background: rgba(13, 14, 17, 0.75); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border-top: 1px solid rgba(240, 124, 42, 0.4); padding: 0; height: 48px; display: flex; align-items: center; }
        .video-ticker { width: 100%; overflow: hidden; height: 100%; display: flex; align-items: center; opacity: 0; transition: opacity 0.5s; z-index: 3; }
        .ticker-inner { display: flex; align-items: center; gap: 0; white-space: nowrap; animation: tickerMove 18s linear infinite; will-change: transform; }
        @keyframes tickerMove { 0% { transform: translateX(0); } 100% { transform: translateX(50%); } }
        .ticker-item { display: inline-block; padding: 0 24px; font-size: 13px; font-weight: 500; color: rgba(244, 245, 247, 0.75); letter-spacing: 0.5px; text-transform: uppercase; transition: color 0.3s; }
        .ticker-item:hover { color: #F07C2A; }
        .ticker-sep { display: inline-block; color: #F07C2A; font-size: 8px; opacity: 0.6; padding: 0 4px; }
        .video-ticker-wrap:hover .ticker-inner { animation-play-state: paused; }
        .video-ticker-wrap::before, .video-ticker-wrap::after { content: ''; position: absolute; top: 0; bottom: 0; width: 80px; z-index: 2; pointer-events: none; }
        .video-ticker-wrap::before { right: 0; background: linear-gradient(to left, rgba(13,14,17,0.9), transparent); }
        .video-ticker-wrap::after { left: 0; background: linear-gradient(to right, rgba(13,14,17,0.9), transparent); }

        .corner-decor { position: absolute; width: 20px; height: 20px; border: 2px solid var(--jade); z-index: 4; opacity: 0; transition: opacity 0.5s; }
        .corner-tl { top: 20px; left: 20px; border-right: none; border-bottom: none; }
        .corner-tr { top: 20px; right: 20px; border-left: none; border-bottom: none; }
        .corner-bl { bottom: 20px; left: 20px; border-right: none; border-top: none; }
        .corner-br { bottom: 20px; right: 20px; border-left: none; border-top: none; }
        .rec-indicator { position: absolute; top: 20px; right: 30px; color: #ff3333; font-weight: 700; font-size: 0.9rem; z-index: 4; display: flex; align-items: center; gap: 8px; opacity: 0; }
        .rec-indicator::before { content: ''; width: 10px; height: 10px; border-radius: 50%; background: #ff3333; animation: blink 1s infinite; }
        @keyframes gradientBG { 0% {background-position: 0% 50%;} 50% {background-position: 100% 50%;} 100% {background-position: 0% 50%;} }
        @keyframes blink { 0%, 100% {opacity: 1;} 50% {opacity: 0.3;} }
        
        .video-modal { position: fixed; inset: 0; background: rgba(0,0,0,0.92); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); display: flex; align-items: center; justify-content: center; z-index: 9999; opacity: 0; visibility: hidden; transition: var(--transition); }
        .video-modal.active { opacity: 1; visibility: visible; }
        .video-modal video { width: 85vw; max-width: 960px; border-radius: 16px; border: 2px solid rgba(240,124,42,0.4); box-shadow: 0 20px 60px rgba(0,0,0,0.6); outline: none; }
        .close-modal { position: absolute; top: 30px; left: 30px; color: var(--white); cursor: pointer; transition: var(--transition); width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,0.1); border-radius: 50%; }
        .close-modal:hover { color: var(--white); background: var(--orange); transform: rotate(90deg); }/* End custom CSS */