/* Shell compartido con index.html: variables, nav, footer.
   Solo reglas de nivel superior; la media query va explícita al final. */
:root{--naranja:#D97B3A;--azul:#1E5F74;--azul-oscuro:#0D2E3A;--azul-medio:#2A7D9C;--rojo-sol:#C04F2E;--blanco:#F5F0E8;--gris:#8A9BA8;--negro:#0a0d0f;}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Raleway',sans-serif;background:var(--negro);color:var(--blanco);overflow-x:hidden;}
nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:18px 48px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to bottom,rgba(0,0,0,0.85) 0%,transparent 100%);transition:background 0.4s;}
nav.scrolled{background:rgba(10,13,15,0.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(210,123,58,0.2);}
.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none;}
.nav-logo img{height:52px;width:52px;object-fit:contain;}
.nav-logo-text{display:flex;flex-direction:column;line-height:1;}
.nav-logo-text span:first-child{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:0.08em;color:var(--blanco);}
.nav-logo-text span:last-child{font-size:0.62rem;letter-spacing:0.22em;color:var(--naranja);text-transform:uppercase;}
.nav-links{display:flex;gap:36px;list-style:none;}
.nav-links a{color:rgba(245,240,232,0.8);text-decoration:none;font-size:0.78rem;letter-spacing:0.18em;text-transform:uppercase;font-weight:600;transition:color 0.3s;}
.nav-links a:hover{color:var(--naranja);}
.nav-cta{background:var(--naranja);color:var(--blanco);padding:10px 24px;border-radius:2px;text-decoration:none;font-size:0.75rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;transition:background 0.3s,transform 0.2s;}
.nav-cta:hover{background:var(--rojo-sol);transform:translateY(-1px);}
.btn-primary{background:var(--naranja);color:var(--blanco);padding:16px 38px;text-decoration:none;font-size:0.8rem;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;border-radius:2px;transition:all 0.3s;border:2px solid var(--naranja);}
.btn-primary:hover{background:transparent;color:var(--naranja);transform:translateY(-2px);}
.btn-secondary{border:2px solid rgba(245,240,232,0.4);color:var(--blanco);padding:16px 38px;text-decoration:none;font-size:0.8rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;border-radius:2px;transition:all 0.3s;}
.btn-secondary:hover{border-color:var(--azul-medio);color:var(--azul-medio);transform:translateY(-2px);}
section{padding:120px 80px;}
.section-label{font-size:0.65rem;letter-spacing:0.4em;text-transform:uppercase;color:var(--naranja);margin-bottom:16px;}
.section-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.5rem,5vw,4rem);line-height:1;margin-bottom:24px;}
.section-sub{font-size:1rem;color:rgba(245,240,232,0.6);line-height:1.8;max-width:560px;}
footer{background:var(--negro);padding:72px 80px 40px;border-top:1px solid rgba(245,240,232,0.06);}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:60px;margin-bottom:60px;}
.footer-logo{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.footer-logo img{height:56px;}
.footer-logo-text{display:flex;flex-direction:column;}
.footer-logo-text span:first-child{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:0.05em;}
.footer-logo-text span:last-child{font-size:0.6rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--naranja);}
.footer-about{font-size:0.82rem;color:rgba(245,240,232,0.45);line-height:1.8;max-width:280px;}
.footer-col h5{font-size:0.7rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--naranja);margin-bottom:20px;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-col ul li a{font-size:0.82rem;color:rgba(245,240,232,0.45);text-decoration:none;transition:color 0.3s;}
.footer-col ul li a:hover{color:var(--naranja);}
.footer-plain{font-size:0.82rem;color:rgba(245,240,232,0.45);}
.footer-bottom{border-top:1px solid rgba(245,240,232,0.06);padding-top:32px;display:flex;justify-content:space-between;align-items:center;}
.footer-bottom p{font-size:0.75rem;color:rgba(245,240,232,0.3);}
.social-links{display:flex;gap:16px;}
.social-links a{font-size:0.75rem;color:rgba(245,240,232,0.4);text-decoration:none;letter-spacing:0.15em;text-transform:uppercase;transition:color 0.3s;}
.social-links a:hover{color:var(--naranja);}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
.reveal{opacity:0;transform:translateY(40px);transition:opacity 0.8s ease,transform 0.8s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
@media(max-width:900px){nav{padding:16px 24px;}.nav-links,.nav-cta{display:none;}.footer-grid{grid-template-columns:1fr 1fr;gap:32px;}}
