
:root{
  --black-industrial: #1F1A17;
  --falbron-red: #EC3237;
  --metal-gray: #363435;
  --white-warm: #FFFDFe;
  --muted: rgba(255,255,255,0.75);
}

html,body{height:100%;font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; color:var(--white-warm); background: linear-gradient(180deg, #0f0d0c 0%, #151312 100%); -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; margin:0;}

/* NAVBAR */
.navbar {
  background: linear-gradient(180deg, rgba(31,26,23,0.95), rgba(31,26,23,0.9));
  border-bottom: 1px solid rgba(255,255,255,0.03);
  backdrop-filter: blur(4px);
}
.navbar-brand img { height:44px; width:auto; display:inline-block; }
.nav-link { color: rgba(255,255,255,0.9) !important; font-weight:500; }
.nav-link:hover { color: var(--falbron-red) !important; }

/* HERO */
.hero { min-height:76vh; display:flex; align-items:center; position:relative; padding-top:2rem; padding-bottom:2rem; overflow:hidden; }
.hero::before{ content:''; position:absolute; inset:0; background: radial-gradient(600px 200px at 10% 30%, rgba(236,50,55,0.12), transparent 12%), radial-gradient(500px 200px at 85% 60%, rgba(236,50,55,0.08), transparent 12%), linear-gradient(180deg, rgba(0,0,0,0.25), rgba(0,0,0,0.5)); z-index:0; }
.hero .hero-content { position:relative; z-index:2; }
.hero h1 { font-size: clamp(2rem, 5vw, 4rem); font-weight:800; letter-spacing:-1px; color:var(--white-warm); margin-bottom:0.25rem; }
.hero .lead { color:var(--muted); font-size:1.05rem; max-width:800px; margin-bottom:1.5rem; }
.badge-outline { display:inline-block; border:1px solid rgba(255,255,255,0.06); background:rgba(255,255,255,0.02); color:var(--white-warm); padding:0.25rem 0.65rem; border-radius:999px; font-weight:600; font-size:0.9rem; margin-bottom:1rem; }

.btn-falbron { background:var(--falbron-red); color:var(--white-warm); border-radius:10px; padding:0.85rem 1.6rem; font-weight:700; box-shadow:0 10px 30px rgba(236,50,55,0.12); border: none; }
.btn-outline-light { border-radius:10px; padding:0.8rem 1.6rem; font-weight:700; color:var(--white-warm); border:1px solid rgba(255,255,255,0.12); background:transparent; }

.hero-visual .card { border-radius:16px; overflow:hidden; border: none; box-shadow: 0 30px 60px rgba(0,0,0,0.6); }
.hero-visual img { display:block; width:100%; height:100%; object-fit:cover; filter:contrast(0.95) saturate(0.9); }

/* SECTIONS */
section { padding: 4.5rem 0; }
.section-title { color:var(--white-warm); font-size: clamp(1.4rem, 2.5vw, 2.6rem); font-weight:800; text-align:center; margin-bottom:0.6rem; }
.section-subtitle { color:rgba(255,255,255,0.65); text-align:center; max-width:780px; margin:0 auto 2.5rem; }

/* SERVICES */
.service-card { background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)); border-radius:12px; padding:2rem; border: 1px solid rgba(255,255,255,0.03); transition: transform 0.25s ease, box-shadow 0.25s ease; height:100%; }
.service-card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(0,0,0,0.6); border-color: rgba(236,50,55,0.12); }
.service-icon { font-size:2.2rem; width:64px; height:64px; border-radius:12px; display:flex; align-items:center; justify-content:center; background: rgba(255,255,255,0.03); margin-bottom:1rem; }

/* STATS */
.stat-number { font-size:2.4rem; font-weight:800; color:var(--falbron-red); }
.stat-label { color:rgba(255,255,255,0.8); font-weight:600; }

/* TIMELINE */
.timeline-card { background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)); border-radius:12px; padding:1.6rem; border:1px solid rgba(255,255,255,0.03); margin-bottom:1rem; }

/* CONTACT */
.contact-card { background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01)); border-radius:12px; padding:2rem; border:1px solid rgba(255,255,255,0.03); }
.form-control:focus, .form-select:focus, textarea:focus { box-shadow: 0 6px 20px rgba(236,50,55,0.08); border-color:var(--falbron-red); outline:none; }

/* FOOTER */
footer { background: linear-gradient(180deg, #0b0a09, #0f0d0c); color: rgba(255,255,255,0.8); }
.social-circle { width:44px; height:44px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; background: rgba(255,255,255,0.03); margin-right:0.6rem; }

/* WhatsApp floating */
.whatsapp-float { position:fixed; right:24px; bottom:24px; width:64px; height:64px; border-radius:999px; background: linear-gradient(45deg,#25D366,#20BA5A); display:flex; align-items:center; justify-content:center; color:white; z-index:1100; box-shadow:0 14px 40px rgba(32,186,90,0.15); transition: transform 0.18s ease; }
.whatsapp-float:hover { transform: translateY(-6px); }

/* Responsive tweaks */
@media (max-width: 991.98px) { .hero { padding-bottom:3rem; padding-top:3rem; min-height: 70vh; } .hero-visual { display:none; } }
@media (min-width:992px) { .hero { padding-top:3.5rem; } }
