:root{--primary:#1e3a8a;--primary-light:#3b82f6;--secondary:#ff8300;--secondary-light:#ffa040;--dark:#0f172a;--light:#f8fafc;--gray:#64748b;--gray-light:#e2e8f0;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--transition:all .3s cubic-bezier(.4, 0, .2, 1);--shadow-sm:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-md:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-lg:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);color:var(--dark);background-color:var(--light);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--dark);font-weight:600;line-height:1.2}a{color:inherit;transition:var(--transition);text-decoration:none}ul{list-style:none}.container{width:90%;max-width:1200px;margin:0 auto}.section{padding:6rem 0}.section-badge{color:var(--secondary);letter-spacing:.5px;text-transform:uppercase;background-color:#ff83001a;border-radius:50px;margin-bottom:1rem;padding:.35rem 1rem;font-size:.875rem;font-weight:600;display:inline-block}.section-header{text-align:center;max-width:600px;margin:0 auto 4rem}.section-header h2{margin-bottom:1rem;font-size:2.5rem}.section-header p{color:var(--gray);font-size:1.125rem}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:var(--shadow-sm);border-radius:8px;padding:.875rem 2rem;font-weight:500;display:inline-block}.btn-primary:hover{background-color:var(--primary-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-primary-outline{border:2px solid var(--primary);color:var(--primary);border-radius:8px;padding:.75rem 1.75rem;font-weight:500;display:inline-block}.btn-primary-outline:hover{background-color:var(--primary);color:#fff}.btn-secondary{background-color:var(--secondary);color:#fff;box-shadow:var(--shadow-sm);border-radius:8px;padding:.875rem 2rem;font-weight:500;display:inline-block}.btn-secondary:hover{background-color:var(--secondary-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.navbar{z-index:1000;width:100%;transition:var(--transition);background:0 0;padding:1.5rem 0;position:fixed;top:0;left:0}.navbar.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);background:#fffffff2;padding:1rem 0}.navbar.scrolled .brand,.navbar.scrolled .nav-links a{color:var(--dark)}.nav-container{justify-content:space-between;align-items:center;width:90%;max-width:1200px;margin:0 auto;display:flex}.brand{font-family:var(--font-heading);color:#fff;font-size:1.5rem;font-weight:800}.nav-links{align-items:center;gap:2rem;display:flex}.nav-links a{color:#fff;font-size:1rem;font-weight:500}.navbar.scrolled .nav-links a.btn-primary-outline{color:var(--primary)}.navbar.scrolled .nav-links a.btn-primary-outline:hover{color:#fff}.nav-links a:hover:not(.btn-primary-outline){color:var(--secondary-light)}.mobile-menu-btn{cursor:pointer;z-index:1001;background:0 0;border:none;display:none}.mobile-menu-btn span{width:25px;height:3px;transition:var(--transition);background-color:#fff;margin:5px 0;display:block}.navbar.scrolled .mobile-menu-btn span{background-color:var(--dark)}.hero{color:#fff;background:url(/suit.jpg) 50% 20%/cover no-repeat;align-items:center;height:100vh;min-height:600px;display:flex;position:relative}.hero-overlay{z-index:1;background:linear-gradient(135deg,#0f172ae6 0%,#1e3a8ab3 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{z-index:2;width:90%;max-width:1200px;margin:0 auto;padding-top:4rem;position:relative}.hero h1{color:#fff;margin-bottom:1rem;font-size:clamp(3rem,5vw,5rem);font-weight:300}.hero h1 span{color:#0000;background:linear-gradient(to right, #fff, var(--secondary-light));-webkit-background-clip:text;background-clip:text;font-weight:800}.hero .subtitle{color:#ffffffe6;max-width:600px;margin-bottom:2.5rem;font-size:clamp(1.125rem,2vw,1.5rem)}.hero-actions{gap:1rem;display:flex}.perfil-section,.cercania-section{background-color:#fff;position:relative}.cercania-section{background-color:var(--light)}.cercania-section .image-accent{background:var(--primary);opacity:.3}.grid-2{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.image-placeholder{aspect-ratio:4/5;background-color:var(--gray-light);width:100%;box-shadow:var(--shadow-lg);border-radius:20px;position:relative}.clinic-img{background:url(/clinic.jpg) 50%/cover no-repeat}.cafe-img{background:url(/cafe.jpg) 50%/cover no-repeat}.image-accent{background:var(--secondary);z-index:-1;opacity:.5;border-radius:20px;width:200px;height:200px;position:absolute;bottom:-20px;right:-20px}.left-accent{left:-20px;right:auto}.perfil-text h2{color:var(--primary);margin-bottom:1.5rem;font-size:2.5rem}.perfil-text p{color:var(--gray);margin-bottom:1.5rem;font-size:1.125rem}.features-list{margin-top:2rem}.features-list li{color:var(--dark);margin-bottom:1rem;padding-left:2rem;font-weight:500;position:relative}.features-list li:before{content:"✓";color:var(--secondary);font-size:1.25rem;font-weight:700;position:absolute;top:0;left:0}.servicios-section{background-color:var(--light)}.services-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.service-card{box-shadow:var(--shadow-sm);transition:var(--transition);background:#fff;border-bottom:4px solid #0000;border-radius:16px;padding:2.5rem}.service-card:hover{box-shadow:var(--shadow-lg);border-bottom-color:var(--secondary);transform:translateY(-10px)}.service-icon{background:#ff83001a;border-radius:12px;margin-bottom:1.5rem;padding:1rem;font-size:3rem;display:inline-block}.service-card h3{margin-bottom:1rem;font-size:1.5rem}.service-card p{color:var(--gray)}.footer{background-color:var(--dark);color:#fff;padding:4rem 0 0}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:4rem;margin-bottom:4rem;display:grid}.footer-brand h3{color:#fff;margin-bottom:1rem;font-size:1.5rem}.footer-brand p{color:var(--gray);max-width:300px}.footer h4{color:#fff;margin-bottom:1.5rem;font-size:1.25rem}.footer-links ul li{margin-bottom:.75rem}.footer-links a{color:var(--gray)}.footer-links a:hover{color:var(--secondary-light);padding-left:5px}.footer-contact p{color:var(--gray);align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.footer-bottom{text-align:center;color:var(--gray);border-top:1px solid #ffffff1a;padding:1.5rem;font-size:.875rem}.galeria-section{background-color:#fff}.carousel-wrapper{align-items:center;display:flex;position:relative}.gallery-track{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;gap:1.5rem;padding-bottom:1.5rem;display:flex;overflow-x:auto}.gallery-track::-webkit-scrollbar{display:none}.gallery-item{aspect-ratio:4/3;scroll-snap-align:center;min-width:280px;box-shadow:var(--shadow-sm);transition:var(--transition);border-radius:16px;flex:0 0 calc(33.333% - 1rem);position:relative;overflow:hidden}.carousel-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--primary);border:1px solid var(--gray-light);cursor:pointer;z-index:10;width:48px;height:48px;transition:var(--transition);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;box-shadow:0 4px 15px #0000001a}.carousel-btn:hover{background:var(--primary);color:#fff;transform:scale(1.05);box-shadow:0 8px 25px #1e3a8a33}.carousel-btn svg{width:24px;height:24px}.carousel-btn.prev{left:-20px}.carousel-btn.next{right:-20px}.gallery-item:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery-item:hover img{transform:scale(1.05)}.blog-section{background-color:var(--light)}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2.5rem;display:grid}.blog-card{box-shadow:var(--shadow-sm);transition:var(--transition);background:#fff;border-radius:16px;overflow:hidden}.blog-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px)}.blog-image{aspect-ratio:16/9;width:100%;display:block;position:relative;overflow:hidden}.blog-image img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.bg-medical{background:linear-gradient(135deg, var(--primary), var(--secondary))}.bg-community{background:url(/hiking.jpg) 50%/cover no-repeat}.bg-nutrition{background:linear-gradient(135deg, var(--secondary), var(--secondary-light))}.bg-tourism{background:url(/compostela-1.png) 50%/cover no-repeat}.blog-content{padding:2rem}.blog-category{color:var(--secondary);text-transform:uppercase;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:inline-block}.blog-date{color:var(--gray);margin-left:1rem;font-size:.875rem}.blog-content h3{color:var(--dark);margin-bottom:1rem;font-size:1.25rem}.blog-content p{color:var(--gray);margin-bottom:1.5rem;font-size:.95rem}.btn-text{color:var(--primary);align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.btn-text:hover{color:var(--secondary);gap:.75rem}.mt-4{margin-top:3rem}.text-center{text-align:center}.lightbox{z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;background-color:#0f172af2;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.lightbox.active{opacity:1;display:flex}.lightbox-content-wrapper{text-align:center;flex-direction:column;align-items:center;max-width:90%;max-height:80vh;display:flex;position:relative}.lightbox-img{border:2px solid var(--secondary);object-fit:contain;border-radius:8px;max-width:100%;max-height:75vh;box-shadow:0 0 40px #ff830040,0 20px 25px -5px #0000004d}.lightbox-caption{color:#fff;letter-spacing:.5px;margin-top:1rem;font-size:1.125rem;font-weight:400}.lightbox-close{background-color:var(--secondary);color:#fff;cursor:pointer;width:40px;height:40px;transition:var(--transition);z-index:2001;border-radius:50%;justify-content:center;align-items:center;padding-bottom:4px;font-size:2rem;font-weight:300;line-height:0;display:flex;position:absolute;top:-15px;right:-15px;box-shadow:0 4px 10px #0000004d}.lightbox-close:hover{background-color:var(--primary);color:#fff;transform:scale(1.1)}.animate-up{opacity:0;animation:.8s forwards fadeInUp;transform:translateY(30px)}.delay-1{animation-delay:.2s}.delay-2{animation-delay:.4s}.delay-3{animation-delay:.6s}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.reveal-up,.reveal-left,.reveal-right{opacity:0;transition:all .8s cubic-bezier(.5,0,0,1)}.reveal-up{transform:translateY(50px)}.reveal-left{transform:translate(-50px)}.reveal-right{transform:translate(50px)}.reveal-up.active,.reveal-left.active,.reveal-right.active{opacity:1;transform:translate(0)}@media (width<=768px){.grid-2{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:2rem}.nav-links{width:80%;height:100vh;transition:var(--transition);box-shadow:var(--shadow-lg);background:#fff;flex-direction:column;justify-content:center;position:fixed;top:0;right:-100%}.nav-links.active{right:0}.nav-links a{color:var(--dark);font-size:1.5rem}.mobile-menu-btn{display:block}.mobile-menu-btn.active span:first-child{background:var(--dark);transform:rotate(45deg)translate(5px,5px)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){background:var(--dark);transform:rotate(-45deg)translate(7px,-6px)}.navbar .mobile-menu-btn span{background-color:var(--dark)}.navbar:not(.scrolled) .mobile-menu-btn span{background-color:#fff}.gallery-item{flex:0 0 calc(100% - 2rem)}.carousel-btn{display:none}}.section{background-image:url("data:image/svg+xml;utf8,<svg width=\"60\" height=\"60\" viewBox=\"0 0 60 60\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 0h10v10H0V0zm10 10h10v10H10V10zm10 10h10v10H20V20zm10-10h10v10H30V10zm10-10h10v10H40V0z\" fill=\"%23ff8300\" fill-opacity=\"0.05\"/></svg>")}.gallery-filters{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2rem;display:flex}.filter-btn{border:2px solid var(--secondary);color:var(--secondary);cursor:pointer;transition:var(--transition);background:0 0;border-radius:30px;padding:.5rem 1.5rem;font-weight:600}.filter-btn.active,.filter-btn:hover{background:var(--secondary);color:#fff}.gallery-item.hidden{display:none!important}.navbar .brand{align-items:center;display:flex}.navbar-logo{width:auto;height:55px;transition:var(--transition);transform-origin:0;display:block}.navbar.scrolled .navbar-logo{filter:brightness(.2)sepia()hue-rotate(180deg)saturate(3);transform:scale(1.1)}.footer-logo{filter:brightness(0)invert();width:auto;height:65px;margin-bottom:1rem}.navbar.scrolled .nav-links a{border-radius:8px;padding:.5rem 1rem;transition:all .3s}.navbar.scrolled .nav-links a:hover{color:var(--secondary);background-color:#ff830014;transform:translateY(-2px)}.nav-links a{border-radius:8px;padding:.5rem 1rem;transition:all .3s}.nav-links a:hover{background-color:#ffffff1a;transform:translateY(-2px)}.hero-logo-wrapper{max-width:600px;margin-bottom:2rem}.hero-main-logo{filter:drop-shadow(0 4px 10px #0000004d);width:100%;height:auto}.social-links{gap:1.5rem;margin-top:2rem;display:flex}.social-links a{color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);width:45px;height:45px;transition:var(--transition);background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex}.social-links a:hover{background:var(--secondary);border-color:var(--secondary);transform:translateY(-3px)scale(1.1);box-shadow:0 5px 15px #ff830066}.social-links svg{width:20px;height:20px}.footer-social{gap:1rem;margin-top:1.5rem;display:flex}.footer-social a{color:var(--gray-light);width:40px;height:40px;transition:var(--transition);background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;display:flex}.footer-social a:hover{color:#fff;background:var(--secondary);transform:translateY(-2px)}.footer-social svg{width:18px;height:18px}.navbar .brand{opacity:0;visibility:hidden;transition:all .3s;transform:translateY(-10px)}.navbar.scrolled .brand{opacity:1;visibility:visible;font-weight:800;transform:translateY(0);color:var(--secondary)!important}.cookie-banner{color:#fff;z-index:9999;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:2px solid var(--secondary);background:#0f172af2;justify-content:space-between;align-items:center;gap:2rem;width:100%;padding:1rem 5%;display:flex;position:fixed;bottom:0;left:0}.cookie-banner p{margin:0;font-size:.85rem;line-height:1.4}.cookie-banner a{color:var(--secondary);font-weight:700}@media (width<=768px){.cookie-banner{text-align:center;flex-direction:column;gap:1rem;padding:1.5rem}}
