:root{--rojo: #DC2626;--rojo-hover: #B91C1C;--rojo-oscuro: #991B1B;--negro: #000000;--negro-suave: #0a0a0a;--gris-oscuro: #1F2937;--gris-medio: #6B7280;--gris-claro: #F3F4F6;--blanco: #FFFFFF;--dorado: #D4AF37;--font-heading: "Playfair Display", serif;--font-body: "Inter", sans-serif;--nav-height: 72px;--radius-sm: 6px;--radius-md: 8px;--radius-full: 50%;--shadow-rojo: 0 4px 14px rgba(220, 38, 38, .35);--shadow-rojo-lg: 0 8px 24px rgba(220, 38, 38, .45);--ease-fast: .15s ease;--ease-base: .25s ease;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 2.5rem;--space-2xl: 3rem;--space-3xl: 4rem}html,body{overflow-x:hidden;max-width:100%}.skip-link{position:absolute;top:-100%;left:1rem;z-index:9999;padding:.65rem 1.25rem;background:var(--rojo);color:var(--blanco);font-weight:600;font-size:.875rem;border-radius:0 0 var(--radius-md) var(--radius-md);transition:top var(--ease-fast)}.skip-link:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.navbar{position:fixed;top:0;left:0;right:0;height:var(--nav-height);z-index:1000;background:#000000f5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(220,38,38,.15)}.navbar .container{display:flex;align-items:center;height:100%;max-width:1280px;margin:0 auto;padding:0 var(--space-lg);position:relative}.nav-logo{flex-shrink:0;margin-right:var(--space-xl)}.nav-logo-divider{width:1.5px;height:32px;background:var(--rojo);flex-shrink:0;opacity:.85}.nav-logo-text{display:flex;flex-direction:column;line-height:1.15;gap:1px}.nav-logo-top{font-family:var(--font-heading);font-weight:700;font-size:.85rem;color:var(--blanco);letter-spacing:.12em;white-space:nowrap}.nav-logo-bottom{font-family:var(--font-heading);font-weight:400;font-size:.7rem;color:var(--gris-medio);letter-spacing:.22em;white-space:nowrap}.nav-logo a{display:flex;align-items:center;gap:12px;transition:opacity var(--ease-base)}.nav-logo a:hover{opacity:.85}.nav-logo img{width:52px;height:52px;object-fit:contain;filter:brightness(1.15) drop-shadow(0 0 8px rgba(220,38,38,.35))}.nav-links{display:flex;align-items:center;gap:1.75rem;position:absolute;left:50%;transform:translate(-50%)}.nav-link{position:relative;color:#ffffffe0;font-size:.9rem;font-weight:500;letter-spacing:.01em;white-space:nowrap;padding-bottom:2px;transition:color var(--ease-base)}.nav-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--rojo);border-radius:2px;transition:width var(--ease-base)}.nav-link:hover{color:var(--blanco)}.nav-link:hover:after{width:100%}.nav-link.active{color:var(--rojo)}.nav-link.active:after{width:100%}.nav-buttons{display:flex;align-items:center;gap:.65rem;flex-shrink:0;margin-left:auto}.nav-buttons .btn-primary{display:inline-flex;align-items:center;padding:.5rem 1.1rem;background:var(--rojo);color:var(--blanco);font-size:.875rem;font-weight:600;border-radius:var(--radius-sm);white-space:nowrap;box-shadow:var(--shadow-rojo);transition:background var(--ease-base),transform var(--ease-base),box-shadow var(--ease-base)}.nav-buttons .btn-primary:hover{background:var(--rojo-hover);transform:translateY(-1px);box-shadow:var(--shadow-rojo-lg)}.nav-login{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1.5px solid var(--rojo);border-radius:var(--radius-full);color:var(--rojo);flex-shrink:0;transition:background var(--ease-base),color var(--ease-base),transform var(--ease-base)}.nav-login:hover{background:var(--rojo);color:var(--blanco);transform:rotate(12deg)}.nav-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;flex-shrink:0;margin-left:.5rem}.nav-toggle span{display:block;width:22px;height:2px;background:var(--blanco);border-radius:2px;transform-origin:center;transition:transform .3s ease,opacity .2s ease}.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-overlay{position:fixed;inset:0;background:#0000008c;opacity:0;visibility:hidden;pointer-events:none;z-index:998;transition:opacity .3s ease,visibility .3s ease}.nav-overlay.active{opacity:1;visibility:visible;pointer-events:auto;cursor:pointer}body.nav-open{overflow:hidden}.footer{background:var(--negro-suave);padding:64px 0 28px;border-top:1px solid rgba(220,38,38,.12)}.footer .container{max-width:1280px;margin:0 auto;padding:0 var(--space-lg)}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2.5rem;margin-bottom:2.5rem}.footer-logo{display:flex;align-items:center;gap:12px;margin-bottom:.85rem}.footer-logo span{font-family:var(--font-heading);font-weight:700;font-size:1.05rem;color:var(--blanco);letter-spacing:.03em}.footer-col p{color:var(--gris-medio);font-size:.875rem;line-height:1.75}.footer-col h4{font-family:var(--font-heading);font-size:.95rem;font-weight:600;color:var(--blanco);margin-bottom:.85rem;letter-spacing:.03em}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.55rem}.footer-col ul li,.footer-col ul li a{color:var(--gris-medio);font-size:.875rem;transition:color var(--ease-base)}.footer-col ul li a:hover{color:var(--rojo)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.05);flex-wrap:wrap}.footer-bottom p{color:var(--gris-medio);font-size:.8rem}.social-links{display:flex;gap:.65rem}.social-links a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1.5px solid rgba(220,38,38,.35);border-radius:var(--radius-full);color:#dc2626bf;transition:background var(--ease-base),color var(--ease-base),border-color var(--ease-base),transform var(--ease-base)}.social-links a:hover{background:var(--rojo);color:var(--blanco);border-color:var(--rojo);transform:translateY(-3px)}@media(min-width:1280px){.nav-links{gap:2rem}.nav-link{font-size:.9rem}}@media(max-width:1279px)and (min-width:1025px){.nav-links{gap:1.35rem}.nav-link{font-size:.84rem}.nav-buttons .btn-primary{font-size:.82rem;padding:.45rem .9rem}}@media(max-width:1024px){.nav-toggle{display:flex}.nav-logo-divider,.nav-logo-text{display:none}.nav-links{position:fixed;top:0;right:-100%;left:auto;width:270px;max-width:82vw;height:100vh;height:100dvh;background:linear-gradient(160deg,#080808,#111);border-left:1px solid rgba(220,38,38,.15);flex-direction:column;align-items:flex-start;gap:0;flex:none;padding:calc(var(--nav-height) + 1rem) 0 2rem;overflow-y:auto;z-index:999;box-shadow:-6px 0 28px #00000080;transition:right .35s cubic-bezier(.4,0,.2,1);transform:none}.nav-links.active{right:0}.nav-link{display:block;width:100%;padding:.85rem 1.75rem;font-size:.95rem;color:#ffffffb3;border-bottom:1px solid rgba(255,255,255,.04);border-left:3px solid transparent;transition:color .2s,background .2s,border-color .2s,padding-left .2s}.nav-link:after{display:none}.nav-link:hover{color:var(--blanco);background:#dc262612;border-left-color:#dc262666;padding-left:2.1rem}.nav-link.active{color:var(--rojo);border-left-color:var(--rojo);background:#dc26260f}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}}@media(max-width:768px){:root{--nav-height: 58px}.navbar .container{padding:0 1.25rem}.nav-buttons .btn-primary{font-size:.8rem;padding:.43rem .85rem}.nav-login{width:33px;height:33px}.footer{padding:48px 0 24px}.footer .container{padding:0 1.25rem}.footer-bottom{flex-direction:column;text-align:center}.social-links{justify-content:center}}@media(max-width:576px){.navbar .container{padding:0 1rem}.nav-logo img{width:42px;height:42px}.nav-logo{margin-right:var(--space-sm)}.nav-buttons .btn-primary{font-size:.75rem;padding:.4rem .75rem}.nav-login{width:31px;height:31px;font-size:.8rem}.footer{padding:40px 0 20px}.footer .container{padding:0 1rem}.footer-grid{grid-template-columns:1fr;gap:1.75rem;text-align:center}.footer-logo{justify-content:center}}@media(max-width:400px){.nav-buttons .btn-primary{display:none}.nav-login{width:30px;height:30px;font-size:.78rem}.footer-col h4{font-size:.9rem}.footer-col p,.footer-col ul li,.footer-col ul li a{font-size:.8rem}.footer-bottom p{font-size:.75rem}}
