:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #c4001c;--secondary: #8B0000;--dark: #000000;--nav-bg: #000000;--light: #FFFFFF;--gray-light: #F8F9FA;--gray: #6C757D;--gradient-primary: linear-gradient(135deg, #c4001c 0%, #8B0000 100%);--gradient-dark: linear-gradient(135deg, #000000 0%, #1a1a1a 100%);--shadow-sm: 0 2px 4px rgba(196, 0, 28, .15);--shadow-md: 0 4px 12px rgba(196, 0, 28, .2);--shadow-lg: 0 8px 32px rgba(196, 0, 28, .25);--shadow-xl: 0 16px 48px rgba(196, 0, 28, .3);--radius: 12px;--radius-lg: 20px;--transition: all .3s cubic-bezier(.4, 0, .2, 1);--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 4rem}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--dark);line-height:1.6;overflow-x:hidden;background:var(--dark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;max-width:100%;margin:0;padding:0}.nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fff;transition:var(--transition);box-shadow:0 2px 12px #00000014;border-bottom:1px solid rgba(196,0,28,.1)}.nav.scrolled{box-shadow:0 4px 16px #0000001f}.nav-container{max-width:1400px;margin:0 auto;padding:.25rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.nav-logo{display:flex;align-items:center;text-decoration:none;z-index:1002;flex-shrink:0}.nav-logo img{height:50px;width:auto;display:block}.nav-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000;pointer-events:none;transition:background .3s;z-index:999}.nav-overlay.active{background:#00000080;pointer-events:all}.nav-menu{position:fixed;left:-100%;top:0;height:100vh;width:85%;max-width:320px;background:#fff;flex-direction:column;padding:8rem 2rem 2rem;gap:.5rem;transition:.3s;box-shadow:2px 0 20px #00000026;overflow-y:auto;list-style:none;z-index:1001;display:flex}.nav-menu.active{left:0}.nav-menu li{width:100%}.nav-link{color:var(--dark);text-decoration:none;font-weight:600;font-size:1.125rem;padding:1rem;display:block;transition:var(--transition);position:relative;border-radius:8px}.nav-link:active{color:var(--primary);background:#c4001c0d}.nav-cta{background:var(--gradient-primary);color:var(--light);padding:1rem 1.5rem;border-radius:50px;text-decoration:none;font-weight:700;font-size:1rem;transition:var(--transition);box-shadow:var(--shadow-sm);display:block;text-align:center;margin-top:1rem}.nav-toggle{background:none;border:none;cursor:pointer;padding:.75rem;display:flex;flex-direction:column;gap:5px;z-index:1002;border-radius:8px;transition:var(--transition)}.nav-toggle:active{background:#c4001c1a}.nav-toggle span{display:block;width:26px;height:3px;background:var(--dark);transition:var(--transition);border-radius:2px}.nav-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:7rem 1rem 3rem;position:relative;overflow:hidden}@media (min-width: 768px){.hero{padding:8rem 2rem 4rem}}@media (min-width: 1024px){.hero{padding:9rem 3rem 5rem}}.hero-bg{position:absolute;inset:0;background:var(--gradient-dark);z-index:-2}.hero-pattern{position:absolute;inset:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23000000' fill-opacity='1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");z-index:-1}.hero-container{width:100%;max-width:1200px;margin:0 auto;text-align:center}.hero-content{z-index:1}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:#c4001c1a;color:var(--primary);padding:.5rem 1rem;border-radius:50px;font-size:.75rem;font-weight:600;margin-bottom:1rem}.hero-title{font-size:clamp(2rem,5vw,4rem);font-weight:900;line-height:1.1;margin-bottom:1rem;color:var(--light)}.hero-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-description{font-size:1rem;color:#fffc;margin-bottom:2rem;line-height:1.6;padding:0 1rem}.hero-buttons{display:flex;flex-direction:column;gap:1rem;padding:0 1rem}.btn{padding:1rem 2rem;border-radius:50px;text-decoration:none;font-weight:600;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:1rem;width:100%;-webkit-tap-highlight-color:transparent}.btn-primary{background:var(--gradient-primary);color:var(--light);box-shadow:var(--shadow-md)}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:transparent;color:var(--light);border:2px solid var(--light)}.btn-secondary:active{border-color:var(--primary);color:var(--primary)}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem;padding:0 1rem}.stat-item{text-align:center}.stat-number{font-size:1.75rem;font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.stat-label{color:#ffffffb3;font-size:.75rem;margin-top:.25rem}.hero-visual{display:none}.section{padding:3rem 1rem;background:var(--light)}.section-dark{background:var(--gradient-dark);color:var(--light)}.section-gray{background:var(--gray-light)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}@media (min-width: 768px){.container{padding:0 2rem}}@media (min-width: 1024px){.container{padding:0 3rem}}@media (min-width: 1440px){.container{padding:0}}.section-header{text-align:center;margin-bottom:2rem}.section-badge{display:inline-flex;align-items:center;gap:.5rem;background:#c4001c1a;color:var(--primary);padding:.5rem 1rem;border-radius:50px;font-size:.75rem;font-weight:600;margin-bottom:.75rem}.section-title{font-size:clamp(1.75rem,4vw,3rem);font-weight:800;margin-bottom:.75rem;line-height:1.2}.section-description{font-size:1rem;color:var(--gray);max-width:600px;margin:0 auto;padding:0 1rem}.section-dark .section-description{color:#fffc}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}@media (min-width: 640px){.services-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}}.service-card{background:var(--light);padding:2rem 1.5rem;border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:var(--transition);position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);transform:scaleX(0);transform-origin:left;transition:var(--transition)}.service-card:active{transform:scale(.98)}.service-card:active:before{transform:scaleX(1)}.service-icon{width:48px;height:48px;background:var(--gradient-primary);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin-bottom:1rem}.service-title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem;color:var(--dark)}.service-description{color:var(--gray);line-height:1.6;margin-bottom:1rem;font-size:.95rem}.service-features{list-style:none}.service-features li{padding:.5rem 0 .5rem 1.5rem;position:relative;color:var(--gray);font-size:.9rem}.service-features li:before{content:"✓";position:absolute;left:0;color:var(--primary);font-weight:700}.stats-section{padding:3rem 1rem;background:var(--gradient-primary);color:var(--light)}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:600px;margin:0 auto}.stat-card{text-align:center;padding:1.5rem 1rem;background:#ffffff1a;border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-card h3{font-size:2rem;font-weight:800;margin-bottom:.5rem}.stat-card p{font-size:.875rem;opacity:.9}.map-container{width:100%;margin:2rem 0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);position:relative;padding-bottom:75%;height:0;background:#ffffff0d}.location-map{position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-radius:var(--radius-lg)}.location-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}.location-stat-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);padding:1.5rem 1rem;border-radius:var(--radius);text-align:center;transition:var(--transition)}.location-stat-card:active{transform:scale(.98);background:#ffffff14}.location-stat-icon{font-size:2rem;margin-bottom:.5rem}.location-stat-number{font-size:1.75rem;font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.5rem}.location-stat-label{color:#ffffffb3;font-size:.875rem}@media (min-width: 640px){.location-stats{grid-template-columns:repeat(4,1fr);gap:1.5rem}.location-stat-card{padding:2rem 1.5rem}.location-stat-number{font-size:2rem}}@media (min-width: 768px){.map-container{padding-bottom:56.25%}.location-stat-card:hover{transform:translateY(-4px);background:#ffffff1a;box-shadow:var(--shadow-md)}}@media (min-width: 1024px){.map-container{padding-bottom:50%}}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}@media (min-width: 640px){.portfolio-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:2rem}}.portfolio-item{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--dark);aspect-ratio:16/9;cursor:pointer}.portfolio-image{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.portfolio-item:active .portfolio-image{transform:scale(1.05);opacity:.7}.portfolio-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,14,39,.9) 0%,transparent 50%);display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;opacity:0;transition:var(--transition)}.portfolio-item:active .portfolio-overlay{opacity:1}.portfolio-title{color:var(--light);font-size:1.25rem;font-weight:700;margin-bottom:.5rem;transform:translateY(20px);transition:var(--transition)}.portfolio-category{color:var(--primary);font-size:.813rem;font-weight:600;transform:translateY(20px);transition:var(--transition)}.portfolio-item:active .portfolio-title,.portfolio-item:active .portfolio-category{transform:translateY(0)}.testimonials-slider{max-width:600px;margin:0 auto}.testimonial-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);padding:2rem 1.5rem;border-radius:var(--radius);box-shadow:var(--shadow-md);text-align:center}.testimonial-text{font-size:1rem;line-height:1.6;color:var(--light);margin-bottom:1.5rem;font-style:italic}.testimonial-author{display:flex;align-items:center;justify-content:center;gap:1rem}.author-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.author-info{text-align:left}.author-name{font-weight:700;color:var(--light);margin-bottom:.25rem;font-size:.95rem}.author-title{color:#ffffffb3;font-size:.813rem}.clients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-top:2rem;padding:1.5rem;background:var(--gray-light);border-radius:var(--radius)}@media (min-width: 480px){.clients-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem}}.client-logo{filter:grayscale(100%) opacity(.6);transition:var(--transition);height:40px;width:100%;object-fit:contain;padding:.5rem}.client-logo:active{filter:grayscale(0%) opacity(1);transform:scale(.95)}.about-section{padding:3rem 1rem}.about-content{max-width:800px;margin:0 auto;text-align:center}.about-image{width:100%;max-width:400px;margin:2rem auto;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.about-image img{width:100%;height:auto;display:block}.about-text{margin-top:2rem}.about-text p{color:var(--gray);line-height:1.8;margin-bottom:1rem}.contact-section{padding:3rem 1rem;background:var(--gradient-dark);color:var(--light)}.contact-grid{display:grid;grid-template-columns:1fr;gap:3rem}.contact-info{text-align:center}.contact-item{display:flex;align-items:start;gap:1rem;margin-bottom:1.5rem;text-align:left}.contact-icon{width:44px;height:44px;background:#ffffff1a;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.25rem}.contact-details h3{margin-bottom:.5rem;font-size:1.125rem}.contact-details p{color:#fffc;font-size:.95rem}.contact-form{background:#ffffff0d;padding:2rem 1.5rem;border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.form-group{margin-bottom:1.25rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.95rem}.form-input,.form-textarea{width:100%;padding:.875rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);color:var(--light);font-size:1rem;transition:var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary);background:#ffffff26}.form-textarea{resize:vertical;min-height:100px}.form-button{width:100%;padding:1rem 2rem;background:var(--gradient-primary);color:var(--light);border:none;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-button:active{transform:scale(.98)}.footer{background:var(--dark);color:var(--light);padding:2rem 1rem 1rem}.footer-content{max-width:1200px;margin:0 auto;text-align:center}.footer-section{margin-bottom:2rem}.footer-section h3{margin-bottom:1rem;font-size:1.125rem}.footer-links{list-style:none;margin-bottom:1.5rem}.footer-links li{margin-bottom:.75rem}.footer-links a{color:#ffffffb3;text-decoration:none;transition:var(--transition);font-size:.95rem}.footer-links a:active{color:var(--primary)}.social-links{display:flex;gap:1rem;justify-content:center;margin-top:1rem}.social-link{width:44px;height:44px;background:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--light);text-decoration:none;transition:var(--transition)}.social-link:active{background:var(--primary);transform:scale(.95)}.footer-bottom{text-align:center;padding-top:1.5rem;margin-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);color:#ffffff80;font-size:.813rem}@media (min-width: 768px){:root{--radius: 16px;--radius-lg: 24px}.nav-container{padding:.5rem 2rem;max-width:1400px;margin:0 auto}.nav-logo img{height:55px}.nav-menu{position:static!important;width:auto!important;height:auto!important;background:transparent!important;flex-direction:row!important;padding:0!important;box-shadow:none!important;display:flex!important;gap:1.5rem!important;align-items:center!important;justify-content:flex-end!important;flex:1!important;margin:0!important;left:auto!important}.nav-menu li{width:auto!important;display:block!important;visibility:visible!important;opacity:1!important}.nav-link{font-size:.95rem!important;padding:.5rem 0!important;font-weight:600!important;color:var(--dark)!important;border-radius:0!important;display:block!important;visibility:visible!important}.nav-link:hover{color:var(--primary);background:transparent}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:3px;background:var(--primary);transition:var(--transition)}.nav-link:hover:after{width:100%}.nav-cta{margin-top:0;padding:.6rem 1.5rem;font-size:.95rem;white-space:nowrap}.nav-cta:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.nav-toggle{display:none}.hero{padding:8rem 2rem 4rem}.hero-description{font-size:1.125rem;padding:0}.hero-buttons{flex-direction:row;justify-content:center;padding:0}.btn{width:auto}.btn:hover{transform:translateY(-2px)}.btn-primary:hover{box-shadow:var(--shadow-lg)}.btn-secondary:hover{border-color:var(--primary);color:var(--primary)}.hero-stats{max-width:600px;margin:3rem auto 0;gap:2rem}.stat-number{font-size:2.5rem}.stat-label{font-size:.875rem}.section{padding:4rem 2rem}.section-header{margin-bottom:3rem}.section-description{font-size:1.125rem}.service-card{padding:2.5rem}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.service-card:hover:before{transform:scaleX(1)}.stats-grid{grid-template-columns:repeat(4,1fr);max-width:1000px}.portfolio-item:hover .portfolio-image{transform:scale(1.05);opacity:.7}.portfolio-item:hover .portfolio-overlay{opacity:1}.portfolio-item:hover .portfolio-title,.portfolio-item:hover .portfolio-category{transform:translateY(0)}.testimonial-card{padding:3rem}.testimonial-text{font-size:1.125rem}.client-logo{height:50px}.client-logo:hover{filter:grayscale(0%) opacity(1);transform:scale(1.1)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;text-align:left}.about-image{margin:0}.contact-grid{grid-template-columns:1fr 1fr;gap:4rem}.contact-form{padding:3rem}.form-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.footer{padding:3rem 2rem 1.5rem}.footer-content{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;text-align:left;margin-bottom:2rem}.social-links{justify-content:flex-start}}@media (min-width: 1024px){.nav-container{padding:.5rem 3rem}.nav-logo img{height:60px}.nav-menu{gap:2rem}.nav-link{font-size:.98rem}.hero-container{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;text-align:left}.hero-description{font-size:1.25rem}.hero-buttons{justify-content:flex-start}.hero-visual{display:block;position:relative}.hero-image{width:100%;height:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl)}.floating-card{position:absolute;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);padding:1.5rem;border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:float 3s ease-in-out infinite;color:var(--light)}.floating-card-1{top:10%;right:-5%;animation-delay:0s}.floating-card-2{bottom:10%;left:-5%;animation-delay:1s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.footer-content{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1440px){.nav-container{padding:.5rem 4rem}.nav-logo img{height:65px}.nav-menu{gap:2.5rem}.nav-link{font-size:1rem}.nav-cta{padding:.65rem 1.75rem;font-size:.98rem}.container{max-width:1280px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (hover: none) and (pointer: coarse){.nav-link,.btn,.service-card,.reference-item{-webkit-tap-highlight-color:transparent}.nav-link:active,.btn:active,.service-card:active,.reference-item:active{opacity:.9}}@media (prefers-contrast: high){:root{--primary: #e60020;--secondary: #990000;--shadow-sm: 0 1px 3px rgba(0,0,0,.2);--shadow-md: 0 4px 6px rgba(0,0,0,.3);--shadow-lg: 0 10px 20px rgba(0,0,0,.4)}}@media (prefers-color-scheme: dark){:root{--light: #0A0E27;--dark: #FFFFFF;--gray-light: #1A1F3A;--gray: #A0A4A8}body{background:var(--light);color:var(--dark)}}input[type=text],input[type=email],input[type=tel],textarea{font-size:16px}body.menu-open{overflow:hidden;position:fixed;width:100%}
