:root {
  --bg: #0f0f14;
  --text: #f2f2f4;
  --muted: #9a9aa0;
  --accent: #ffd400;
  --panel: #1a1a20;
}

/* GLOBAL */
* { box-sizing: border-box; margin:0; padding:0; }
body { font-family: Inter, sans-serif; background: var(--bg); color: var(--text); }
.container { max-width: 1100px; margin:0 auto; padding:0 24px; }

/* HEADER */
.header { padding:24px 0; }
.header-inner { display:flex; justify-content:space-between; align-items:center; }
.logo { font-weight:800; font-size:1.5rem; }
nav a { color: var(--muted); text-decoration:none; margin-left:24px; }

/* BUTTONS */
.btn { padding:10px 20px; border-radius:999px; font-weight:600; cursor:pointer; }
.btn-primary { background: var(--accent); color:#000; border:none; }
.btn-outline { background:transparent; border:1px solid #444; color:var(--text); }
.btn-link { color:var(--muted); text-decoration:none; }

/* HERO */
.hero { padding:80px 0; }
.hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.hero h1 { font-size:42px; line-height:1.2; }
.hero h1 span { color: var(--accent); }
.hero p { color: var(--muted); max-width:420px; margin-top:16px; }
.hero-actions { display:flex; gap:16px; margin-top:32px; }

.hero-visual { display:grid; gap:16px; }
.visual-box { background: var(--panel); padding:32px; border-radius:16px; font-weight:700; text-align:center; }
.visual-box.light { background:#25252b; }

/* SECTIONS */
.section { padding:80px 0; }
.section.light { background:#111115; }
.section h2 { margin-bottom:40px; text-align:center; }

/* SERVICES */
.services-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:24px; }
.service-card { background:var(--panel); padding:28px; border-radius:16px; text-align:center; }
.service-card.highlight { border:2px solid var(--accent); }

/* ABOUT */
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.checklist { list-style:none; color:var(--muted); margin-top:16px; }
.about-box { background:var(--panel); padding:40px; border-radius:16px; font-weight:700; text-align:center; }

/* CONTACT */
.contact-box { background:var(--panel); padding:40px; border-radius:20px; display:flex; justify-content:space-between; flex-wrap:wrap; }
.contact-actions { display:flex; gap:16px; margin-top:16px; }

/* FOOTER */
.footer { padding:40px 0; color:var(--muted); }
.footer-inner { display:flex; justify-content:space-between; flex-wrap:wrap; }

/* RESPONSIVE */
@media(max-width:800px){
  .hero-grid, .about-grid { grid-template-columns:1fr; gap:32px; }
}
