* {margin:0; padding:0; box-sizing:border-box}.sr-only {position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0}.skip-link {position:absolute; top:-40px; left:6px; background:#000; color:#fff; padding:8px 16px; text-decoration:none; border-radius:4px; z-index:9999; font-weight:600; transition:top 0.3s ease}.skip-link:focus {top:6px}*:focus {outline:2px solid #00d4ff; outline-offset:2px}button:focus,a:focus,input:focus,textarea:focus,select:focus,[tabindex]:focus {outline:3px solid #00d4ff; outline-offset:2px; box-shadow:0 0 0 1px rgba(0,212,255,0.3)}.js-focus-visible :focus:not(.focus-visible) {outline:none; box-shadow:none}.focus-visible {outline:3px solid #00d4ff !important; outline-offset:2px !important; box-shadow:0 0 0 1px rgba(0,212,255,0.3) !important}button,a,input,textarea,select,[role="button"],[tabindex] {min-height:44px; min-width:44px}@media (prefers-reduced-motion:reduce) {*,*::before,*::after {animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; scroll-behavior:auto !important}}.gpu-accelerated {transform:translateZ(0); will-change:transform}.touch-target {min-height:44px; min-width:44px; touch-action:manipulation}.progressive-image {transition:filter 0.3s ease-out}.progressive-image:not(.loaded) {filter:blur(5px)}@media (hover:none) and (pointer:coarse) {.nav-btn,.hamburger,.minimize-btn {transform:none !important; transition:background-color 0.2s ease}.nav-btn:active,.hamburger:active,.minimize-btn:active {background-color:rgba(255,107,53,0.3) !important; transform:scale(0.95) !important}.nav-btn {min-height:48px; padding:14px 28px}.hamburger {min-height:48px; min-width:48px}}@media (max-width:768px) {* {-webkit-transform:translateZ(0); transform:translateZ(0)}.content-panels {-webkit-overflow-scrolling:touch; scroll-behavior:smooth}.floating-header,.floating-nav,.panel,.modal {backdrop-filter:none; -webkit-backdrop-filter:none}#three-canvas {touch-action:pan-x pan-y pinch-zoom; user-select:none; -webkit-user-select:none}.service-card,.contact-item,.feature {box-shadow:0 2px 8px rgba(0,0,0,0.1)}body {-webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; text-rendering:optimizeSpeed}}@media (min-width:1200px) and (min-height:800px) {.enhanced-effects {backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px)}}.slow-connection * {animation-duration:0.1s !important; transition-duration:0.1s !important}.slow-connection .floating-header,.slow-connection .floating-nav,.slow-connection .panel {backdrop-filter:none; -webkit-backdrop-filter:none; box-shadow:0 2px 4px rgba(0,0,0,0.1)}.mobile-device {text-rendering:optimizeSpeed; -webkit-font-smoothing:antialiased}.low-performance * {animation-duration:0.1s !important; transition-duration:0.1s !important}.low-performance .floating-header,.low-performance .floating-nav,.low-performance .panel,.low-performance .modal {backdrop-filter:none !important; -webkit-backdrop-filter:none !important; box-shadow:0 2px 4px rgba(0,0,0,0.1) !important}.low-performance .service-card,.low-performance .feature,.low-performance .contact-item {transform:none !important; transition:none !important}.low-performance-mode .star-emoji {animation:none !important}.low-performance-mode #three-canvas {image-rendering:pixelated; image-rendering:-moz-crisp-edges; image-rendering:crisp-edges}.mobile-device .service-card,.mobile-device .feature,.mobile-device .contact-item {transform:none !important; transition:none !important}.loading-optimized {content-visibility:auto; contain-intrinsic-size:200px}img {loading:lazy; decoding:async}img[src*="logo.svg"] {loading:eager}body {font-family:'Inter',sans-serif; overflow:hidden; background:#000; color:#fff; position:relative}#preloader {position:fixed; top:0; left:0; width:100%; height:100%; background:linear-gradient(135deg,#1a1a2e,#16213e); display:flex; align-items:center; justify-content:center; z-index:1000; transition:opacity 0.5s ease}.loader {text-align:center; color:#fff}.loader-ring {width:60px; height:60px; border:3px solid rgba(255,255,255,0.1); border-top:3px solid #ff6b35; border-radius:50%; margin:0 auto 20px; animation:spin 1s linear infinite}.loader-text {font-size:18px; font-weight:300; letter-spacing:1px}@keyframes spin {0% {transform:rotate(0deg)}100% {transform:rotate(360deg)}}#preloader {position:fixed; top:0; left:0; width:100vw; height:100vh; background:linear-gradient(135deg,#1a1a2e,#16213e); display:flex; align-items:center; justify-content:center; z-index:1000; transition:opacity 0.7s cubic-bezier(.4,2,.6,1)}#preloader.fade-out {opacity:0; pointer-events:none}.star-loader {position:relative; width:220px; height:220px; display:flex; flex-direction:column; align-items:center; justify-content:center}.star-emojis {position:absolute; top:50%; left:50%; width:200px; height:200px; transform:translate(-50%,-50%); pointer-events:none; z-index:2}.star-emoji {position:absolute; font-size:2.3rem; filter:drop-shadow(0 0 8px #ffb347) drop-shadow(0 0 16px #ff6b35cc); opacity:0.7; transition:filter 0.2s,opacity 0.2s,transform 0.2s; will-change:transform,opacity,filter; user-select:none}.star-emoji.glow {filter:drop-shadow(0 0 18px #fff6b3) drop-shadow(0 0 32px #ff6b35) drop-shadow(0 0 8px #fff6b3); opacity:1; z-index:3}.star-emoji.twinkle {animation:twinkle 1.2s infinite linear}@keyframes twinkle {0%,100% {opacity:1}50% {opacity:0.5}}.loader-text {position:relative; z-index:5; font-size:1.25rem; font-weight:600; color:#fff; letter-spacing:1px; text-align:center; margin-top:120px; text-shadow:0 4px 20px #ff6b3533,0 2px 8px #fff6b3aa}@media (max-width:480px) {.star-loader {width:140px; height:140px}.star-emojis {width:120px; height:120px}.star-emoji {font-size:1.3rem}.loader-text {font-size:1rem; margin-top:70px}}#three-container {position:fixed; top:0; left:0; width:100%; height:100%; z-index:1}#three-canvas {display:block; width:100%; height:100%}#ui-overlay {position:fixed; top:0; left:0; width:100%; height:100%; pointer-events:none; z-index:10; display:flex; flex-direction:column}.floating-header {position:absolute; top:50px; left:50px; pointer-events:auto; animation:fadeInUp 1s ease 0.5s both}.logo-container {display:flex; align-items:center; gap:20px}.company-logo {width:60px; height:60px; filter:drop-shadow(0 4px 12px rgba(255,107,53,0.3)); transition:all 0.3s ease; animation:logoFloat 6s ease-in-out infinite}.company-logo:hover {transform:scale(1.1) rotate(2deg); filter:drop-shadow(0 6px 20px rgba(255,107,53,0.5))}.title-group {display:flex; flex-direction:column}.main-title {font-size:3.5rem; font-weight:700; background:linear-gradient(135deg,#ff6b35,#f7931e); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; margin-bottom:10px; text-shadow:0 4px 20px rgba(255,107,53,0.3)}.subtitle {font-size:1.2rem; font-weight:300; color:rgba(255,255,255,0.8); letter-spacing:2px}@keyframes logoFloat {0%,100% {transform:translateY(0px) rotate(0deg)}33% {transform:translateY(-3px) rotate(1deg)}66% {transform:translateY(-1px) rotate(-0.5deg)}}.floating-nav {position:absolute; top:50px; right:50px; display:flex; gap:10px; pointer-events:auto; animation:fadeInDown 1s ease 0.7s both}.nav-btn {padding:12px 24px; background:rgba(255,255,255,0.1); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.2); border-radius:30px; color:#fff; font-weight:500; cursor:pointer; transition:all 0.3s ease; font-size:14px}.nav-btn:hover,.nav-btn.active {background:rgba(255,107,53,0.8); border-color:#ff6b35; transform:translateY(-2px); box-shadow:0 10px 30px rgba(255,107,53,0.3)}.content-panels {position:absolute; bottom:50px; left:50px; width:400px; max-height:50vh; overflow-y:auto; pointer-events:auto; animation:fadeInLeft 1s ease 0.9s both}.panel {background:rgba(0,0,0,0.8); backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,0.1); border-radius:20px; padding:30px; display:none; animation:slideInUp 0.5s ease}.panel.active {display:block}.panel h2 {font-size:2rem; font-weight:600; margin-bottom:15px; color:#ff6b35}.panel p {font-size:16px; line-height:1.6; color:rgba(255,255,255,0.9); margin-bottom:20px}.features {display:grid; grid-template-columns:1fr; gap:20px; margin-top:25px}.feature {padding:20px; background:rgba(255,255,255,0.05); border-radius:12px; border-left:3px solid #ff6b35}.feature h3 {font-size:1.1rem; font-weight:600; margin-bottom:8px; color:#fff}.feature p {font-size:14px; margin:0; color:rgba(255,255,255,0.7)}.services-grid {display:grid; grid-template-columns:1fr 1fr; gap:15px; margin-top:20px}.service-card {padding:15px; background:rgba(255,107,53,0.1); border:1px solid rgba(255,107,53,0.3); border-radius:10px; transition:transform 0.3s ease}.service-card:hover {transform:translateY(-5px); background:rgba(255,107,53,0.2)}.service-card h3 {font-size:1rem; font-weight:600; margin-bottom:8px; color:#ff6b35}.service-card p {font-size:13px; margin:0; color:rgba(255,255,255,0.8)}.stats {display:flex; gap:30px; margin-top:25px}.stat {text-align:center}.stat h3 {font-size:2.5rem; font-weight:700; color:#ff6b35; margin-bottom:5px}.stat p {font-size:14px; color:rgba(255,255,255,0.7); margin:0}.contact-info {display:grid; gap:20px; margin-bottom:25px}.contact-item h3 {font-size:1rem; font-weight:600; margin-bottom:5px; color:#ff6b35}.contact-item p {margin:0; font-size:14px; color:rgba(255,255,255,0.9)}.cta-button {width:100%; padding:15px; background:linear-gradient(135deg,#ff6b35,#f7931e); border:none; border-radius:10px; color:#fff; font-weight:600; font-size:16px; cursor:pointer; transition:all 0.3s ease; text-transform:uppercase; letter-spacing:1px}.cta-button:hover {transform:translateY(-2px); box-shadow:0 10px 30px rgba(255,107,53,0.4)}.controls-info {position:absolute; bottom:50px; right:50px; pointer-events:auto; animation:fadeInRight 1s ease 1.1s both}.controls-info p {padding:15px 20px; background:rgba(0,0,0,0.7); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.1); border-radius:25px; font-size:14px; color:rgba(255,255,255,0.8); margin:0}.day-night-toggle {position:absolute; top:150px; right:50px; pointer-events:auto; animation:fadeInDown 1s ease 1.3s both}#toggle-time {padding:12px 20px; background:rgba(255,255,255,0.1); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.2); border-radius:25px; color:#fff; font-size:14px; cursor:pointer; transition:all 0.3s ease}#toggle-time:hover {background:rgba(255,255,255,0.2); transform:scale(1.05)}.logo-watermark {position:absolute; bottom:20px; right:20px; pointer-events:none; opacity:0.6; animation:fadeInRight 1s ease 2s both}.watermark-logo {width:30px; height:30px; filter:drop-shadow(0 2px 6px rgba(0,0,0,0.3)); transition:all 0.3s ease}.watermark-logo:hover {opacity:1; transform:scale(1.1)}.modal {position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.8); backdrop-filter:blur(10px); display:none; align-items:center; justify-content:center; z-index:100; pointer-events:auto}.modal.show {display:flex; animation:fadeIn 0.3s ease}.modal-content {background:rgba(0,0,0,0.9); backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,0.2); border-radius:20px; padding:40px; max-width:500px; width:90%; text-align:center; position:relative; animation:scaleIn 0.3s ease}.close-modal {position:absolute; top:15px; right:20px; font-size:30px; color:rgba(255,255,255,0.6); cursor:pointer; transition:color 0.3s ease}.close-modal:hover {color:#ff6b35}.modal-content h3 {font-size:1.8rem; color:#ff6b35; margin-bottom:15px}.modal-content p {font-size:16px; line-height:1.6; color:rgba(255,255,255,0.9)}.about-modal {z-index:200}.about-content {background:rgba(0,0,0,0.95); backdrop-filter:blur(25px); border:1px solid rgba(255,107,53,0.3); border-radius:25px; padding:0; max-width:800px; width:95%; max-height:90vh; overflow-y:auto; position:relative; box-shadow:0 25px 50px rgba(0,0,0,0.5)}.close-about {position:absolute; top:20px; right:25px; font-size:32px; color:rgba(255,255,255,0.6); cursor:pointer; transition:all 0.3s ease; z-index:10; width:40px; height:40px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:rgba(255,255,255,0.1)}.close-about:hover {color:#ff6b35; background:rgba(255,107,53,0.2); transform:scale(1.1)}.about-header {background:linear-gradient(135deg,rgba(255,107,53,0.2),rgba(247,147,30,0.1)); padding:40px 40px 30px; border-radius:25px 25px 0 0; text-align:center; border-bottom:1px solid rgba(255,107,53,0.2)}.about-logo {width:60px; height:60px; margin-bottom:15px; filter:drop-shadow(0 4px 12px rgba(255,107,53,0.4))}.about-header h2 {font-size:2.5rem; font-weight:700; background:linear-gradient(135deg,#ff6b35,#f7931e); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; margin:0}.about-body {padding:40px}.about-section {margin-bottom:35px}.about-section:last-child {margin-bottom:0}.about-section h3 {font-size:1.4rem; font-weight:600; color:#ff6b35; margin-bottom:15px; display:flex; align-items:center; gap:10px}.about-section p {font-size:16px; line-height:1.7; color:rgba(255,255,255,0.9); margin-bottom:15px}.services-list {display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:20px}.service-item {background:rgba(255,255,255,0.05); border:1px solid rgba(255,107,53,0.2); border-radius:15px; padding:20px; transition:all 0.3s ease}.service-item:hover {background:rgba(255,107,53,0.1); border-color:rgba(255,107,53,0.4); transform:translateY(-2px)}.service-item strong {color:#ff6b35; font-size:1.1rem; display:block; margin-bottom:8px}.service-item p {font-size:14px; margin:0; color:rgba(255,255,255,0.8)}.team-stats {display:flex; justify-content:space-around; margin-top:25px; padding:25px; background:rgba(255,255,255,0.05); border-radius:15px; border:1px solid rgba(255,107,53,0.1)}.stat-item {text-align:center}.stat-number {font-size:2.5rem; font-weight:700; color:#ff6b35; display:block; line-height:1}.stat-label {font-size:0.9rem; color:rgba(255,255,255,0.7); margin-top:5px; display:block}.about-cta {text-align:center; padding:30px 0 10px; border-top:1px solid rgba(255,255,255,0.1); margin-top:30px}.about-cta p {font-size:1.1rem; margin-bottom:20px; color:rgba(255,255,255,0.9)}.about-content .cta-button {background:linear-gradient(135deg,#ff6b35,#f7931e); border:none; border-radius:25px; color:#fff; font-weight:600; font-size:16px; padding:15px 35px; cursor:pointer; transition:all 0.3s ease; text-transform:uppercase; letter-spacing:1px}.about-content .cta-button:hover {transform:translateY(-2px); box-shadow:0 15px 35px rgba(255,107,53,0.4)}@media (max-width:768px) {.about-content {width:95%; max-height:85vh; border-radius:20px}.about-header {padding:30px 20px 25px}.about-header h2 {font-size:2rem}.about-body {padding:25px 20px}.services-list {grid-template-columns:1fr; gap:15px}.team-stats {flex-direction:column; gap:20px}.stat-number {font-size:2rem}}.pyramid-tooltip {position:fixed; background:rgba(0,0,0,0.9); backdrop-filter:blur(15px); border:1px solid rgba(255,107,53,0.4); border-radius:12px; padding:0; pointer-events:none; z-index:150; opacity:0; transform:translateY(10px); transition:all 0.3s ease; max-width:250px}.pyramid-tooltip.show {opacity:1; transform:translateY(0)}.tooltip-content {padding:15px 20px}.tooltip-content h4 {font-size:1.1rem; font-weight:600; color:#ff6b35; margin:0 0 8px 0}.tooltip-content p {font-size:0.9rem; color:rgba(255,255,255,0.8); margin:0; line-height:1.4}.pyramid-tooltip::after {content:''; position:absolute; bottom:-6px; left:50%; transform:translateX(-50%); width:12px; height:12px; background:rgba(0,0,0,0.9); border-right:1px solid rgba(255,107,53,0.4); border-bottom:1px solid rgba(255,107,53,0.4); transform:translateX(-50%) rotate(45deg)}.project-form-modal {z-index:300}.project-form-content {background:rgba(0,0,0,0.95); backdrop-filter:blur(25px); border:1px solid rgba(255,107,53,0.3); border-radius:25px; padding:0; max-width:900px; width:95%; max-height:95vh; overflow-y:auto; position:relative; box-shadow:0 25px 50px rgba(0,0,0,0.5)}.close-project-form {position:absolute; top:20px; right:25px; font-size:32px; color:rgba(255,255,255,0.6); cursor:pointer; transition:all 0.3s ease; z-index:10; width:40px; height:40px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:rgba(255,255,255,0.1)}.close-project-form:hover {color:#ff6b35; background:rgba(255,107,53,0.2); transform:scale(1.1)}.form-header {background:linear-gradient(135deg,rgba(255,107,53,0.2),rgba(247,147,30,0.1)); padding:40px 40px 30px; border-radius:25px 25px 0 0; text-align:center; border-bottom:1px solid rgba(255,107,53,0.2)}.form-logo {width:50px; height:50px; margin-bottom:15px; filter:drop-shadow(0 4px 12px rgba(255,107,53,0.4))}.form-header h2 {font-size:2.2rem; font-weight:700; background:linear-gradient(135deg,#ff6b35,#f7931e); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; margin:0 0 10px 0}.form-header p {font-size:1rem; color:rgba(255,255,255,0.8); margin:0}.project-form {padding:40px}.form-section {margin-bottom:40px}.form-section:last-child {margin-bottom:0}.form-section h3 {font-size:1.3rem; font-weight:600; color:#ff6b35; margin-bottom:25px; display:flex; align-items:center; gap:8px; padding-bottom:10px; border-bottom:1px solid rgba(255,107,53,0.2)}.form-group {margin-bottom:25px}.form-group label {display:block; font-size:0.95rem; font-weight:500; color:rgba(255,255,255,0.9); margin-bottom:8px}.form-row {display:grid; grid-template-columns:1fr 1fr; gap:20px}.project-form input[type="text"],.project-form input[type="email"],.project-form input[type="tel"],.project-form select,.project-form textarea {width:100%; padding:12px 16px; background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.2); border-radius:10px; color:#fff; font-size:0.95rem; font-family:'Inter',sans-serif; transition:all 0.3s ease}.project-form input[type="text"]:focus,.project-form input[type="email"]:focus,.project-form input[type="tel"]:focus,.project-form select:focus,.project-form textarea:focus {outline:none; border-color:#ff6b35; background:rgba(255,107,53,0.1); box-shadow:0 0 0 2px rgba(255,107,53,0.2)}.project-form select {cursor:pointer; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 12px center; background-size:16px; padding-right:40px; appearance:none}.project-form select option {background:#2a2a2a; color:#fff; padding:8px}.project-form textarea {resize:vertical; min-height:100px; line-height:1.5}.radio-group {display:flex; flex-direction:column; gap:12px}.radio-group.inline {flex-direction:row; gap:25px}.radio-option {display:flex; align-items:center; gap:10px; cursor:pointer; padding:10px 15px; border-radius:8px; transition:all 0.3s ease; font-size:0.95rem}.radio-option:hover {background:rgba(255,255,255,0.05)}.radio-option input[type="radio"] {display:none}.radio-custom {width:18px; height:18px; border:2px solid rgba(255,255,255,0.3); border-radius:50%; position:relative; transition:all 0.3s ease; flex-shrink:0}.radio-option input[type="radio"]:checked + .radio-custom {border-color:#ff6b35; background:rgba(255,107,53,0.2)}.radio-option input[type="radio"]:checked + .radio-custom::after {content:''; width:8px; height:8px; background:#ff6b35; border-radius:50%; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%)}.form-actions {text-align:center; padding-top:20px; border-top:1px solid rgba(255,255,255,0.1); margin-top:30px}.submit-button {background:linear-gradient(135deg,#ff6b35,#f7931e); border:none; border-radius:25px; color:#fff; font-weight:600; font-size:16px; padding:16px 40px; cursor:pointer; transition:all 0.3s ease; text-transform:uppercase; letter-spacing:1px; margin-bottom:15px}.submit-button:hover {transform:translateY(-2px); box-shadow:0 15px 35px rgba(255,107,53,0.4)}.form-note {font-size:0.9rem; color:rgba(255,255,255,0.7); margin:0}.project-form input.error,.project-form select.error,.project-form textarea.error {border-color:#ff4444; background:rgba(255,68,68,0.1)}.field-error {color:#ff4444; font-size:0.85rem; margin-top:5px; display:flex; align-items:center; gap:5px}.field-error::before {content:'⚠️'; font-size:12px}.success-message {text-align:center; padding:60px 40px}.success-icon {font-size:4rem; margin-bottom:20px; animation:bounceIn 0.6s ease}.success-message h2 {font-size:2.2rem; font-weight:700; color:#ff6b35; margin-bottom:15px}.success-message p {font-size:1.1rem; color:rgba(255,255,255,0.9); margin-bottom:15px; line-height:1.6}.success-button {background:linear-gradient(135deg,#ff6b35,#f7931e); border:none; border-radius:25px; color:#fff; font-weight:600; font-size:16px; padding:15px 35px; cursor:pointer; transition:all 0.3s ease; text-transform:uppercase; letter-spacing:1px; margin-top:20px}.success-button:hover {transform:translateY(-2px); box-shadow:0 15px 35px rgba(255,107,53,0.4)}@keyframes bounceIn {0% {opacity:0; transform:scale(0.3)}50% {opacity:1; transform:scale(1.05)}70% {transform:scale(0.9)}100% {opacity:1; transform:scale(1)}}@media (max-width:768px) {.project-form-content {width:95%; max-height:90vh; border-radius:20px}.form-header {padding:30px 20px 25px}.form-header h2 {font-size:1.8rem}.project-form {padding:25px 20px}.form-section {margin-bottom:30px}.form-section h3 {font-size:1.2rem}.form-row {grid-template-columns:1fr; gap:15px}.radio-group.inline {flex-direction:column; gap:12px}.success-message {padding:40px 20px}.success-message h2 {font-size:1.8rem}.success-icon {font-size:3rem}}@media (max-width:480px) {.project-form-content {width:98%; max-height:95vh}.form-header {padding:25px 15px 20px}.project-form {padding:20px 15px}.submit-button,.success-button {width:100%; padding:16px}}@keyframes fadeInUp {from {opacity:0; transform:translateY(30px)}to {opacity:1; transform:translateY(0)}}@keyframes fadeInDown {from {opacity:0; transform:translateY(-30px)}to {opacity:1; transform:translateY(0)}}@keyframes fadeInLeft {from {opacity:0; transform:translateX(-30px)}to {opacity:1; transform:translateX(0)}}@keyframes fadeInRight {from {opacity:0; transform:translateX(30px)}to {opacity:1; transform:translateX(0)}}@keyframes slideInUp {from {transform:translateY(20px); opacity:0}to {transform:translateY(0); opacity:1}}@keyframes fadeIn {from {opacity:0}to {opacity:1}}@keyframes scaleIn {from {transform:scale(0.9); opacity:0}to {transform:scale(1); opacity:1}}@media (max-width:768px) {.floating-header {top:30px; left:20px}.logo-container {gap:15px}.company-logo {width:50px; height:50px}.main-title {font-size:2.5rem}.subtitle {font-size:1rem}.floating-nav {top:30px; right:20px; flex-direction:column; gap:8px}.nav-btn {padding:10px 16px; font-size:12px}.content-panels {bottom:20px; left:20px; right:20px; width:auto; max-height:40vh}.panel {padding:20px}.panel h2 {font-size:1.5rem}.services-grid {grid-template-columns:1fr}.stats {gap:20px}.stat h3 {font-size:2rem}.controls-info {bottom:20px; right:20px; left:20px; text-align:center}.day-night-toggle {top:auto; bottom:120px; right:20px}.modal-content {padding:30px 20px; margin:20px}}@media (max-width:480px) {.floating-header {position:relative; top:20px; left:20px; text-align:center}.logo-container {flex-direction:column; align-items:center; gap:10px}.company-logo {width:40px; height:40px}.title-group {align-items:center; text-align:center}.main-title {font-size:2rem}.floating-nav {position:relative; top:20px; right:auto; left:20px; flex-direction:row; flex-wrap:wrap; justify-content:center}.content-panels {position:relative; bottom:auto; left:20px; right:20px; margin-top:20px; max-height:none}}.content-panels::-webkit-scrollbar {width:6px}.content-panels::-webkit-scrollbar-track {background:rgba(255,255,255,0.1); border-radius:3px}.content-panels::-webkit-scrollbar-thumb {background:rgba(255,107,53,0.6); border-radius:3px}.content-panels::-webkit-scrollbar-thumb:hover {background:rgba(255,107,53,0.8)}.appstore-link {color:#ff6b35; text-decoration:none; font-weight:600; transition:text-decoration 0.2s,box-shadow 0.2s,color 0.2s; box-shadow:0 0 0px #ff6b35}.appstore-link:hover,.appstore-link:focus {text-decoration:underline; color:#ff6b35; box-shadow:0 0 8px 2px rgba(255,107,53,0.5); outline:none}@media (max-width:768px) {#three-container {width:100vw; height:100vh; position:fixed; top:0; left:0; z-index:1}#three-canvas {width:100vw; height:100vh}.floating-header {top:18px; left:16px; right:16px; width:auto; z-index:12}.main-title {font-size:1.3rem}.subtitle {font-size:0.9rem}.logo-container {gap:10px}.company-logo {width:36px; height:36px}.floating-nav {display:none}.hamburger {position:absolute; top:18px; right:18px; width:54px; height:54px; z-index:1300 !important; background:rgba(0,0,0,0.5); border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,0.15); transition:background 0.2s,box-shadow 0.2s; touch-action:manipulation}.hamburger:active,.hamburger.active {background:rgba(255,107,53,0.18); box-shadow:0 4px 16px rgba(255,107,53,0.18)}.hamburger span,.hamburger span:before,.hamburger span:after {display:block; background:#fff; height:4px; width:28px; border-radius:2px; position:absolute; left:13px; transition:all 0.3s}.hamburger span {position:relative; top:25px}.hamburger span:before {content:''; top:-10px}.hamburger span:after {content:''; top:10px}.mobile-nav-drawer {position:fixed; top:0; right:-260px; width:240px; height:100vh; background:rgba(20,20,20,0.98); box-shadow:-2px 0 16px rgba(0,0,0,0.2); z-index:1301 !important; transition:right 0.3s cubic-bezier(.4,2,.6,1); display:flex; flex-direction:column; padding:40px 20px 20px 20px}.mobile-nav-drawer.open {right:0}.mobile-nav-drawer button {background:none; border:none; color:#fff; font-size:1.1rem; margin-bottom:24px; text-align:left; padding:12px 0; border-bottom:1px solid rgba(255,255,255,0.08); width:100%; cursor:pointer; transition:color 0.2s}.mobile-nav-drawer button.active,.mobile-nav-drawer button:hover {color:#ff6b35}.content-panels {position:fixed; left:0; right:0; bottom:0; width:100vw; max-width:100vw; z-index:15; padding:0; margin:0; animation:none; background:none; pointer-events:none}.panel {display:none; pointer-events:auto; background:rgba(20,20,20,0.85); border-radius:18px 18px 0 0; border:1px solid rgba(255,255,255,0.08); box-shadow:0 -2px 16px rgba(0,0,0,0.18); max-height:40vh; min-height:0; width:96vw; margin:0 auto; padding:18px 12px 10px 12px; position:relative; transition:max-height 0.3s,opacity 0.3s; opacity:1; overflow:hidden}.panel.active {display:block}.panel.minimized {max-height:36px; opacity:0.7; padding:4px 12px 4px 12px}.minimize-btn {position:absolute; top:8px; right:12px; width:28px; height:28px; background:rgba(255,255,255,0.12); border:none; border-radius:50%; color:#fff; font-size:1.2rem; display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:2; transition:background 0.2s}.minimize-btn:hover {background:rgba(255,107,53,0.18); color:#ff6b35}.panel.minimized .panel-content {display:none}.panel .panel-content {display:block}.panel h2 {font-size:1.1rem; margin-bottom:8px; color:#ff6b35; text-align:left}.features {display:flex; flex-direction:row; gap:8px; margin-top:8px; margin-bottom:0}.feature {flex:1 1 0; padding:8px 6px; background:rgba(255,255,255,0.07); border-radius:8px; border-left:2px solid #ff6b35; font-size:0.85rem; min-width:0; text-align:left}.feature h3 {font-size:0.95rem; margin-bottom:2px}.feature p {font-size:0.75rem; margin:0}.controls-info {position:fixed; bottom:0; left:0; right:0; text-align:center; z-index:110; padding:0; margin:0; animation:none}.controls-info p {background:rgba(0,0,0,0.6); font-size:0.95rem; padding:7px 14px 7px 14px; border-radius:16px 16px 0 0; margin:0 auto 0 auto; width:fit-content; box-shadow:0 2px 8px rgba(0,0,0,0.12); color:#fff; opacity:0.92; display:flex; align-items:center; gap:10px}.controls-info .close-instructions {background:none; border:none; color:#fff; font-size:1.2rem; margin-left:8px; cursor:pointer; opacity:0.7; transition:opacity 0.2s; padding:0 4px}.controls-info .close-instructions:hover {opacity:1}}@media (max-width:480px) {.main-title {font-size:1.05rem}.subtitle {font-size:0.8rem}.panel {width:99vw; padding:10px 4px 6px 4px}.features {gap:4px}.feature {font-size:0.7rem; padding:6px 2px}.controls-info p {font-size:0.85rem; padding:5px 6px}}#star-loader-container {position:fixed; top:0; left:0; right:0; bottom:0; display:flex; align-items:center; justify-content:center; background:rgba(10,10,30,0.92); z-index:9999; transition:opacity 0.7s cubic-bezier(.4,2,.6,1),visibility 0.7s}#star-loader-container.fade-out {opacity:0; visibility:hidden; pointer-events:none}#star-loader {position:relative; width:420px; height:420px; min-width:260px; min-height:260px; display:flex; align-items:center; justify-content:center; flex-direction:column}#star-emoji-group {position:absolute; left:50%; top:50%; width:100%; height:100%; pointer-events:none; z-index:2}.star-emoji {position:absolute; font-size:2.7rem; filter:drop-shadow(0 0 8px #fff6) drop-shadow(0 0 16px #ffecb3); opacity:0.7; transition:filter 0.2s,opacity 0.2s,transform 0.2s; will-change:transform,opacity,filter; user-select:none}.star-emoji.glow {filter:drop-shadow(0 0 18px #fff9) drop-shadow(0 0 32px #ffd700) brightness(1.3); opacity:1; z-index:3}.star-emoji.trail {filter:blur(2px) brightness(0.7); opacity:0.4}#loading-text {position:relative; z-index:10; font-family:'Segoe UI','Arial',sans-serif; font-size:2.1rem; color:#fff; letter-spacing:0.04em; text-shadow:0 2px 16px #000a,0 0 8px #ffd70099; margin-top:0.5em; text-align:center}@media (max-width:600px) {#star-loader {width:220px; height:220px; min-width:120px; min-height:120px}#loading-text {font-size:1.1rem}.star-emoji {font-size:1.3rem}}@media (min-width:800px) {.hamburger,#nav-overlay,.mobile-nav-drawer {display:none !important}.floating-nav {display:flex !important}}@media (max-width:799px) {.floating-nav {display:none !important}.hamburger,#nav-overlay,.mobile-nav-drawer {display:block}.content-panels {z-index:100 !important}.mobile-nav-drawer {z-index:1301 !important}#nav-overlay {z-index:1300 !important}#ui-overlay {pointer-events:none !important}.hamburger,.mobile-nav-drawer,#nav-overlay {pointer-events:auto !important}}.language-toggle-container {display:flex; flex-direction:row; align-items:center; justify-content:center; gap:0.5em; margin:1.5em 0 0.5em 0; padding-bottom:0.5em; border-top:1px solid #fff2}#language-label {color:#fff; font-size:1rem; font-weight:400; margin-right:0.5em}#language-toggle {background:rgba(255,255,255,0.12); border:1px solid #fff3; border-radius:20px; color:#fff; font-size:1.2rem; padding:0.3em 1em; cursor:pointer; transition:background 0.2s,color 0.2s}#language-toggle:hover {background:#ff6b35; color:#fff}.desktop-language-toggle {display:flex; align-items:center; margin-left:1.5em; gap:0.5em}#language-label-desktop {color:#fff; font-size:1rem; font-weight:400; margin-right:0.5em}#language-toggle-desktop {background:rgba(255,255,255,0.12); border:1px solid #fff3; border-radius:20px; color:#fff; font-size:1.2rem; padding:0.3em 1em; cursor:pointer; transition:background 0.2s,color 0.2s; height:40px; display:flex; align-items:center}#language-toggle-desktop:hover {background:#ff6b35; color:#fff}@media (max-width:799px) {.desktop-language-toggle {display:none !important}}.night-star {pointer-events:none; background:white; border-radius:50%; position:absolute; opacity:0.8; box-shadow:0 0 8px #fff8; will-change:opacity,filter}@keyframes star-twinkle {0%,100% {opacity:0.8; filter:brightness(1)}50% {opacity:0.3; filter:brightness(1.5)}}