:root{--primary-red:#C41E3A;--dark-red:#B22222;--dark-charcoal:#2C2C2C;--light-gray:#F5F5F5;--warm-gray:#666666;--white:#FFFFFF}.btn-primary{background-color:var(--primary-red);border-color:var(--primary-red)}.btn-primary:focus,.btn-primary:hover{background-color:var(--dark-red);border-color:var(--dark-red)}.text-primary{color:var(--primary-red)!important}.bg-primary{background-color:var(--primary-red)!important}body{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:var(--dark-charcoal)}h1,h2,h3,h4,h5,h6{color:var(--dark-charcoal)}.navbar{transition:all .3s ease}.navbar-brand{font-size:1.5rem}.navbar-nav .nav-link{font-weight:500;margin:0 .5rem;transition:color .3s ease}.navbar-nav .nav-link:hover{color:var(--primary-red)!important}.hero-section{background:linear-gradient(135deg,var(--primary-red) 0,var(--dark-red) 100%);min-height:100vh;padding-top:80px;position:relative}.hero-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.05)"/><circle cx="20" cy="80" r="0.5" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.hero-section .container{position:relative;z-index:1}.hero-section h1{color:var(--white);text-shadow:2px 2px 4px rgba(0,0,0,.3)}.hero-section .lead{color:rgba(255,255,255,.9);text-shadow:1px 1px 2px rgba(0,0,0,.3)}.btn-outline-light:hover{background-color:var(--white);border-color:var(--white);color:var(--primary-red)}.card{transition:transform .3s ease,box-shadow .3s ease;border:none;border-radius:10px}.card:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,.1)}.service-icon{transition:transform .3s ease}.card:hover .service-icon{transform:scale(1.1)}.card-title{color:var(--dark-charcoal)}.card-text{color:var(--warm-gray)}.about-section{background-color:var(--light-gray)}.about-section img{border:4px solid var(--white);box-shadow:0 10px 30px rgba(0,0,0,.1)}.values-section{background-color:var(--white)}.values-section .bg-primary{transition:transform .3s ease}.values-section .text-center:hover .bg-primary{transform:scale(1.1)}.contact-section{background-color:var(--light-gray)}.form-label{font-weight:600;color:var(--dark-charcoal);margin-bottom:.5rem}.form-control,.form-select{border:2px solid #e0e0e0;border-radius:8px;padding:.75rem;transition:border-color .3s ease,box-shadow .3s ease}.form-control:focus,.form-select:focus{border-color:var(--primary-red);box-shadow:0 0 0 .2rem rgba(196,30,58,.25)}.form-control.is-invalid{border-color:#dc3545}.form-control.is-valid{border-color:#28a745}.alert{border-radius:8px;border:none;font-weight:500}.alert-success{background-color:#d4edda;color:#155724}.alert-danger{background-color:#f8d7da;color:#721c24}.alert-warning{background-color:#fff3cd;color:#856404}footer{background-color:var(--dark-charcoal)!important}footer .text-muted{color:var(--warm-gray)!important}.text-muted{color:var(--warm-gray)!important}.bg-light{background-color:var(--light-gray)!important}.btn{border-radius:8px;font-weight:600;transition:all .3s ease}.btn-lg{padding:.75rem 2rem;font-size:1.1rem}.btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,0,0,.2)}@media (max-width:768px){.hero-section{padding-top:100px;text-align:center}.hero-section h1{font-size:2.5rem}.navbar-brand{font-size:1.2rem}.navbar-nav .nav-link{margin:.25rem 0}.display-4{font-size:2rem}.display-5{font-size:1.75rem}.lead{font-size:1.1rem}}@media (max-width:576px){.hero-section h1{font-size:2rem}.btn-lg{padding:.6rem 1.5rem;font-size:1rem}.card-body{padding:1.5rem}}html{scroll-behavior:smooth}section{scroll-margin-top:80px}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--light-gray)}::-webkit-scrollbar-thumb{background:var(--primary-red);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--dark-red)}.btn:focus,.form-control:focus,.form-select:focus{outline:2px solid var(--primary-red);outline-offset:2px}.navbar-nav .nav-link:focus{outline:2px solid var(--primary-red);outline-offset:2px;border-radius:4px}@media print{.btn,.navbar,footer{display:none!important}.hero-section{background:0 0!important;color:var(--dark-charcoal)!important;min-height:auto!important}.hero-section .lead,.hero-section h1{color:var(--dark-charcoal)!important}body{font-size:12pt;line-height:1.4}h1,h2,h3,h4,h5,h6{page-break-after:avoid}}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateY(0)}40%{transform:translateY(-5px)}60%{transform:translateY(-3px)}}.service-icon i{animation:bounce 2s infinite;animation-delay:calc(var(--i) * .1s)}.card-body:hover{background-color:rgba(196,30,58,.02)}.values-section .text-center:hover h5{color:var(--primary-red);transition:color .3s ease}.contact-section a:hover{color:var(--primary-red)!important;transition:color .3s ease}.was-validated .form-control:valid{border-color:#28a745}.was-validated .form-control:invalid{border-color:#dc3545}.btn:disabled{opacity:.6;cursor:not-allowed}.spinner-border-sm{width:1rem;height:1rem}.alert-success .fas{color:#28a745}.alert-danger .fas{color:#dc3545}.alert-warning .fas{color:#ffc107}