/* NOVAINDEF minimal landing */
:root{
  --brand:#0a3cff;
  --text:#0b1220;
  --muted:#5b6578;
  --bg:#ffffff;
  --footer-bg:#0b111a;
  --footer-text:#c5d1e0;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:system-ui, -apple-system, 'Segoe UI', Roboto, Inter, Arial, 'Noto Sans';
  color:var(--text);
  background:var(--bg);
  line-height:1.5;
  display:flex;
  flex-direction:column;
  min-height:100vh;
}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.header{background:#fff;border-bottom:1px solid #edf0f5;flex:0 0 auto;}
.header .brand img{height:56px;display:block;padding:14px 0;object-fit:contain}
.main{
  flex:1 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:40px 20px;
  background:#fff;
}
.construction h1{margin:.75rem 0 .25rem;font-size:clamp(1.6rem, 2.2vw + 1rem, 2.4rem);font-weight:700}
.construction p{margin:0;color:var(--muted);font-size:1rem}
.gear{
  width:84px;height:84px;margin:0 auto;border-radius:50%;
  position:relative;border:6px solid #e7ecf5;border-top-color:var(--brand);
  animation:spin 1.15s linear infinite;
}
.gear:before,.gear:after{
  content:"";position:absolute;inset:8px;border-radius:50%;
  border:6px solid #edf0f7;border-right-color:var(--brand);
  animation:spin 1.6s linear infinite reverse;
}
.gear:after{inset:20px;border:6px solid #f3f6fb;border-bottom-color:var(--brand);animation:spin 2.1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.footer{
  background:var(--footer-bg);
  color:var(--footer-text);
  padding:28px 0 36px;
  border-top:1px solid rgba(255,255,255,.04);
  text-align:center;
  font-size:14px;
  flex:0 0 auto;
}
.foot-links{margin-top:8px;display:flex;gap:12px;justify-content:center;align-items:center}
.foot-links a{color:var(--footer-text);text-decoration:none;opacity:.9}
.foot-links a:hover{opacity:1;text-decoration:underline}
.dot{opacity:.5}
@media (prefers-reduced-motion:reduce){
  .gear,.gear:before,.gear:after{animation:none}
}
/* En móviles reducir el tamaño del logo */
@media (max-width: 600px) {
  img {
    height:7.5rem;
    padding: 6px 0;
  }
}
