:root{--royal-steel-blue:#4169b8;--gunmetal-gray:#2a3439;--ice-silver:#c0c5ce;--electric-cyan:#00e5ff;--jet-black:#0a0a0a;--primary-color:var(--royal-steel-blue);--secondary-color:var(--gunmetal-gray);--accent-color:var(--electric-cyan);--text-dark:#e8eaed;--text-light:var(--ice-silver);--background-dark:var(--jet-black);--card-bg:#1a1d21;--spacing-xs:.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:4rem;--spacing-2xl:6rem;--border-radius:8px;--transition:all .3s ease}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}section[id]{scroll-margin-top:150px}body{color:var(--text-dark);background-color:var(--background-dark);font-family:Rajdhani,sans-serif;font-weight:400;line-height:1.6;position:relative}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 20%,#4169b814 0%,#0000 50%),radial-gradient(circle at 80% 80%,#00e5ff0f 0%,#0000 50%),radial-gradient(circle at 40% 20%,#2a34390d 0%,#0000 50%);width:100%;height:100%;position:fixed;top:0;left:0}h1,h2,h3,h4,h5,h6{margin-bottom:var(--spacing-sm);letter-spacing:.5px;font-family:Orbitron,sans-serif;font-weight:700;line-height:1.2}h1{font-size:3rem}h2{font-size:2.5rem}h3{font-size:1.75rem}h4{font-size:1.25rem}h5{font-size:1.1rem}h6{font-size:1rem}p{margin-bottom:var(--spacing-sm)}.container{max-width:1200px;padding:0 var(--spacing-md);z-index:1;margin:0 auto;position:relative}.btn{cursor:pointer;transition:var(--transition);text-align:center;text-transform:uppercase;letter-spacing:1px;border:none;border-radius:4px;padding:.875rem 2rem;font-family:Orbitron,sans-serif;font-size:1rem;font-weight:600;text-decoration:none;display:inline-block;position:relative;overflow:hidden}.btn:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn:hover:before{left:100%}.btn-primary{background:linear-gradient(135deg, var(--primary-color), var(--accent-color));color:#fff;box-shadow:0 0 20px #4169b866}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 30px #00e5ff99,0 5px 20px #4169b866}.btn-secondary{color:var(--text-dark);border:2px solid var(--primary-color);background-color:#0000;box-shadow:0 0 10px #4169b84d}.btn-secondary:hover{background-color:var(--primary-color);color:#fff;box-shadow:0 0 20px #00e5ff80}.btn-white{background:linear-gradient(135deg, var(--primary-color), var(--accent-color));color:#fff;box-shadow:0 0 20px #00e5ff66}.btn-white:hover{transform:translateY(-2px);box-shadow:0 0 30px #00e5ffb3,0 5px 20px #4169b866}.section{padding:var(--spacing-2xl) 0}.section-title{text-align:center;margin-bottom:var(--spacing-lg);color:var(--text-dark);text-transform:uppercase;width:100%;display:inline-block;position:relative}.section-title:after{content:"";background:linear-gradient(90deg, var(--primary-color), var(--accent-color));width:100px;height:3px;box-shadow:0 0 10px var(--electric-cyan);position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.section-subtitle{text-align:center;color:var(--text-light);max-width:700px;margin:0 auto var(--spacing-xl);font-size:1.125rem}header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;transition:var(--transition);background:#2a3439f2;border-bottom:1px solid #4169b866;position:fixed;top:0;left:0;right:0;overflow:hidden;box-shadow:0 2px 20px #4169b826}.header-tech-line{background:linear-gradient(90deg, transparent 0%, var(--electric-cyan) 25%, var(--primary-color) 50%, var(--electric-cyan) 75%, transparent 100%);width:100%;height:2px;box-shadow:0 0 10px var(--electric-cyan), 0 0 20px var(--electric-cyan);animation:3s linear infinite techLineScan;position:absolute;bottom:0;left:0}@keyframes techLineScan{0%{transform:translate(-100%)}to{transform:translate(100%)}}.header-corner{border:2px solid var(--electric-cyan);opacity:.6;width:40px;height:40px;animation:2s ease-in-out infinite cornerPulse;position:absolute}.header-corner-tl{border-bottom:none;border-right:none;top:10px;left:10px;box-shadow:-2px -2px 10px #00e5ff4d}.header-corner-tr{border-bottom:none;border-left:none;animation-delay:1s;top:10px;right:10px;box-shadow:2px -2px 10px #00e5ff4d}@keyframes cornerPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}nav{padding:var(--spacing-sm) var(--spacing-md);justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.logo{transition:var(--transition);align-items:center;text-decoration:none;display:flex}.logo-image{width:auto;height:120px;transition:var(--transition);filter:drop-shadow(0 0 10px #4169b866)}.logo:hover .logo-image{filter:drop-shadow(0 0 20px #00e5ff99);transform:scale(1.05)}.nav-links{gap:var(--spacing-md);align-items:center;list-style:none;display:flex}.nav-links a{color:var(--text-dark);transition:var(--transition);font-weight:600;text-decoration:none}.nav-links a:hover{color:var(--primary-color)}.mobile-menu-toggle{color:var(--primary-color);cursor:pointer;background:0 0;border:none;font-size:1.5rem;display:none}.hero{text-align:center;min-height:100vh;color:var(--text-dark);background:linear-gradient(135deg,#0a0a0af2,#2a3439e6),url(https://images.pexels.com/photos/8486869/pexels-photo-8486869.jpeg?auto=compress&cs=tinysrgb&w=1920) 50%/cover no-repeat;justify-content:center;align-items:center;padding-top:80px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00e5ff08 2px 4px),repeating-linear-gradient(90deg,#0000,#0000 2px,#00e5ff08 2px 4px);width:100%;height:100%;animation:20s linear infinite gridMove;position:absolute;top:0;left:0}@keyframes gridMove{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.hero-content{max-width:900px;padding:var(--spacing-md);animation:1s ease-out fadeInUp}.hero h1{margin-bottom:var(--spacing-md);text-shadow:0 0 20px #4169b880,0 0 40px #00e5ff4d;background:linear-gradient(135deg, var(--text-dark), var(--primary-color), var(--electric-cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:3.5rem}.hero p{margin-bottom:var(--spacing-xl);opacity:.95;font-size:1.25rem}.hero-buttons{gap:var(--spacing-sm);flex-wrap:wrap;justify-content:center;display:flex}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.about{background-color:var(--background-dark);position:relative}.about-content{text-align:center;max-width:800px;margin:0 auto}.about p{color:var(--text-light);margin-bottom:var(--spacing-md);font-size:1.125rem;line-height:1.8}.credentials{justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);flex-wrap:wrap;display:flex}.credential-badge{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);color:var(--electric-cyan);text-transform:uppercase;letter-spacing:1px;transition:var(--transition);background:linear-gradient(135deg,#4169b826,#00e5ff1a);border:1px solid #4169b866;font-family:Orbitron,sans-serif;font-size:.85rem;font-weight:600;box-shadow:0 0 15px #4169b84d}.credential-badge:hover{transform:translateY(-2px);box-shadow:0 0 25px #00e5ff80}.services{background:linear-gradient(180deg, var(--background-dark) 0%, var(--gunmetal-gray) 50%, var(--background-dark) 100%);position:relative}.services-grid{gap:var(--spacing-md);margin-top:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.service-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:var(--spacing-lg);border-radius:var(--border-radius);text-align:center;transition:var(--transition);background:#2a343980;border:1px solid #4169b84d;position:relative;overflow:hidden;box-shadow:0 5px 20px #0006}.service-card:before{content:"";background:linear-gradient(45deg, var(--primary-color), var(--electric-cyan), var(--royal-steel-blue));border-radius:var(--border-radius);opacity:0;z-index:-1;transition:opacity .3s;position:absolute;inset:-2px}.service-card:hover{transform:translateY(-5px);box-shadow:0 10px 40px #00e5ff4d,0 0 20px #4169b84d}.service-card:hover:before{opacity:.5}.service-icon{width:80px;height:80px;margin:0 auto var(--spacing-md);background:linear-gradient(135deg, var(--primary-color), var(--accent-color));color:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:2.5rem;animation:3s ease-in-out infinite pulse;display:flex;position:relative;box-shadow:0 0 30px #00e5ff66}@keyframes pulse{0%,to{box-shadow:0 0 20px #4169b880}50%{box-shadow:0 0 40px #00e5ffb3}}.service-card h3{color:var(--text-dark);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;font-size:1.3rem}.service-card h4.service-subtitle{color:var(--electric-cyan);text-transform:none;margin-bottom:var(--spacing-sm);letter-spacing:.5px;opacity:.9;font-family:Rajdhani,sans-serif;font-size:.95rem;font-weight:600}.service-card p{color:var(--text-light);font-size:.95rem}.section-subtitle-h3{text-align:center;color:var(--ice-silver);max-width:700px;margin:-1rem auto var(--spacing-lg);text-transform:none;font-family:Rajdhani,sans-serif;font-size:1.125rem;font-weight:600}.accreditation{background-color:var(--background-dark);position:relative}.accreditation-badges{justify-content:center;align-items:center;gap:var(--spacing-xl);flex-wrap:wrap;display:flex}.badge{border:3px solid var(--primary-color);width:150px;height:150px;padding:var(--spacing-sm);transition:var(--transition);background:radial-gradient(circle,#4169b826,#0a0a0ae6);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:0 0 30px #4169b866,inset 0 0 20px #00e5ff1a}.badge:before{content:"";border:2px solid var(--accent-color);opacity:.3;border-radius:50%;width:100%;height:100%;animation:8s linear infinite spin;position:absolute}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.badge:hover{transform:scale(1.05);box-shadow:0 0 40px #00e5ff99,inset 0 0 30px #4169b833}.badge-title{color:var(--electric-cyan);text-align:center;text-transform:uppercase;letter-spacing:1px;font-family:Orbitron,sans-serif;font-size:1.125rem;font-weight:700}.badge-subtitle{color:var(--text-light);text-align:center;font-size:.75rem}.client-trust{background:linear-gradient(135deg, var(--gunmetal-gray) 0%, #4169b826 100%);color:var(--text-dark);text-align:center;position:relative;overflow:hidden}.client-trust:before{content:"";background:linear-gradient(90deg,#0000,#00e5ff1a,#0000);width:100%;height:100%;animation:3s linear infinite scan;position:absolute;top:0;left:-100%}@keyframes scan{0%{left:-100%}to{left:100%}}.client-trust .section-title{color:var(--text-dark)}.client-logos{justify-content:center;align-items:center;gap:var(--spacing-lg);margin-top:var(--spacing-lg);flex-wrap:wrap;display:flex}.client-logo-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--border-radius);width:150px;height:120px;padding:var(--spacing-sm);transition:var(--transition);background:#14191ee6;border:2px solid #4169b866;justify-content:center;align-items:center;display:flex;overflow:hidden;box-shadow:0 0 15px #4169b84d}.client-logo-item:hover{border-color:var(--electric-cyan);transform:scale(1.05);box-shadow:0 0 25px #00e5ff80}.client-logo-img{object-fit:contain;filter:grayscale(0%);width:100%;height:100%;transition:var(--transition)}.client-logo-item:hover .client-logo-img{filter:grayscale(0%)brightness(1.1)}.client-logo-placeholder{width:100%;height:100%;color:var(--primary-blue);text-align:center;opacity:.7;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.cta-section{color:var(--text-dark);text-align:center;padding:var(--spacing-2xl) var(--spacing-md);background:linear-gradient(135deg,#0a0a0af2 0%,#2a3439f2 100%);border-top:1px solid #4169b866;border-bottom:1px solid #4169b866;position:relative;overflow:hidden}.cta-section:before{content:"";background:radial-gradient(circle,#00e5ff1f,#0000);width:500px;height:500px;animation:3s ease-in-out infinite glow;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes glow{0%,to{opacity:.5;transform:translate(-50%,-50%)scale(1)}50%{opacity:.8;transform:translate(-50%,-50%)scale(1.1)}}.cta-section h2{color:var(--text-dark);margin-bottom:var(--spacing-sm);z-index:1;position:relative}.cta-section p{margin-bottom:var(--spacing-xl);opacity:.95;font-size:1.25rem}.modal{z-index:2000;width:100%;height:100%;padding:var(--spacing-md);background-color:#000000b3;justify-content:center;align-items:center;display:none;position:fixed;top:0;left:0}.modal.active{display:flex}.modal-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--border-radius);background:linear-gradient(135deg,#2a3439fa,#1a1d21fa);border:1px solid #4169b866;width:100%;max-width:600px;max-height:90vh;animation:.3s ease-out slideDown;position:relative;overflow-y:auto;box-shadow:0 0 50px #00e5ff4d}@keyframes slideDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:var(--spacing-md);border-bottom:1px solid #4169b866;justify-content:space-between;align-items:center;display:flex}.modal-header h2{color:var(--electric-cyan);text-transform:uppercase;margin-bottom:0}.modal-close{color:var(--text-light);cursor:pointer;transition:var(--transition);background:0 0;border:none;font-size:1.5rem}.modal-close:hover{color:var(--primary-color)}.modal-body{padding:var(--spacing-md)}.form-group{margin-bottom:var(--spacing-md)}.hp-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-group label{margin-bottom:var(--spacing-xs);color:var(--text-dark);font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{border-radius:var(--border-radius);width:100%;color:var(--text-dark);transition:var(--transition);background:#0a0a0a80;border:1px solid #4169b866;padding:.75rem;font-family:Rajdhani,sans-serif;font-size:1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--electric-cyan);background:#0a0a0ab3;outline:none;box-shadow:0 0 0 3px #00e5ff33,0 0 20px #4169b833}.form-group textarea{resize:vertical;min-height:120px}.error-message{color:#dc2626;margin-top:var(--spacing-xs);font-size:.875rem;display:none}.error-message.show{display:block}.success-message{background:linear-gradient(135deg, var(--royal-steel-blue), var(--electric-cyan));color:#fff;padding:var(--spacing-md);border-radius:var(--border-radius);text-align:center;font-weight:600;display:none;box-shadow:0 0 20px #00e5ff66}.success-message.show{display:block}.btn-submit{background:linear-gradient(135deg, var(--primary-color), var(--accent-color));color:#fff;text-transform:uppercase;letter-spacing:1px;cursor:pointer;width:100%;transition:var(--transition);border:none;border-radius:4px;padding:1rem;font-family:Orbitron,sans-serif;font-size:1rem;font-weight:600;position:relative;overflow:hidden;box-shadow:0 0 20px #4169b866}.btn-submit:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn-submit:hover:not(:disabled):before{left:100%}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #00e5ffb3,0 5px 20px #4169b880}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.btn-submit .btn-loading{display:none}.contact-form{background:linear-gradient(180deg, var(--background-dark) 0%, #2a343980 50%, var(--background-dark) 100%);padding:var(--spacing-2xl) 0}.contact-form-wrapper{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:700px;padding:var(--spacing-lg);border-radius:var(--border-radius);background:#2a343999;border:1px solid #4169b84d;margin:0 auto;box-shadow:0 10px 40px #00000080}.privacy-group{padding:var(--spacing-md);border-radius:var(--border-radius);background:#00e5ff0d;border:1px solid #00e5ff33}.privacy-label{gap:var(--spacing-sm);cursor:pointer;align-items:flex-start;display:flex}.privacy-label input[type=checkbox]{cursor:pointer;width:auto;accent-color:var(--electric-cyan);flex-shrink:0;margin-top:4px}.privacy-text{color:var(--text-light);font-size:.9rem;line-height:1.6}.captcha-group{padding:var(--spacing-md);border-radius:var(--border-radius);background:#0a0a0a4d;flex-direction:column;align-items:center;display:flex}.captcha-group.recaptcha-v3{display:none}.g-recaptcha{transform-origin:50%;transform:scale(.95)}footer{background:linear-gradient(180deg, var(--background-dark) 0%, var(--gunmetal-gray) 100%);color:var(--text-dark);padding:var(--spacing-xl) 0 var(--spacing-md);border-top:1px solid #4169b866;position:relative}.footer-content{gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));display:grid}.footer-logo-image{width:auto;height:140px;margin-bottom:var(--spacing-md);filter:drop-shadow(0 0 10px #4169b866)}.footer-section h3,.footer-section h4{color:var(--electric-cyan);margin-bottom:var(--spacing-md);text-transform:uppercase;font-family:Orbitron,sans-serif;font-size:1.1rem;font-weight:700}.footer-links{list-style:none}.footer-links li{margin-bottom:var(--spacing-sm)}.footer-links a{color:var(--text-light);transition:var(--transition);text-decoration:none}.footer-links a:hover{color:var(--electric-cyan);text-shadow:0 0 10px #00e5ff80}.social-icons{gap:var(--spacing-sm);margin-top:var(--spacing-md);display:flex}.social-icon{width:40px;height:40px;color:var(--text-dark);transition:var(--transition);background:linear-gradient(135deg,#4169b833,#00e5ff33);border:1px solid #4169b866;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex;box-shadow:0 0 10px #4169b84d}.social-icon:hover{background:linear-gradient(135deg, var(--primary-color), var(--accent-cyan));color:#fff;transform:translateY(-3px);box-shadow:0 0 20px #00e5ff99}.footer-bottom{text-align:center;padding-top:var(--spacing-md);color:var(--text-light);border-top:1px solid #4169b84d;font-size:.875rem}.footer-bottom p{margin-bottom:var(--spacing-xs)}.company-affiliation{opacity:.8;font-style:italic}@media (width<=480px){h1{font-size:1.75rem}h2{font-size:1.5rem}.hero{min-height:100vh;padding-top:120px}.hero-content{padding:var(--spacing-md) var(--spacing-sm)}.hero h1{margin-bottom:var(--spacing-md);padding-top:var(--spacing-sm);font-size:1.65rem;line-height:1.4}.hero p{font-size:.95rem}.hero-buttons{flex-direction:column}.nav-links{background-color:var(--gunmetal-gray);width:100%;padding:var(--spacing-md);transition:var(--transition);border-bottom:1px solid #4169b866;flex-direction:column;position:fixed;top:70px;left:-100%;box-shadow:0 5px 10px #0000004d}.nav-links.active{left:0}.mobile-menu-toggle{display:block}.services-grid{grid-template-columns:1fr}.accreditation-badges{gap:var(--spacing-md)}.badge{width:110px;height:110px}.section{padding:var(--spacing-lg) 0}.portfolio-filters{gap:var(--spacing-xs);flex-wrap:wrap}.filter-btn{padding:.5rem .875rem;font-size:.8rem}.portfolio-grid{gap:var(--spacing-md);grid-template-columns:1fr}.project-image{height:200px}.project-card{max-width:100%}.project-modal-body{gap:var(--spacing-sm);flex-direction:column}.project-modal-image-container{min-height:200px;max-height:250px}.project-modal-details{padding:var(--spacing-md)}.project-nav-btn{padding:.5rem;font-size:1.125rem}.modal-content{margin:var(--spacing-sm)}.g-recaptcha{transform:scale(.85)}.contact-form-wrapper{padding:var(--spacing-md)}}@media (width>=481px) and (width<=768px){h1{font-size:2rem}h2{font-size:1.75rem}.hero{min-height:100vh;padding-top:120px}.hero-content{padding:var(--spacing-md) var(--spacing-sm)}.hero h1{margin-bottom:var(--spacing-md);padding-top:var(--spacing-sm);font-size:1.85rem;line-height:1.4}.hero p{font-size:1rem}.hero-buttons{flex-direction:column}.nav-links{background-color:var(--gunmetal-gray);width:100%;padding:var(--spacing-md);transition:var(--transition);border-bottom:1px solid #4169b866;flex-direction:column;position:fixed;top:70px;left:-100%;box-shadow:0 5px 10px #0000004d}.nav-links.active{left:0}.mobile-menu-toggle{display:block}.services-grid{grid-template-columns:1fr}.accreditation-badges{gap:var(--spacing-md)}.badge{width:120px;height:120px}.section{padding:var(--spacing-xl) 0}.portfolio-filters{gap:var(--spacing-xs);flex-wrap:wrap}.filter-btn{padding:.5rem 1rem;font-size:.85rem}.portfolio-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr))}.project-image{height:220px}.project-modal-body{flex-direction:column}.project-modal-image-container{min-height:280px;max-height:350px}.project-nav-btn{padding:.5rem;font-size:1.25rem}}@media (width>=769px) and (width<=1024px){.portfolio-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-image{height:240px}.project-modal-image-container{max-height:500px}.project-modal-details{padding:var(--spacing-lg)}}@media (width>=1025px) and (width<=1440px){.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.project-image{height:250px}}@media (width>=1441px){.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));max-width:1600px;margin-left:auto;margin-right:auto}.project-image{height:280px}.project-modal-image{max-height:700px}}.portfolio{background:linear-gradient(180deg, var(--background-dark) 0%, #2a34394d 100%);position:relative}.portfolio-filters{justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap;display:flex}.filter-btn{background:var(--card-bg);color:var(--text-light);cursor:pointer;border-radius:var(--border-radius);transition:var(--transition);text-transform:uppercase;letter-spacing:.5px;border:1px solid #4169b84d;padding:.75rem 1.5rem;font-family:Rajdhani,sans-serif;font-size:1rem;font-weight:600}.filter-btn:hover{border-color:var(--primary-color);background:#4169b833;transform:translateY(-2px)}.filter-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 0 20px #4169b880}.portfolio-grid{gap:var(--spacing-lg);margin-top:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(min(350px,100%),1fr));display:grid}.portfolio-loading{text-align:center;padding:var(--spacing-xl);color:var(--text-light);grid-column:1/-1;font-size:1.25rem}.project-card{background:var(--card-bg);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);aspect-ratio:auto;border:1px solid #4169b833;position:relative;overflow:hidden}.project-card>:first-child{position:relative}.project-card:before{content:"";opacity:0;transition:var(--transition);pointer-events:none;background:linear-gradient(135deg,#4169b81a 0%,#0000 100%);position:absolute;inset:0}.project-card:hover{border-color:var(--accent-color);transform:translateY(-8px);box-shadow:0 10px 40px #00e5ff4d}.project-card:hover:before{opacity:1}.project-card.hidden{display:none}.project-image{object-fit:cover;object-position:center 30%;width:100%;height:250px;transition:var(--transition);background:var(--gunmetal-gray);display:block}.project-image-adjusted{object-position:center 20%}.project-card:hover .project-image{transform:scale(1.05)}.project-image[alt]:after{content:attr(alt);background:var(--card-bg);width:100%;height:100%;color:var(--text-light);text-align:center;padding:var(--spacing-md);justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;top:0;left:0}.project-image:not([src]),.project-image[src=""],.project-image[src=\#]{background:linear-gradient(135deg, var(--gunmetal-gray) 0%, var(--card-bg) 100%);min-height:250px}.project-content{padding:var(--spacing-md)}.project-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);display:flex}.project-title{color:var(--text-dark);flex:1;margin:0;font-family:Orbitron,sans-serif;font-size:1.25rem;font-weight:700;line-height:1.3}.project-service-badge{background:linear-gradient(135deg, var(--primary-color), var(--accent-color));color:#fff;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;box-shadow:0 2px 10px #00e5ff4d}.project-meta{gap:var(--spacing-md);margin:var(--spacing-sm) 0;color:var(--text-light);font-size:.9rem;display:flex}.project-meta-item{align-items:center;gap:.25rem;display:flex}.project-description{color:var(--text-light);margin-top:var(--spacing-sm);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.6;display:-webkit-box;overflow:hidden}.project-modal .modal-content{background:var(--gunmetal-gray);max-width:1200px;padding:0}.project-modal-content{position:relative}.project-modal-close{z-index:10;border:1px solid var(--primary-color);color:var(--text-dark);cursor:pointer;width:40px;height:40px;transition:var(--transition);background:#0a0a0acc;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:absolute;top:1rem;right:1rem}.project-modal-close:hover{background:var(--primary-color);transform:rotate(90deg)}.project-modal-body{gap:var(--spacing-lg);display:flex}.project-modal-image-container{background:var(--jet-black);flex:1.5;justify-content:center;align-items:center;max-height:600px;display:flex;position:relative;overflow:hidden}.project-modal-image{object-fit:contain;background:var(--jet-black);width:100%;height:100%;max-height:600px}.project-modal-image:not([src]),.project-modal-image[src=""]{background:linear-gradient(135deg, var(--gunmetal-gray), var(--jet-black));justify-content:center;align-items:center;min-height:400px;display:flex}.project-nav-btn{border:1px solid var(--primary-color);color:var(--text-dark);cursor:pointer;transition:var(--transition);border-radius:var(--border-radius);z-index:5;background:#0a0a0ab3;padding:1rem;font-size:1.5rem;position:absolute;top:50%;transform:translateY(-50%)}.project-nav-btn:hover{background:var(--primary-color);transform:translateY(-50%)scale(1.1)}.project-nav-prev{left:1rem}.project-nav-next{right:1rem}.project-modal-details{padding:var(--spacing-lg);gap:var(--spacing-md);flex-direction:column;flex:1;display:flex}.project-modal-details .project-service-badge{align-self:flex-start;padding:.5rem 1rem;font-size:.85rem}.project-modal-details h2,.project-modal-title{color:var(--text-dark);margin:0;font-family:Orbitron,sans-serif;font-size:1.75rem;line-height:1.3}.project-modal-meta{gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--card-bg);border-radius:var(--border-radius);border-left:3px solid var(--primary-color);flex-direction:column;display:flex}.meta-label{color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px;margin-right:.5rem;font-size:.85rem;font-weight:700}.project-modal-description{color:var(--text-light);font-size:1.05rem;line-height:1.8}.breadcrumb-nav{padding:.5rem var(--spacing-md);background:#0a0a0a80;border-top:1px solid #4169b833}.breadcrumb{flex-wrap:wrap;align-items:center;gap:.5rem;max-width:1200px;margin:0 auto;padding:0;list-style:none;display:flex}.breadcrumb-item{align-items:center;font-family:Rajdhani,sans-serif;font-size:.875rem;display:flex}.breadcrumb-item+.breadcrumb-item:before{content:"›";color:var(--ice-silver);opacity:.6;margin-right:.5rem}.breadcrumb-item a{color:var(--ice-silver);transition:var(--transition);border-radius:4px;padding:.25rem .5rem;text-decoration:none}.breadcrumb-item a:hover{color:var(--electric-cyan);background:#4169b81a}.breadcrumb-item.active span{color:var(--text-dark);font-weight:600}@media (width<=768px){.breadcrumb-nav{padding:.5rem var(--spacing-sm)}.breadcrumb{font-size:.75rem}}.service-links{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid #4169b833}.service-link{color:var(--electric-cyan);transition:var(--transition);align-items:center;padding:.5rem 0;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.service-link:hover{color:var(--primary-color);transform:translate(5px)}.contextual-links{margin-top:var(--spacing-lg);padding:var(--spacing-lg);border-radius:var(--border-radius);border-left:3px solid var(--primary-color);background:#2a34394d}.contextual-intro{margin-bottom:var(--spacing-md);color:var(--text-dark);font-size:1.05rem;font-weight:600}.contextual-link-grid{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.contextual-link{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);color:var(--ice-silver);text-align:center;transition:var(--transition);background:#4169b81a;border:1px solid #4169b84d;font-weight:600;text-decoration:none;display:block}.contextual-link:hover{border-color:var(--electric-cyan);color:var(--electric-cyan);background:#4169b833;transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}@media (width<=768px){.contextual-link-grid{grid-template-columns:1fr}}.nap-widget{border:2px solid var(--electric-cyan,#00e5ff);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#141e30f2 0%,#243b55f2 100%);border-radius:12px;margin:2rem 0;padding:2rem;box-shadow:0 10px 40px #00e5ff33}.nap-widget--compact{padding:1.5rem}.nap-widget__content{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=768px){.nap-widget__content{grid-template-columns:1fr 1fr}}.nap-widget__section{flex-direction:column;gap:1.5rem;display:flex}.nap-widget__title{color:var(--electric-cyan,#00e5ff);text-transform:uppercase;letter-spacing:2px;margin:0 0 1rem;font-family:Orbitron,sans-serif;font-size:1.5rem}.nap-widget__item{align-items:flex-start;gap:1rem;display:flex}.nap-widget__icon{filter:drop-shadow(0 0 8px #00e5ff80);flex-shrink:0;margin-top:.25rem;font-size:1.5rem}.nap-widget__details{flex:1}.nap-widget__details strong{color:var(--ice-silver,#e8f1f5);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;font-family:Rajdhani,sans-serif;font-size:1rem;font-weight:700;display:block}.nap-widget__details p{color:var(--text-light,#a0aec0);margin:0;line-height:1.6}.nap-widget__link{color:var(--ice-silver,#e8f1f5);line-height:1.6;text-decoration:none;transition:all .3s;display:inline-block}.nap-widget__link:hover{color:var(--electric-cyan,#00e5ff);text-shadow:0 0 10px #00e5ff80;transform:translate(2px)}.nap-widget__availability{font-weight:600;color:var(--electric-cyan,#00e5ff)!important;margin-top:.5rem!important}.nap-widget__map{border-radius:8px;position:relative;overflow:hidden;box-shadow:0 5px 20px #0000004d}.nap-widget__map iframe{border:none;border-radius:8px;width:100%;height:300px}.nap-widget__directions{background:var(--electric-cyan,#00e5ff);color:var(--background-dark,#0a0e27);text-transform:uppercase;letter-spacing:1px;border-radius:6px;margin-top:1rem;padding:.75rem 1.5rem;font-family:Rajdhani,sans-serif;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:0 0 20px #00e5ff4d}.nap-widget__directions:hover{background:var(--ice-silver,#e8f1f5);transform:translateY(-2px);box-shadow:0 0 30px #00e5ff99}.nap-widget--dark{border-color:var(--steel-gray,#4169b8);background:linear-gradient(135deg,#0a0e27fa 0%,#141e30fa 100%)}.nap-inline{color:var(--ice-silver,#e8f1f5);align-items:center;gap:.5rem;font-family:Rajdhani,sans-serif;display:inline-flex}.nap-inline__icon{font-size:1rem}.nap-inline__text{color:inherit;text-decoration:none}.nap-inline__text:hover{color:var(--electric-cyan,#00e5ff)}@media (width<=767px){.nap-widget{padding:1.5rem}.nap-widget__content{gap:1.5rem}.nap-widget__title{font-size:1.25rem}.nap-widget__map iframe{height:250px}}.location-section{padding:var(--spacing-xl,4rem) 0;background:linear-gradient(135deg,#0a0e27f2 0%,#141e30f2 100%);border-top:2px solid #00e5ff33;margin:2rem 0}.location-title{color:var(--electric-cyan,#00e5ff);text-align:center;text-transform:uppercase;letter-spacing:2px;text-shadow:0 0 20px #00e5ff80;margin-bottom:1rem;font-family:Orbitron,sans-serif;font-size:2.5rem}.location-description{text-align:center;color:var(--ice-silver,#e8f1f5);max-width:800px;margin:0 auto 3rem;font-size:1.125rem;line-height:1.8}.location-content{grid-template-columns:1fr;gap:3rem;margin-bottom:3rem;display:grid}@media (width>=768px){.location-content{grid-template-columns:1fr 1fr}}.location-services h3,.location-coverage h3{color:var(--electric-cyan,#00e5ff);text-transform:uppercase;letter-spacing:1px;margin-bottom:1.5rem;font-family:Rajdhani,sans-serif;font-size:1.5rem;font-weight:700}.location-services-list{gap:1rem;padding:0;list-style:none;display:grid}.location-service-item{border-left:3px solid var(--electric-cyan,#00e5ff);color:var(--ice-silver,#e8f1f5);background:#4169b81a;border-radius:4px;align-items:center;gap:1rem;padding:1rem;font-family:Rajdhani,sans-serif;font-size:1.125rem;transition:all .3s;display:flex}.location-service-item:hover{background:#4169b833;transform:translate(5px);box-shadow:0 0 15px #00e5ff4d}.service-check{color:var(--electric-cyan,#00e5ff);flex-shrink:0;font-size:1.5rem;font-weight:700}.coverage-tags{flex-wrap:wrap;gap:1rem;display:flex}.coverage-tag{border:1px solid var(--electric-cyan,#00e5ff);color:var(--ice-silver,#e8f1f5);text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#4169b833 0%,#00e5ff1a 100%);border-radius:25px;padding:.75rem 1.5rem;font-family:Rajdhani,sans-serif;font-size:.95rem;font-weight:600;transition:all .3s;display:inline-block;box-shadow:0 0 10px #00e5ff33}.coverage-tag:hover{background:var(--electric-cyan,#00e5ff);color:var(--background-dark,#0a0e27);transform:translateY(-2px);box-shadow:0 0 20px #00e5ff80}.location-cta{text-align:center;border:2px solid var(--electric-cyan,#00e5ff);background:#00e5ff0d;border-radius:12px;padding:2rem;box-shadow:0 0 30px #00e5ff33}.location-cta p{color:var(--ice-silver,#e8f1f5);margin-bottom:1.5rem;font-family:Rajdhani,sans-serif;font-size:1.25rem;font-weight:600}.service-areas-section{background:var(--background-dark,#0a0e27);padding:var(--spacing-xl,4rem) 0}.service-areas-title{color:var(--electric-cyan,#00e5ff);text-align:center;text-transform:uppercase;margin-bottom:1rem;font-family:Orbitron,sans-serif;font-size:2.5rem}.service-areas-subtitle{text-align:center;color:var(--ice-silver,#e8f1f5);margin-bottom:2rem;font-family:Rajdhani,sans-serif;font-size:1.25rem}.service-areas-grid{grid-template-columns:1fr;gap:2rem;margin-top:3rem;display:grid}@media (width>=768px){.service-areas-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.service-areas-grid{grid-template-columns:repeat(4,1fr)}}.area-card{text-align:center;cursor:pointer;background:linear-gradient(135deg,#141e30cc 0%,#243b5599 100%);border:2px solid #4169b84d;border-radius:12px;padding:2rem;transition:all .3s}.area-card:hover{border-color:var(--electric-cyan,#00e5ff);transform:translateY(-5px);box-shadow:0 0 30px #00e5ff4d}.area-card h3{color:var(--electric-cyan,#00e5ff);margin-bottom:.5rem;font-family:Orbitron,sans-serif;font-size:1.5rem}.area-card .province{color:var(--ice-silver,#e8f1f5);opacity:.8;margin-bottom:1rem;font-family:Rajdhani,sans-serif;font-size:1rem}.area-card p{color:var(--text-light,#a0aec0);font-size:.95rem;line-height:1.6}@media (width<=767px){.location-title{font-size:1.75rem}.location-content{gap:2rem}.coverage-tags{gap:.5rem}.coverage-tag{padding:.5rem 1rem;font-size:.875rem}}.google-review-widget{background:linear-gradient(135deg,#fffffffa 0%,#f8f9fafa 100%);border:2px solid #4285f4;border-radius:12px;margin:2rem 0;padding:2rem;box-shadow:0 10px 40px #4285f433}.google-review-widget--dark{background:linear-gradient(135deg,#141e30f2 0%,#243b55f2 100%);border-color:#4285f4}.google-review-widget__content{flex-direction:column;gap:1.5rem;display:flex}.google-review-widget__header{border-bottom:2px solid #4285f433;align-items:center;gap:1.5rem;padding-bottom:1.5rem;display:flex}.google-logo{flex-shrink:0}.google-review-rating{flex:1}.rating-number{color:#4285f4;margin-bottom:.5rem;font-size:3rem;font-weight:700;line-height:1}.google-review-widget--dark .rating-number{color:#00e5ff}.rating-stars{color:#fbbc05;letter-spacing:2px;margin-bottom:.5rem;font-size:1.5rem}.rating-count{color:#5f6368;font-size:1rem;font-weight:500}.google-review-widget--dark .rating-count{color:#a0aec0}.google-review-stats{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.stat-item{text-align:center;background:#4285f40d;border-radius:8px;padding:1rem}.google-review-widget--dark .stat-item{background:#00e5ff1a}.stat-value{color:#4285f4;margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.google-review-widget--dark .stat-value{color:#00e5ff}.stat-label{color:#5f6368;text-transform:uppercase;letter-spacing:.5px;font-size:.875rem}.google-review-widget--dark .stat-label{color:#a0aec0}.google-review-actions{flex-direction:column;gap:1rem;display:flex}.google-review-button{color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.5px;background:#4285f4;border-radius:8px;padding:1rem 2rem;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s;display:block;box-shadow:0 4px 15px #4285f44d}.google-review-button:hover{background:#3367d6;transform:translateY(-2px);box-shadow:0 6px 20px #4285f480}.google-review-widget--dark .google-review-button{color:#0a0e27;background:#00e5ff}.google-review-widget--dark .google-review-button:hover{background:#00c4d7}.google-profile-link{text-align:center;color:#4285f4;font-weight:600;text-decoration:none;transition:all .3s;display:block}.google-profile-link:hover{color:#3367d6;text-decoration:underline}.google-review-widget--dark .google-profile-link{color:#00e5ff}.google-review-widget--dark .google-profile-link:hover{color:#00c4d7}.gbp-badge{color:#5f6368;background:#fff;border:1px solid #e8eaed;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex;box-shadow:0 2px 8px #0000001a}.gbp-badge:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.gbp-badge svg{width:20px;height:20px}.gbp-verification-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#4285f4 0%,#34a853 100%);border-radius:25px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:700;display:inline-flex;box-shadow:0 4px 15px #4285f44d}.gbp-verification-badge:before{content:"✓";font-size:1.25rem;font-weight:700}@media (width<=767px){.google-review-widget{padding:1.5rem}.google-review-widget__header{text-align:center;flex-direction:column}.rating-number{font-size:2.5rem}.google-review-stats{grid-template-columns:1fr}.google-review-actions{gap:.75rem}}img[loading=lazy],img[data-src]{opacity:0;transition:opacity .3s ease-in}img.lazy-loading{opacity:.5;filter:blur(5px)}img.lazy-loaded{opacity:1;filter:blur()}img.lazy-error{opacity:.3;border:2px dashed #f44}.image-wrapper{background-color:#0000000d;position:relative;overflow:hidden}.aspect-16-9{aspect-ratio:16/9}.aspect-4-3{aspect-ratio:4/3}.aspect-1-1{aspect-ratio:1}.aspect-3-2{aspect-ratio:3/2}@supports not (aspect-ratio:1 / 1){.aspect-16-9{padding-bottom:56.25%}.aspect-4-3{padding-bottom:75%}.aspect-1-1{padding-bottom:100%}.aspect-3-2{padding-bottom:66.67%}.aspect-16-9 img,.aspect-4-3 img,.aspect-1-1 img,.aspect-3-2 img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}}img{max-width:100%;height:auto;display:block}.image-placeholder{background:linear-gradient(90deg,#0000000f 0%,#0000001f 50%,#0000000f 100%) 0 0/200% 100%;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.blur-up-wrapper{width:100%;display:inline-block;position:relative;overflow:hidden}.blur-up-placeholder{filter:blur(20px);opacity:1;z-index:1;width:100%;height:100%;transition:opacity .4s;position:absolute;top:0;left:0;transform:scale(1.1)}.blur-up-img{z-index:2;opacity:0;transition:opacity .4s;position:relative}.blur-up-img.loaded{opacity:1}.blur-up-img.loaded~.blur-up-placeholder{opacity:0}.img-cover{object-fit:cover}.img-contain{object-fit:contain}.img-fill{object-fit:fill}.img-scale-down{object-fit:scale-down}.img-center{object-position:center}.img-top{object-position:top}.img-bottom{object-position:bottom}.img-left{object-position:left}.img-right{object-position:right}img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in-image{animation:.5s ease-in fadeIn}img[data-priority=high]{opacity:1;transition:none}img[loading=lazy]{content-visibility:auto}img.lazy-error:after{content:"⚠️ Image failed to load";color:#f44;text-align:center;background:#ffffffe6;border-radius:4px;padding:1rem;font-size:.875rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media print{img[loading=lazy]{opacity:1!important;filter:none!important}}@media (prefers-reduced-motion:reduce){img,.blur-up-placeholder,.blur-up-img{transition:none!important;animation:none!important}}@media (prefers-color-scheme:dark){img:not([data-no-dark-mode]){opacity:.9}img.lazy-loading{opacity:.4}}
