#intro,#serveis,#contacte{scroll-margin-top:10.5rem}.text_missio{font-size:1.2rem;line-height:1.8;color:#ab2328;border-left:3px solid #ab2328;border-radius:5px;padding-left:1rem;max-width:700px}#top1{scroll-margin-top:6rem}.hero{height:60vh;background-size:cover;background-position:center;position:relative}.hero-overlay{background:#0006;height:100%;display:flex;flex-direction:column;justify-content:center;padding:2rem}.hero-overlay h1{text-shadow:0 2px 10px rgba(0,0,0,.3)}.card h5,.adesma_granate{color:#ab2328}.mesures-card{background:#fff;border-radius:20px;padding:2.5rem;box-shadow:0 10px 30px #0000000d;transition:all .4s cubic-bezier(.165,.84,.44,1);border:1px solid rgba(0,0,0,.03);height:100%;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center}.mesures-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#f68d2e,#ab2328);transition:height .4s ease;z-index:0}.mesures-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #0000001a}.icon-wrapper{width:70px;height:70px;border-radius:22px;background-color:#fceceb;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;font-size:1.8rem;color:#ab2328;transition:all .4s ease;position:relative;z-index:1}.mesures-card:hover .icon-wrapper{background-color:#ab2328;color:#fff;transform:rotate(10deg)}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;padding:2rem 0}.portfolio-card{position:relative;border-radius:24px;overflow:hidden;height:280px;box-shadow:0 8px 25px #00000014;transition:all .5s cubic-bezier(.165,.84,.44,1);cursor:pointer;border:none}.portfolio-card img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .8s ease}.portfolio-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(171,35,40,.9) 0%,rgba(0,0,0,.2) 60%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;transition:all .4s ease}.portfolio-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #ab232833}.portfolio-card:hover img{transform:scale(1.1)}.portfolio-category{font-size:.75rem;font-weight:800;color:#f68d2e;text-transform:uppercase;letter-spacing:2px;margin-bottom:.5rem}.portfolio-title{color:#fff;font-size:1.4rem;font-weight:700;margin:0;line-height:1.2}.portfolio-accent{width:0px;height:4px;background:#f68d2e;margin-top:1rem;transition:width .4s ease;border-radius:2px}.portfolio-card:hover .portfolio-accent{width:50px}.contact-info-block{background:#fff;padding:3rem;border-radius:30px;height:100%;box-shadow:0 10px 40px #0000000d;border:1px solid #eee}.contact-item{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;transition:transform .3s ease}.contact-icon{width:54px;height:54px;background:#fceceb;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#ab2328;font-size:1.3rem;transition:all .3s ease}.contact-item:hover .contact-icon{background:#ab2328;color:#fff;transform:translateY(-3px)}.contact-item a{color:#222;text-decoration:none;font-weight:600;font-size:1.1rem;transition:color .3s}.contact-item a:hover{color:#ab2328}.section-label{text-transform:uppercase;font-size:.85rem;letter-spacing:2px;color:#ab2328;font-weight:800;margin-bottom:1.5rem;display:block}.text-block p{line-height:1.65;margin-bottom:1rem}.img-clean{width:100%;height:auto;border-radius:24px;box-shadow:0 20px 50px #0000001a}.motto-destacat{font-size:1.25rem;font-weight:600;color:#ab2328;border-left:6px solid #F68D2E;padding:1.5rem 2rem;margin:1.5rem 0;background-color:#fff9f4;border-radius:0 20px 20px 0;line-height:1.4;box-shadow:0 5px 15px #f68d2e0d}.calendar-section{padding:5rem 0;background:#fff}.calendar-container{display:grid;grid-template-columns:1.5fr 1fr;gap:3rem;align-items:start}@media(max-width:991px){.calendar-container{grid-template-columns:1fr}}.calendar-box{background:#fff;border-radius:30px;padding:2.5rem;box-shadow:0 15px 45px #0000000d;border:1px solid #f0f0f0}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.calendar-month{font-size:1.5rem;font-weight:700;color:#ab2328;margin:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.weekday{text-align:center;font-size:.75rem;font-weight:800;color:#888;text-transform:uppercase;padding-bottom:10px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:.95rem;font-weight:600;color:#444;transition:all .2s ease;position:relative;border:1px solid transparent;cursor:pointer}.calendar-day:hover:not(.other-month){background:#fff5f5;border-color:#fceceb;transform:translateY(-2px)}.calendar-day.other-month{color:#ccc;cursor:default}.calendar-day.has-event{background:#fff9f4;border-color:#f68d2e}.calendar-day.has-event:after{content:"";position:absolute;bottom:6px;width:5px;height:5px;background:#f68d2e;border-radius:50%}.calendar-day.today{background:#ab2328;color:#fff;box-shadow:0 5px 15px #ab23284d}.calendar-day.is-holiday{color:#ab2328!important;font-weight:800}.calendar-day.active-day{border:2px solid #AB2328;background:#fdf8f8;color:#ab2328}.events-box{background:#fdf8f8;border-radius:30px;padding:2.5rem;border:1px dashed #e8d0d1;min-height:450px;display:flex;flex-direction:column}.events-header-dynamic{border-bottom:2px solid #fceceb;padding-bottom:1rem;margin-bottom:1.5rem}.events-header-dynamic h4{margin:0;font-size:1.4rem}.events-header-dynamic span{font-size:.9rem;color:#888;display:block;margin-top:5px}.event-item{display:flex;gap:1.2rem;padding:1.5rem;background:#fff;border-radius:20px;margin-bottom:1rem;border:1px solid #fceceb;box-shadow:0 5px 15px #00000005;animation:fadeIn .3s ease forwards}.event-item:hover{transform:translate(5px);border-color:#f68d2e}.event-icon-box{min-width:45px;height:45px;background:#fdf2f2;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#ab2328;font-size:1.2rem}.event-info h5{font-size:1.1rem;font-weight:700;margin-bottom:.4rem;color:#333;line-height:1.3}.event-info p{font-size:.95rem;color:#666;margin:0;line-height:1.5}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
