*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #e30613;--color-primary-dark: #b30510;--color-primary-light: #ff0716;--color-dark: #1A1A1A;--color-gray-900: #2D2D2D;--color-gray-800: #3D3D3D;--color-gray-700: #4D4D4D;--color-gray-600: #6D6D6D;--color-gray-400: #9D9D9D;--color-gray-300: #CDCDCD;--color-gray-200: #E5E5E5;--color-gray-100: #F5F5F5;--color-white: #FFFFFF;--gradient-primary: linear-gradient(135deg, #e30613 0%, #b30510 100%);--gradient-dark: linear-gradient(135deg, #1A1A1A 0%, #2D2D2D 100%);--gradient-overlay: linear-gradient(180deg, rgba(0, 0, 0, .7) 0%, rgba(0, 0, 0, .3) 100%);--font-heading: "Montserrat", sans-serif;--font-body: "Open Sans", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--transition-fast: .15s ease-in-out;--transition-base: .3s ease-in-out;--transition-slow: .5s ease-in-out}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--color-dark);background-color:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{margin-bottom:var(--spacing-md)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}img{max-width:100%;height:auto;display:block}button{font-family:var(--font-heading);cursor:pointer;border:none;outline:none}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-2xl)}.container-fluid{width:100%;padding:0 var(--spacing-lg)}.section{padding:var(--spacing-3xl) 0}.text-center{text-align:center}.text-primary{color:var(--color-primary)}.bg-primary{background-color:var(--color-primary)}.bg-dark{background-color:var(--color-dark)}.bg-light{background-color:var(--color-gray-100)}.btn{display:inline-block;padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-base);font-weight:600;text-align:center;border-radius:var(--radius-md);transition:all var(--transition-base);cursor:pointer;border:none}.btn-primary{background:var(--gradient-primary);color:var(--color-white);box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);color:var(--color-white)}.btn-secondary{background-color:var(--color-white);color:var(--color-dark);border:2px solid var(--color-gray-300)}.btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.btn-outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-white)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes carouselSlide{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes infiniteScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn .6s ease-in-out}.animate-slideUp{animation:slideUp .6s ease-out}.animate-slideInLeft{animation:slideInLeft .6s ease-out}.animate-slideInRight{animation:slideInRight .6s ease-out}@media (max-width: 1024px){:root{--text-5xl: 2.5rem;--text-4xl: 2rem;--text-3xl: 1.75rem}.container{padding:0 var(--spacing-md)}.section{padding:var(--spacing-2xl) 0!important}}@media (max-width: 768px){:root{--text-5xl: 2rem;--text-4xl: 1.75rem;--text-3xl: 1.5rem;--text-2xl: 1.25rem}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}.btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--text-sm)}}.glass{background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.glass-dark{background:#00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.card{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-base)}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl)}input,select,textarea{width:100%;padding:var(--spacing-md);font-family:var(--font-body);font-size:var(--text-base);border:2px solid var(--color-gray-300);border-radius:var(--radius-md);transition:border-color var(--transition-fast);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--color-primary)}input.error,select.error,textarea.error{border-color:var(--color-primary)}.error-message{color:var(--color-primary);font-size:var(--text-sm);margin-top:var(--spacing-xs)}.spinner{width:40px;height:40px;border:4px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[appScrollReveal]{transition:opacity 1.2s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.4,0,.2,1)!important;will-change:opacity,transform}.reveal-hidden{opacity:0!important;transform:translateY(50px)!important}.reveal-active{opacity:1!important;transform:translateY(0)!important}.highlight{color:#e30613!important}
