@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes contactPulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(212,175,55,.8)}50%{transform:scale(1.02);box-shadow:0 0 0 8px transparent}to{transform:scale(1);box-shadow:0 0 0 0 transparent}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}body,html{overflow-x:hidden;max-width:100vw;position:relative}html{scroll-behavior:smooth}body{width:100%}:root{--nero:#1a1a1a;--oro:#e0c04d;--oro-dark:#b8941f;--amaranto:#9b1c3c;--oro-light:#f4e4a6;--grigio:#6b7280}:focus-visible,[tabindex]:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--oro);outline-offset:2px}.text-oro-dark{color:var(--oro-dark)}.hero-fade-in{animation:fadeInUp 1.2s ease-out}.hero-slide-in{animation:slideInRight 1.2s ease-out .4s both}@media (max-width:1024px){*{max-width:100%;box-sizing:border-box}.container,.max-w-4xl,.max-w-5xl,.max-w-6xl,.max-w-7xl{max-width:100vw!important;padding-left:1rem;padding-right:1rem}}@media (max-width:767px){.hero-subtitle,.hero-title{padding-left:1.5rem;padding-right:1.5rem}}#home{position:relative}@media (min-width:768px){#home{background-image:url(https://911branches.sfo3.cdn.digitaloceanspaces.com/uploads/471be5e785f1ad8baf61372670205835.webp)!important}}#chi-siamo::before,#home::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}#home::before{background:radial-gradient(ellipse at center,transparent 0,rgba(26,26,26,.3) 100%)}.btn-hero{overflow:hidden}.btn-hero::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn-hero:hover::before{left:100%}#chi-siamo,.btn-hero{position:relative}#chi-siamo::before{background:radial-gradient(ellipse at center right,transparent 0,rgba(212,175,55,.1) 50%,rgba(26,26,26,.2) 100%)}.service-card{transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.team-member{transition:all .3s ease}.team-member:hover{background-color:var(--oro);color:var(--nero);transform:scale(1.05)}.process-step{position:relative}.process-step::after{content:"";position:absolute;top:50%;right:-20px;width:40px;height:2px;background:linear-gradient(to right,var(--oro),var(--amaranto));transform:translateY(-50%)}.process-step:last-child::after{display:none}@media (max-width:768px){.process-step::after{top:auto;bottom:-20px;right:50%;width:2px;height:40px;transform:translateX(50%);background:linear-gradient(to bottom,var(--oro),var(--amaranto))}}.process-accordion-content,.service-accordion-content{padding-top:1.5rem!important}.faq-item{transition:all .3s ease}.faq-question{cursor:pointer;position:relative}.faq-question::after{content:"+";position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:1.5rem;font-weight:700;color:var(--oro);transition:transform .3s ease}.faq-question.active::after{content:"−";transform:translateY(-50%) rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease}.faq-answer.active{max-height:500px}.btn-primary,.contact-button{transition:all .3s ease}.btn-primary:hover,.contact-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.15)}.btn-primary{background:linear-gradient(135deg,var(--amaranto),#b91c3c)}.btn-primary:hover{background:linear-gradient(135deg,#b91c3c,var(--amaranto));box-shadow:0 10px 20px rgba(155,28,60,.3)}.btn-secondary{background:linear-gradient(135deg,var(--oro),#e4c441);color:var(--nero);transition:all .3s ease}.btn-secondary:hover{background:linear-gradient(135deg,#e4c441,var(--oro));transform:translateY(-2px);box-shadow:0 10px 20px rgba(212,175,55,.3)}.section-fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.section-fade-in.visible{opacity:1;transform:translateY(0)}.mobile-menu-slide{transform:translateX(-100%);transition:transform .3s ease}.mobile-menu-slide.active{transform:translateX(0)}@media (max-width:640px){.hero-title{font-size:1.875rem;line-height:2.25rem}.hero-subtitle{font-size:1rem;line-height:1.5rem}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:var(--oro);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--amaranto)}@media print{.no-print{display:none!important}}#cookie-banner,#cookie-preferences-modal{opacity:0;transition:opacity .3s ease}#cookie-banner.show,#cookie-preferences-modal.show{opacity:1}.animate-slide-up{animation:slideUp .4s ease-out}.cookie-toggle input:checked+.cookie-toggle-slider{background-color:var(--oro)}.cookie-toggle input:checked+.cookie-toggle-slider:before{transform:translateX(20px)}.cookie-toggle-slider{position:relative;display:inline-block;width:44px;height:24px;background-color:#ccc;border-radius:24px;transition:.3s;cursor:pointer}.cookie-toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:2px;bottom:2px;background-color:#fff;border-radius:50%;transition:.3s}.pulse-animation{animation:contactPulse 2s ease-in-out infinite}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}.btn-primary,.btn-secondary,a[role=button],button{min-height:44px;min-width:44px}@media (max-width:768px){.hero-title{font-size:2rem!important;line-height:2.5rem!important;margin-bottom:1rem}.hero-subtitle{font-size:1.125rem!important;line-height:1.75rem!important;margin-bottom:1.5rem}.faq-item,.service-card,.team-member{margin-bottom:1rem}.process-accordion-btn,.service-accordion-btn{padding:1rem!important;font-size:.9rem}.process-accordion-content,.service-accordion-content{padding:1rem!important;font-size:.85rem;line-height:1.5}.text-xl{font-size:1.125rem!important}.text-2xl{font-size:1.5rem!important}.text-3xl{font-size:1.875rem!important}.text-4xl{font-size:2.25rem!important}.py-16{padding-top:3rem!important;padding-bottom:3rem!important}.py-20{padding-top:4rem!important;padding-bottom:4rem!important}.grid-cols-2{grid-template-columns:repeat(1,minmax(0,1fr))!important}.lg\\:grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}}