:root{--ff-primary: #2c5aa0;--ff-primary-dark: #1e3d70;--ff-secondary: #ffc107;--ff-success: #198754;--ff-danger: #dc3545;--ff-warning: #fd7e14;--ff-info: #0dcaf0;--ff-light: #f8f9fa;--ff-dark: #212529;--ff-gradient-primary: linear-gradient(135deg, var(--ff-primary) 0%, var(--ff-primary-dark) 100%);--ff-gradient-hero: linear-gradient(135deg, var(--ff-primary) 0%, var(--ff-primary-dark) 70%, #1a2742 100%);--ff-shadow-sm: 0 .125rem .25rem rgba(0, 0, 0, .075);--ff-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);--ff-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, .175);--ff-border-radius: .5rem;--ff-border-radius-lg: 1rem;--ff-transition: all .3s ease;--ff-transition-fast: all .15s ease}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:var(--ff-dark);overflow-x:hidden}.bg-gradient-primary{background:var(--ff-gradient-primary)!important}.bg-gradient-hero{background:var(--ff-gradient-hero)!important}.text-primary{color:var(--ff-primary)!important}.btn-primary{background-color:var(--ff-primary);border-color:var(--ff-primary);transition:var(--ff-transition)}.btn-primary:hover,.btn-primary:focus{background-color:var(--ff-primary-dark);border-color:var(--ff-primary-dark);transform:translateY(-2px);box-shadow:var(--ff-shadow)}.btn-warning{transition:var(--ff-transition)}.btn-warning:hover,.btn-warning:focus{transform:translateY(-2px);box-shadow:var(--ff-shadow)}.sr-only-focusable:focus{position:absolute;top:0;left:0;width:auto;height:auto;padding:.5rem 1rem;background:var(--ff-warning);color:var(--ff-dark);text-decoration:none;z-index:9999;border-radius:0 0 var(--ff-border-radius) 0}.navbar{background:var(--ff-gradient-primary)!important;box-shadow:var(--ff-shadow);transition:var(--ff-transition);padding:1rem 0}.navbar.scrolled{padding:.5rem 0;backdrop-filter:blur(10px)}.navbar-brand{font-size:1.5rem;font-weight:700;transition:var(--ff-transition)}.navbar-brand:hover{transform:scale(1.05)}.navbar-nav .nav-link{font-weight:500;margin:0 .25rem;padding:.5rem 1rem!important;border-radius:var(--ff-border-radius);transition:var(--ff-transition);position:relative}.navbar-nav .nav-link:hover,.navbar-nav .nav-link:focus{background-color:#ffffff1a;transform:translateY(-1px)}.navbar-nav .nav-link.active{background-color:#fff3;font-weight:600}.dropdown-menu{border:none;box-shadow:var(--ff-shadow-lg);border-radius:var(--ff-border-radius);margin-top:.5rem;animation:fadeInUp .3s ease}.dropdown-item{padding:.75rem 1.5rem;transition:var(--ff-transition)}.dropdown-item:hover{background-color:var(--ff-light);color:var(--ff-primary);transform:translate(5px)}.hero-section{background:var(--ff-gradient-hero);position:relative;overflow:hidden;padding-top:80px}.hero-section:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="80" r="2" fill="rgba(255,255,255,0.1)"/><circle cx="40" cy="60" r="1" fill="rgba(255,255,255,0.05)"/></svg>');animation:float 20s ease-in-out infinite}.hero-section .container{position:relative;z-index:1}.hero-benefits .fas{font-size:1.1rem}.hero-actions .btn{margin-bottom:1rem}.hero-image-container{position:relative}.hero-image-container:before{content:"";position:absolute;inset:-10px;background:var(--ff-gradient-primary);border-radius:var(--ff-border-radius-lg);z-index:-1;opacity:.3}.hero-image-container img{border-radius:var(--ff-border-radius);transition:var(--ff-transition)}.hero-image-container:hover img{transform:scale(1.02)}.trust-indicators{border-bottom:1px solid #dee2e6}.trust-item{transition:var(--ff-transition);padding:1rem;border-radius:var(--ff-border-radius)}.trust-item:hover{background-color:#fff;box-shadow:var(--ff-shadow-sm);transform:translateY(-5px)}.trust-item i{transition:var(--ff-transition)}.trust-item:hover i{transform:scale(1.1);color:var(--ff-primary)!important}.problem-section{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%)}.problem-card{transition:var(--ff-transition);position:relative;overflow:hidden}.problem-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .6s ease}.problem-card:hover:before{left:100%}.problem-card:hover{transform:translateY(-10px);box-shadow:var(--ff-shadow-lg)}.problem-card i{transition:var(--ff-transition)}.problem-card:hover i{transform:scale(1.1) rotate(5deg)}.quote-form-container{position:relative;background:white!important}.quote-form-container:before{content:"";position:absolute;inset:-2px;background:var(--ff-gradient-primary);border-radius:var(--ff-border-radius);z-index:-1}.form-control,.form-select{border:2px solid #e9ecef;border-radius:var(--ff-border-radius);padding:.75rem 1rem;transition:var(--ff-transition);font-size:.95rem}.form-control:focus,.form-select:focus{border-color:var(--ff-primary);box-shadow:0 0 0 .2rem #2c5aa026;transform:translateY(-1px)}.form-label{font-weight:600;color:var(--ff-dark);margin-bottom:.5rem}.form-check-input:checked{background-color:var(--ff-primary);border-color:var(--ff-primary)}.invalid-feedback{display:block;font-size:.875rem;color:var(--ff-danger);margin-top:.25rem}.form-control.is-invalid,.form-select.is-invalid{border-color:var(--ff-danger);animation:shake .5s ease-in-out}.process-step{transition:var(--ff-transition);padding:2rem 1rem;border-radius:var(--ff-border-radius)}.process-step:hover{background-color:var(--ff-light);transform:translateY(-10px)}.step-number{width:60px;height:60px;font-size:1.5rem;font-weight:700;position:relative}.step-number:after{content:"";position:absolute;top:50%;left:100%;width:50px;height:2px;background:var(--ff-primary);opacity:.3;display:none}@media (min-width: 992px){.step-number:after{display:block}.process-step:last-child .step-number:after{display:none}}footer{background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%)!important}footer a{transition:var(--ff-transition)}footer a:hover{color:var(--ff-secondary)!important;transform:translate(3px)}.social-links a{display:inline-block;width:40px;height:40px;line-height:40px;text-align:center;border-radius:50%;background-color:#ffffff1a;transition:var(--ff-transition)}.social-links a:hover{background-color:var(--ff-primary);transform:translateY(-3px) scale(1.1)}.emergency-contact{animation:pulse 2s infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes pulse{0%{box-shadow:0 0 #ffc10766}70%{box-shadow:0 0 0 10px #ffc10700}to{box-shadow:0 0 #ffc10700}}@keyframes mobileDropdownSlide{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:300px}}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.chat-widget{position:fixed;bottom:20px;right:20px;z-index:1000;background:var(--ff-primary);color:#fff;border-radius:50px;padding:15px 20px;cursor:pointer;box-shadow:var(--ff-shadow-lg);transition:var(--ff-transition)}.chat-widget:hover{background:var(--ff-primary-dark);transform:scale(1.05)}.chat-widget i{margin-right:8px}.toast{background:white;border:none;border-radius:var(--ff-border-radius);box-shadow:var(--ff-shadow-lg);border-left:4px solid var(--ff-primary)}.toast.toast-success{border-left-color:var(--ff-success)}.toast.toast-error{border-left-color:var(--ff-danger)}.toast.toast-warning{border-left-color:var(--ff-warning)}@media (max-width: 991.98px){.navbar-nav{background:rgba(0,0,0,.1);border-radius:var(--ff-border-radius);margin-top:1rem;padding:1rem}.navbar-nav .nav-link{padding:.75rem 1rem!important;margin:.25rem 0;border-radius:var(--ff-border-radius);min-height:44px;display:flex;align-items:center;text-decoration:none}.navbar-nav .dropdown-toggle:after{margin-left:auto;transition:transform .3s ease}.navbar-nav .dropdown.show .dropdown-toggle:after{transform:rotate(180deg)}.nav-item.dropdown.show{background-color:#ffffff1a;border-radius:var(--ff-border-radius)}.dropdown-menu{position:static!important;display:none;float:none;width:100%;margin:.5rem 0 0;border:none;box-shadow:inset 0 2px 4px #0000001a;background:rgba(255,255,255,.95);border-radius:var(--ff-border-radius);backdrop-filter:blur(10px);animation:mobileDropdownSlide .3s ease}.dropdown-menu.show{display:block}.dropdown-item{padding:.75rem 1.5rem;min-height:44px;display:flex;align-items:center;color:var(--ff-dark);font-weight:500;border-radius:var(--ff-border-radius);margin:.25rem .5rem;transition:all .2s ease}.dropdown-item:hover,.dropdown-item:focus,.dropdown-item:active{background-color:var(--ff-primary);color:#fff;transform:translate(5px)}.navbar-toggler{padding:.5rem .75rem;font-size:1.1rem;border:2px solid rgba(255,255,255,.3);border-radius:var(--ff-border-radius);min-height:44px;min-width:44px}.navbar-toggler:focus{box-shadow:0 0 0 2px #ffffff80}.hero-section{text-align:center;padding-top:100px}.hero-actions .btn{display:block;width:100%;margin-bottom:1rem;min-height:44px}.problem-card,.process-step{margin-bottom:2rem}.step-number:after{display:none!important}}@media (max-width: 767.98px){.hero-section h1{font-size:2rem}.lead{font-size:1rem}.trust-item{margin-bottom:1rem}.quote-form-container{margin:0 -15px;border-radius:0}.chat-widget{bottom:10px;right:10px;padding:12px 16px;font-size:.9rem}.btn{min-height:44px;padding:.75rem 1.5rem;font-size:1rem}.form-control,.form-select{min-height:44px;padding:.75rem 1rem;font-size:1rem}.navbar-brand{font-size:1.25rem;padding:.5rem 0}.navbar-nav .nav-link{font-size:1.1rem;font-weight:600}.dropdown-item{font-size:1rem;padding:1rem 1.5rem}.card{margin-bottom:1.5rem}.card-body{padding:1.5rem}}@media (max-width: 575.98px){.container{padding-left:15px;padding-right:15px}.navbar-brand{font-size:1.25rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.hero-section{padding-top:80px}.hero-section .container{padding:0 15px}}@media print{.navbar,.chat-widget,.quote-form-section,footer{display:none!important}.hero-section{padding-top:0!important;background:white!important;color:#000!important}.btn{display:none!important}}@media (prefers-contrast: high){:root{--ff-primary: #000080;--ff-primary-dark: #000060}.btn{border:2px solid currentColor}.form-control,.form-select{border:2px solid #000}}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.btn:focus-visible,.form-control:focus-visible,.form-select:focus-visible,.form-check-input:focus-visible{outline:2px solid var(--ff-primary);outline-offset:2px}img[data-src]{opacity:0;transition:opacity .3s ease;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading-shimmer 1.5s infinite}img.loading{opacity:.5}img.loaded{opacity:1;animation:none;background:none}img.error{opacity:.5;background:#f8f9fa}@keyframes loading-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.lazy-content{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.lazy-content.lazy-loaded{opacity:1;transform:translateY(0)}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}@media (prefers-reduced-motion: reduce){img[data-src],.lazy-content{transition:none;animation:none}}.gallery-item img[data-src]{min-height:200px}.gallery-item img.loaded{transform:scale(1);transition:transform .3s ease,opacity .3s ease}.gallery-item:hover img.loaded{transform:scale(1.05)}
