
:root{--brand:#0f172a;--accent:#f59e0b}
*{box-sizing:border-box}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Ubuntu,'Helvetica Neue',Arial,sans-serif;margin:0;color:#111827;background:#fafafa}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
.header{background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}
.header .bar{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.header img{height:44px;width:auto}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 3px 12px rgba(0,0,0,.04)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.btn{appearance:none;border:none;background:var(--brand);color:#fff;padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:700}
.input,select{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border-bottom:1px solid #e5e7eb;padding:10px;text-align:left}
.badge{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700}
.footer{padding:30px 0;color:#6b7280;font-size:14px}
@media (max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}}

/* Print styling with logo header */
@media print{
  .no-print{display:none !important}
  body{background:#fff}
  .print-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}
  .print-header img{height:48px}
  .card{box-shadow:none;border:none;padding:0}
}

/* --- Polished contact bar (dark) --- */
.contact-bar{background:#0b1220;color:#fff}
.contact-bar .wrap{max-width:1100px;margin:0 auto;padding:8px 16px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:center}
.contact-item{display:flex;align-items:center;gap:8px;font-weight:600}
.contact-item small{opacity:.9}

/* Hide generic 'what clients say' sections if present */
.testimonials, .what-clients-say { display:none !important; }

/* --- Prominent calculators button in nav --- */
.nav-cta{background:#111827;color:#fff !important;padding:8px 16px;border-radius:999px;border:1px solid #222;text-decoration:none;font-weight:800;transition:all .15s ease; box-shadow:0 2px 0 rgba(0,0,0,.25)}
.nav-cta:hover{opacity:.96; transform:translateY(-1px); box-shadow:0 4px 10px rgba(0,0,0,.18)}

/* --- Recent Projects Gallery --- */
.projects{padding:32px 0}
.projects h2{margin-bottom:12px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gallery-grid img{width:100%;height:200px;object-fit:cover;border-radius:14px}
@media (max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr} .gallery-grid img{height:180px} }
@media (max-width:600px){.gallery-grid{grid-template-columns:1fr} .gallery-grid img{height:200px} }

/* Masonry (CSS columns) */
.gallery-masonry{column-count:3; column-gap:10px}
.gallery-masonry img{width:100%; margin:0 0 10px; border-radius:14px}
@media (max-width:900px){ .gallery-masonry{column-count:2} }
@media (max-width:600px){ .gallery-masonry{column-count:1} }

/* Carousel */
.carousel{position:relative;overflow:hidden;border-radius:16px}
.carousel-track{display:flex;transition:transform .6s ease}
.carousel img{width:100%;height:320px;object-fit:cover}
.carousel .dots{position:absolute;left:0;right:0;bottom:8px;display:flex;gap:6px;justify-content:center}
.carousel .dots button{width:10px;height:10px;border-radius:50%;border:none;background:#fff8;cursor:pointer}
.carousel .dots button.active{background:#fff}
.carousel .nav{position:absolute;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;left:0;right:0;padding:0 8px}
.carousel .nav button{background:#000a;color:#fff;border:none;padding:8px 12px;border-radius:10px;cursor:pointer}
