:root{--primary:#1a56db;--primary-dark:#1e40af;--secondary:#0e9f6e;--accent:#ff9a3d;--text:#1f2937;--muted:#6b7280;--bg:#f9fafb;--card:#ffffff;--radius:16px;--shadow:0 10px 24px rgba(2, 6, 23, 0.08);--shadow-lg:0 20px 40px rgba(2, 6, 23, 0.12);--font-base:1rem;--font-sm:0.875rem;--font-lg:1.125rem;--font-xl:1.25rem;--font-2xl:1.5rem;--font-3xl:1.875rem;--transition:all 0.3s ease}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{margin:0;font-family:'Segoe UI',system-ui,-apple-system,Roboto,Ubuntu,Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);line-height:1.6;font-size:var(--font-base)}.topbar{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;padding:.75rem 1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 10px rgba(0,0,0,.1)}.topbar img{height:48px;width:auto;background:#fff;border-radius:12px;padding:5px;box-shadow:var(--shadow);transition:var(--transition)}.topbar img:hover{transform:scale(1.05)}.brand{font-weight:800;letter-spacing:.3px;font-size:var(--font-lg);text-shadow:0 1px 2px rgba(0,0,0,.2)}.navbar{position:sticky;top:0;z-index:50;background:var(--card);box-shadow:0 2px 10px rgba(2,6,23,.08);backdrop-filter:blur(8px)}.nav-inner{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem}.nav-links{display:flex;gap:.5rem;flex-wrap:wrap}.nav-links a{text-decoration:none;color:var(--text);font-weight:600;padding:.6rem 1rem;border-radius:999px;transition:var(--transition);position:relative}.nav-links a:hover{background:rgba(26,86,219,.1);color:var(--primary)}.nav-links a::after{content:'';position:absolute;bottom:0;left:50%;width:0;height:3px;background:var(--primary);border-radius:3px;transition:var(--transition);transform:translateX(-50%)}.nav-links a:hover::after{width:60%}.nav-toggle{display:none;border:none;background:rgba(26,86,219,.1);padding:.6rem 1rem;border-radius:999px;font-weight:700;cursor:pointer;transition:var(--transition)}.nav-toggle:hover{background:rgba(26,86,219,.2)}.hero{max-width:1200px;margin:2rem auto 0;padding:0}.slider{position:relative;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow-lg);background:#000;transition:var(--transition);aspect-ratio:16/9}.slider:hover{box-shadow:0 25px 50px rgba(0,0,0,.15)}.slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .8s ease}.slide.active{opacity:1;z-index:1}.slide img{width:100%;height:100%;object-fit:cover;display:block}.slide .caption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(0deg,rgba(0,0,0,.8) 0,transparent 100%);color:#fff;padding:1rem 1.5rem;font-weight:600;letter-spacing:.3px;font-size:var(--font-lg)}.slide-indicators{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);display:flex;gap:.75rem;z-index:10}.slide-indicator{width:14px;height:14px;border-radius:50%;border:none;background:rgba(255,255,255,.5);cursor:pointer;transition:var(--transition)}.slide-indicator.active{background:#fff;transform:scale(1.2)}.slide-indicator:hover{background:rgba(255,255,255,.8);transform:scale(1.1)}section{padding:4rem 1.5rem}.container{max-width:1200px;margin:auto}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem;transition:var(--transition);overflow:hidden}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}h2{margin:.5rem 0 1.25rem;font-size:var(--font-2xl);color:var(--primary);font-weight:700}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.badge{display:inline-block;padding:.4rem .8rem;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--primary-dark));color:#fff;font-weight:700;font-size:var(--font-sm);margin-bottom:1rem;box-shadow:0 4px 6px rgba(26,86,219,.2)}.principal{display:grid;grid-template-columns:300px 1fr;gap:2rem;align-items:start}.principal img{width:100%;height:300px;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow);transition:var(--transition)}.principal img:hover{transform:scale(1.02)}.info-row{display:flex;gap:1.5rem;flex-wrap:wrap;color:var(--muted);margin-top:1.5rem;font-size:var(--font-sm);background:#f8fafc;padding:1rem;border-radius:12px}.toolbar{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.75rem}.toolbar::-webkit-scrollbar{height:5px}.toolbar::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:3px}.toolbar button{border:none;padding:.6rem 1rem;border-radius:999px;background:#eef2ff;color:var(--primary);font-weight:700;cursor:pointer;white-space:nowrap;transition:var(--transition)}.toolbar button.active{background:linear-gradient(90deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 4px 6px rgba(26,86,219,.3)}.toolbar button:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.gallery figure{margin:0;background:var(--card);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:var(--transition);position:relative}.gallery figure::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(0deg,rgba(0,0,0,.4),transparent);opacity:0;transition:var(--transition);z-index:1}.gallery figure:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.gallery figure:hover::before{opacity:1}.gallery img{width:100%;height:200px;object-fit:cover;display:block;transition:var(--transition)}.gallery figure:hover img{transform:scale(1.05)}.gallery figcaption{padding:.75rem;font-size:var(--font-sm);font-weight:600;position:relative;z-index:2}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:1000;padding:1.5rem;opacity:0;transition:opacity .3s ease}.lightbox.open{display:flex;opacity:1}.lb-inner{position:relative;max-width:90vw;max-height:90vh}.lightbox img{max-width:100%;max-height:80vh;border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,.5)}.lb-close{position:absolute;top:-45px;right:0;background:rgba(255,255,255,.2);color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:1.5rem;cursor:pointer;display:grid;place-items:center;transition:var(--transition)}.lb-close:hover{background:rgba(255,255,255,.3);transform:scale(1.1)}.lb-caption{color:#fff;margin-top:1rem;text-align:center;font-weight:600;font-size:var(--font-lg)}footer{background:linear-gradient(90deg,var(--primary),var(--secondary));color:#fff;margin-top:3rem}footer .container{display:grid;grid-template-columns:2fr 1fr;gap:2.5rem;padding:3rem 1.5rem}footer a{color:#fff;opacity:.9;text-decoration:none;transition:var(--transition)}footer a:hover{opacity:1;text-decoration:underline}small{display:block;text-align:center;padding:1.5rem;opacity:.8;font-size:var(--font-sm)}@media (max-width:1024px){:root{--font-base:0.95rem;--font-lg:1.1rem;--font-xl:1.2rem;--font-2xl:1.4rem;--font-3xl:1.7rem}.gallery{grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.grid-2{grid-template-columns:1fr}.principal{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}footer .container{grid-template-columns:1fr;gap:2rem}}@media (max-width:768px){:root{--font-base:0.9rem;--font-lg:1rem;--font-xl:1.1rem;--font-2xl:1.3rem;--font-3xl:1.5rem}section{padding:2.5rem 1rem}.card{padding:1.5rem}.nav-inner{flex-wrap:wrap}.nav-links{display:none;width:100%;flex-direction:column;margin-top:.75rem;gap:.5rem}.nav-links.open{display:flex}.nav-toggle{display:block}.slide .caption{padding:.75rem 1rem;font-size:var(--font-base)}}@media (max-width:640px){.gallery{grid-template-columns:1fr}.topbar{padding:.6rem}.brand{font-size:var(--font-base)}.info-row{flex-direction:column;gap:.75rem}.toolbar{padding-bottom:.5rem}.toolbar button{padding:.5rem .8rem;font-size:var(--font-sm)}}@media (max-width:480px){:root{--font-base:0.85rem;--font-lg:0.95rem;--font-xl:1rem;--font-2xl:1.2rem;--font-3xl:1.3rem}.slide .caption{padding:.5rem .75rem;font-size:var(--font-sm)}.card{padding:1.25rem;border-radius:14px}section{padding:2rem 1rem}.hero{padding:0 1rem}.slide-indicator{width:10px;height:10px}}a:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.card,.gallery figure{animation:fadeInUp .6s ease-out}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}html{scroll-behavior:auto}}