:root {
  --primary: #0A2540;
  --accent: #FF6B35;
  --accent-hover: #E85A24;
  --dark: #1A1A1A;
  --light: #F8F9FA;
  --gray: #6C757D;
  --border: #DEE2E6;
}
* { box-sizing: border-box; margin: 0; padding: 0; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
body { color: var(--dark); background: #fff; line-height: 1.6; }
a { text-decoration: none; color: inherit; }

/* Top Bar */
.top-bar { background: var(--primary); color: #fff; padding: 10px 20px; font-size: 14px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; }
.top-bar .info span { margin-right: 20px; }
.top-bar .cta-phone { color: #fff; font-weight: bold; background: var(--accent); padding: 5px 12px; border-radius: 4px; display: inline-flex; align-items: center; gap: 5px; }

/* Header & Nav */
header { background: #fff; box-shadow: 0 2px 10px rgba(0,0,0,0.05); position: sticky; top: 0; z-index: 1000; }
.nav-container { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; padding: 15px 20px; }
.logo { font-size: 24px; font-weight: 800; color: var(--primary); display: flex; flex-direction: column; }
.logo span { font-size: 12px; font-weight: 400; color: var(--gray); letter-spacing: 1px; }
nav ul { display: flex; list-style: none; gap: 20px; align-items: center; }
nav a { font-weight: 600; font-size: 15px; color: var(--primary); transition: color 0.2s; }
nav a:hover, nav a.active { color: var(--accent); }
.btn-header { background: var(--accent); color: #fff !important; padding: 10px 18px; border-radius: 5px; font-weight: bold; transition: background 0.2s; }
.btn-header:hover { background: var(--accent-hover); }

/* Hero Section */
.hero { background: linear-gradient(rgba(10,37,64,0.85), rgba(10,37,64,0.85)), url('https://images.unsplash.com/photo-1542013936-6e0b1d7124f2?auto=format&fit=crop&w=1920&q=80') center/cover no-repeat; color: #fff; padding: 100px 20px; text-align: center; }
.hero h1 { font-size: 42px; margin-bottom: 20px; max-width: 800px; margin-left: auto; margin-right: auto; line-height: 1.2; }
.hero p { font-size: 18px; margin-bottom: 30px; max-width: 700px; margin-left: auto; margin-right: auto; opacity: 0.9; }
.btn-primary { background: var(--accent); color: #fff; padding: 14px 28px; border-radius: 5px; font-size: 18px; font-weight: bold; display: inline-block; transition: background 0.2s; box-shadow: 0 4px 12px rgba(255,107,53,0.3); }
.btn-primary:hover { background: var(--accent-hover); color: #fff; }

/* Main Layout */
.container { max-width: 1200px; margin: 40px auto; padding: 0 20px; }
.grid-2 { display: grid; grid-template-columns: 2fr 1fr; gap: 40px; }
.grid-3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
@media(max-width: 768px) { .grid-2 { grid-template-columns: 1fr; } nav ul { display: none; } }

/* Cards & Content */
.card { background: var(--light); border: 1px solid var(--border); border-radius: 8px; padding: 30px; margin-bottom: 30px; }
.service-card { background: #fff; border: 1px solid var(--border); border-radius: 8px; padding: 25px; transition: transform 0.2s, box-shadow 0.2s; }
.service-card:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.08); }
.service-card h3 { margin-bottom: 12px; color: var(--primary); }
.service-card p { color: var(--gray); margin-bottom: 15px; font-size: 14px; }

/* Sidebar */
.sidebar-box { background: var(--primary); color: #fff; padding: 25px; border-radius: 8px; margin-bottom: 30px; text-align: center; }
.sidebar-box h3 { margin-bottom: 15px; font-size: 20px; }
.sidebar-box p { margin-bottom: 20px; font-size: 15px; opacity: 0.9; }
.sidebar-box .btn-primary { width: 100%; text-align: center; }

/* Footer */
footer { background: var(--primary); color: #fff; padding: 60px 20px 20px; margin-top: 60px; }
.footer-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 40px; margin-bottom: 40px; }
.footer-col h4 { font-size: 18px; margin-bottom: 20px; border-bottom: 2px solid var(--accent); padding-bottom: 8px; display: inline-block; }
.footer-col ul { list-style: none; }
.footer-col ul li { margin-bottom: 10px; }
.footer-col ul li a { color: #ccc; transition: color 0.2s; }
.footer-col ul li a:hover { color: #fff; }
.copyright { text-align: center; border-top: 1px solid rgba(255,255,255,0.1); padding-top: 20px; font-size: 14px; color: #aaa; }