.m-0,body,h1,h2,h3,h4,h5,h6,p{margin:0}.container,.w-full{width:100%}.font-sans,html{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}*,.border-solid,::after,::before{border-style:solid}.transition,.transition-all{transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in-out,.transition,.transition-all{transition-timing-function:cubic-bezier(.4,0,.2,1)}.logo-item,.min-w-180{min-width:180px}:root{--color-primary:#E31837;--color-primary-hover:#FF1F4C;--color-dark:#2C1B47;--color-gold:#FFD700;--color-white:#FFF;--color-light-gray:#F8F9FA;--color-gray-50:#F9FAFB;--color-gray-100:#F3F4F6;--color-gray-200:#E5E7EB;--color-gray-300:#D1D5DB;--color-gray-600:#4B5563;--color-gray-700:#374151}html{line-height:1.5}body{font-family:inherit;line-height:inherit;color:var(--color-dark)}*,::after,::before{box-sizing:border-box;border-width:0}.container,.mx-auto{margin-left:auto;margin-right:auto}a{color:inherit;text-decoration:inherit}.container{padding-right:1rem;padding-left:1rem}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.block{display:block}.inline-block{display:inline-block}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.skip-link:focus,.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.top-1\/2{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-9999{z-index:9999}.w-4{width:1rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-12{width:3rem}.w-16{width:4rem}.h-full{height:100%}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-12{height:3rem}.h-16{height:4rem}.min-h-screen{min-height:100vh}.contact-link,.min-h-44,.whatsapp-badge{min-height:44px}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.problem-icon{flex-shrink:0}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center,.process-circle{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center,.justify-content-center{justify-content:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.gap-12{gap:3rem}.mt-8,.space-y-8>*+*{margin-top:2rem}.self-center{align-self:center}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.tracking-wider{letter-spacing:.05em}.mr-3,.problem-icon{margin-right:.75rem}.my-auto{margin-top:auto;margin-bottom:auto}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.contact-group.email,.mb-2,.phone-wrapper{margin-bottom:.5rem}.mt-4{margin-top:1rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-10{margin-bottom:2.5rem}.mt-12{margin-top:3rem}.-mt-32,.problem-section{margin-top:-8rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.-mb-16,.problem-section{margin-bottom:-4rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-20{padding-top:5rem;padding-bottom:5rem}.pt-24{padding-top:6rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-transparent{border-color:transparent}.border-white{border-color:#fff}.hero-btn-outline,.hero-btn-primary{border:2px solid var(--color-white)}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-4xl{font-size:2.25rem}.text-5xl{font-size:3rem}.leading-tight{line-height:1.25}.leading-normal,.problem-text{line-height:1.5}.bg-transparent{background-color:transparent}.bg-white{background-color:#fff}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.text-white{color:#fff}.text-gray-200{color:#e5e7eb}.text-gray-300{color:#d1d5db}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.object-cover{object-fit:cover}.object-contain{object-fit:contain}.shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,.1)}.shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.shadow-xl{box-shadow:0 20px 25px -5px rgba(0,0,0,.1)}.transition{transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform}.transition-all{transition-property:all}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.transform{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y:0px}.aspect-\[4\/3\]{aspect-ratio:4/3}.header-container{background-color:rgba(26,26,26,.98);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.brand-text{background:linear-gradient(90deg,var(--color-white) 30%,#e5e5e5 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:.3s}.brand-text:hover{background:linear-gradient(90deg,var(--color-white) 60%,var(--color-white) 100%);-webkit-background-clip:text;background-clip:text}.nav-button{background-color:var(--color-primary);color:var(--color-white);transition:.3s}.nav-button:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(227,24,55,.2)}.gradient-hero{background:linear-gradient(135deg,var(--color-dark) 0,var(--color-primary) 100%)}.heading-highlight{display:inline;background:linear-gradient(120deg,var(--color-gold) 0,var(--color-gold) 100%);background-repeat:no-repeat;background-size:100% .2em;background-position:0 88%;transition:background-size .25s ease-in}.heading-highlight:hover{background-size:100% .4em}.hero-btn-primary{background-color:var(--color-white);color:var(--color-primary);box-shadow:0 4px 6px rgba(0,0,0,.1);transition:.3s}.btn-primary,.hero-btn-outline{color:var(--color-white);transition:.3s}.hero-btn-primary:hover{background-color:var(--color-light-gray);transform:translateY(-2px);box-shadow:0 6px 15px rgba(255,255,255,.2)}.hero-btn-outline{background-color:transparent}.hero-btn-outline:hover{background-color:rgba(255,255,255,.15);transform:translateY(-2px)}.btn-primary{background-color:var(--color-primary);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.btn-primary:hover{background-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-hover)}.btn-outline{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary);transition:.3s}.btn-outline:hover{background-color:rgba(227,24,55,.05);transform:translateY(-2px)}.skip-link{position:fixed;top:-100%;left:0;padding:1rem;background-color:var(--color-primary);color:var(--color-white);z-index:100;transition:top .3s}#nextBtn,#prevBtn,.problem-card{background-color:var(--color-white)}.problem-section{padding:5rem 0;position:relative;z-index:10}.problem-card{border-radius:1.5rem;padding:3rem;box-shadow:var(--shadow-elevation);transition:transform .3s,box-shadow .3s}.problem-item{display:flex;align-items:flex-start;padding:1rem;border-radius:.5rem;transition:.3s;background-color:transparent}.problem-item:hover{background-color:var(--color-gray-50);transform:translateX(.5rem)}.problem-icon{color:var(--color-primary);transition:.3s;margin-top:.25rem}.problem-icon circle,.problem-icon path{stroke:currentColor;stroke-width:2}.problem-item:hover .problem-icon{color:var(--color-primary-hover);transform:scale(1.1) rotate(-10deg)}.problem-text{color:var(--color-gray-700);font-size:1.125rem;text-align:left}.category-tag{position:absolute;top:1rem;right:1rem;background:var(--color-primary);color:var(--color-white);padding:.5rem 1.5rem;border-radius:9999px;font-size:.875rem;font-weight:600;z-index:10;transition:.3s}.carousel-item:hover .category-tag,.gallery-item:hover .category-tag{background:var(--color-gold)}.carousel-container{position:relative;margin:0 auto;overflow:hidden;user-select:none;padding-left:5vw;padding-right:5vw}.carousel-track{display:flex;transition:transform .5s ease-out;cursor:grab}.carousel-track.dragging{cursor:grabbing;transition:none}.carousel-item{position:relative;flex-shrink:0;width:100%;padding:0 .75rem;pointer-events:auto}.carousel-item img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s;display:block;pointer-events:none}.carousel-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(44,27,71,.95),transparent);padding:2rem;opacity:0;transform:translateY(100%);transition:transform .4s,opacity .3s}.contact-card,.contact-link,.contact-section,.location-text,.process-circle,.process-item,.process-section{position:relative}.carousel-item:hover .carousel-overlay,.gallery-item:hover .gallery-overlay,.masonry-item:hover .masonry-overlay{opacity:1;transform:translateY(0)}.process-section{background-color:var(--color-gray-50);overflow:hidden}.process-item{padding:2rem;transition:transform .3s var(--transition-bounce)}.process-item:hover{transform:translateY(-8px)}.process-circle{width:4rem;height:4rem;border-radius:50%;background:var(--color-primary);color:var(--color-white);display:flex;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1.5rem;transition:all .3s var(--transition-bounce);box-shadow:0 4px 6px var(--color-shadow)}.process-item:hover .process-circle{transform:scale(1.1);background:var(--color-gold);box-shadow:0 8px 12px rgba(212,175,55,.2)}.process-title{color:var(--color-dark);font-size:1.25rem;font-weight:700;margin-bottom:1rem;transition:color .3s}.process-item:hover .process-title,.show-icons .problem-icon{color:var(--color-primary)}.process-description{color:var(--color-gray-600);line-height:1.6}.logo-slider-container{overflow:hidden;position:relative;width:100%;padding:0 20px;mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%)}.logo-track{display:inline-flex;align-items:center;will-change:transform;animation:60s linear infinite infinite-scroll}.logo-track:hover{animation-play-state:paused}.logo-item{flex:0 0 auto;padding:0 25px;display:flex;align-items:center;justify-content:center;height:120px}.logo-item img{max-height:80px;max-width:150px;width:auto;height:auto;object-fit:contain;opacity:.5;filter:grayscale(100%);transition:.3s}.logo-item img:hover{opacity:1;filter:grayscale(0)}.contact-section{background:linear-gradient(135deg,var(--color-dark) 0,#1a1a1a 100%);overflow:hidden}.contact-card{padding:3rem;background:rgba(255,255,255,.03);backdrop-filter:blur(20px);border-radius:1.5rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 6px -1px var(--color-shadow)}.contact-link{display:inline-block;color:var(--color-white);transition:.3s;padding:.625rem 0}.contact-link::after{content:'';position:absolute;width:100%;height:2px;bottom:0;left:0;background:linear-gradient(90deg,transparent,var(--color-gold),transparent);transform:scaleX(0);transform-origin:right;transition:transform .3s}.contact-link:hover::after{transform:scaleX(1);transform-origin:left}.contact-link:hover{color:var(--color-gold)}.contact-group{margin-bottom:1.25rem}.whatsapp-badge{background:rgba(37,211,102,.1);border:1px solid rgba(37,211,102,.2);color:#25d366;transition:background-color .3s,transform .3s,box-shadow .3s;display:inline-flex;align-items:center;text-decoration:none;padding:.5rem .75rem}.whatsapp-badge:hover{background:rgba(37,211,102,.2);transform:translateY(-1px);box-shadow:0 4px 6px rgba(37,211,102,.1)}.location-text{color:var(--color-gray-300);padding-top:1rem;margin-top:1rem}.location-text::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--color-gray-300),transparent)}.footer{background-color:#1a1a1a;border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;padding-bottom:1.5rem}.carousel-dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-gray-300);transition:.3s;cursor:pointer;border:none;padding:0;margin:0 4px}.carousel-dot.active{width:24px;border-radius:4px;background-color:var(--color-primary)}#nextBtn,#prevBtn{position:absolute;top:50%;transform:translateY(-50%);width:3rem;height:3rem;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:.3s}#prevBtn{left:10px}#nextBtn{right:10px}@keyframes infinite-scroll{0%{transform:translateX(0)}100%{transform:translateX(calc(-100%/2))}}img.lazy{opacity:0;transition:opacity .5s ease-in}img.lazy.loaded{opacity:1}.gallery-item img,.masonry-item img{transition:transform .5s}.gallery-item:hover img,.masonry-item:hover img{transform:scale(1.05)}.gallery-overlay,.masonry-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(44,27,71,.95),transparent);padding:2rem;opacity:0;transition:transform .4s,opacity .3s;transform:translateY(100%)}.portfolio-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;padding:0 1.5rem;margin:0 auto;max-width:1200px;align-items:start}.gallery-item{position:relative;overflow:hidden;border-radius:1rem;box-shadow:var(--shadow-card);transition:.4s}.gallery-item:hover{transform:translateY(-8px);box-shadow:var(--shadow-card-hover)}@media (max-width:768px){.button-container{flex-direction:column;gap:1rem}.hero-title{font-size:2.15rem!important}.category-tag,.footer-text{font-size:.75rem}.problem-section{margin-top:-4rem;padding:2rem 1rem}.problem-card{padding:2rem}.carousel-overlay{padding:1.5rem}.carousel-overlay h3{font-size:1.125rem}.carousel-overlay p{font-size:.875rem}.category-tag{padding:.375rem 1rem}}@media (min-width:768px){.md\:text-7xl{font-size:4.5rem}.md\:text-2xl{font-size:1.5rem}.md\:text-3xl{font-size:1.875rem}.md\:text-5xl{font-size:3rem}.md\:flex-row{flex-direction:row}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.carousel-item{width:50%}}@media (min-width:640px){.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-5xl{font-size:3rem}.sm\:text-xl{font-size:1.25rem}.sm\:text-lg{font-size:1.125rem}}@media (min-width:1024px){.lg\:text-6xl{font-size:3.75rem}.carousel-item{width:33.333%}}