/*
Theme Name: Aggarwal Castings Theme
Theme URI: https://example.com/aggarwal-castings
Author: Aggarwal Castings
Author URI: mailto:aggarwalcasting221@gmail.com
Description: Corporate industrial theme for Aggarwal Castings. Mobile-friendly, lightweight.
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: aggarwal-castings
*/
:root {
  --bg: #0b1220;
  --ink: #0f172a;
  --muted: #64748b;
  --brand: #0ea5e9;
  --brand-2: #38bdf8;
}
* { box-sizing: border-box; }
html, body { margin:0; padding:0; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color:#0f172a; line-height:1.6; }
a { color: var(--brand); text-decoration: none; }
a:hover { text-decoration: underline; }
.container { max-width: 1100px; margin: 0 auto; padding: 0 16px; }
header.site-header { position: sticky; top:0; z-index:10; background:#fff; border-bottom:1px solid #e5e7eb; }
.nav { display:flex; align-items:center; justify-content:space-between; padding:12px 0; gap:16px; }
.brand { display:flex; align-items:center; gap:10px; font-weight:800; font-size:18px; }
.brand .logo { width:36px; height:36px; border-radius:12px; background:linear-gradient(135deg,var(--brand),var(--brand-2)); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:900; }
.menu a { margin:0 10px; font-weight:600; color:#0f172a; }
.hero { background: linear-gradient(135deg,#f8fafc,#e2f5ff); padding: 64px 0; }
.hero h1 { font-size: 40px; margin:0 0 8px; }
.hero p { color:#475569; max-width: 700px; }
.cta { display:flex; gap:12px; margin-top:18px; }
.btn { display:inline-block; padding:10px 16px; border-radius:10px; font-weight:700; border:1px solid transparent; }
.btn.primary { background:#0ea5e9; color:#fff; }
.btn.outline { border-color:#0ea5e9; color:#0ea5e9; background:#fff; }
.grid { display:grid; gap:18px; }
.grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.card { border:1px solid #e5e7eb; border-radius:16px; padding:16px; background:#fff; }
.section { padding:56px 0; }
.section h2 { margin:0 0 10px; font-size: 28px; }
.muted { color:#64748b; }
footer.site-footer { border-top:1px solid #e5e7eb; padding:24px 0; color:#475569; background:#fff; }
.header-contact {
  display:flex; gap:12px; align-items:center; flex-wrap:wrap; color:#475569; font-size:14px;
}
.gallery { display:grid; grid-template-columns: repeat(auto-fill,minmax(240px,1fr)); gap:16px; }
.gallery .ph { background:#f1f5f9; border-radius:14px; height:160px; display:flex; align-items:center; justify-content:center; color:#64748b; font-weight:700; }
table.specs { width:100%; border-collapse: collapse; }
table.specs td, table.specs th { padding:8px 10px; border-bottom:1px solid #e5e7eb; text-align:left; }
address { font-style: normal; }
.small { font-size: 14px; }
