/* GreyRock Concrete - simple, fast, mobile-first */
:root{
  --bg:#0b0f14;
  --panel:#101723;
  --panel2:#0f1621;
  --text:#e7eef8;
  --muted:#a6b2c3;
  --line:rgba(255,255,255,.10);
  --accent:#d8d1c3; /* warm concrete tone */
  --accent2:#6aa6ff;
  --max:1100px;
  --radius:14px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}
a{color:var(--accent2);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--max);margin:0 auto;padding:0 18px}

.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(11,15,20,.85);
  backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid var(--line);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:16px}
.brand{display:flex;align-items:center;gap:12px}
.logo-mark{
  width:34px;height:34px;border-radius:10px;
  background:linear-gradient(145deg,var(--accent),rgba(255,255,255,.15));
  box-shadow:0 10px 25px rgba(0,0,0,.35);
}
.brand-name{font-weight:800;letter-spacing:.2px}
.brand-sub{font-size:12px;color:var(--muted);margin-top:-2px}

.nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.nav a{color:var(--text);opacity:.9}
.nav a:hover{opacity:1;text-decoration:none}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 16px;border-radius:12px;
  background:var(--accent);color:#111; font-weight:700;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 10px 25px rgba(0,0,0,.35);
}
.btn:hover{text-decoration:none;filter:brightness(1.02)}
.btn-ghost{
  background:transparent;color:var(--text);
  border:1px solid var(--line);
  box-shadow:none;
}
.btn-small{padding:10px 12px;border-radius:10px}

.hero{padding:54px 0 30px;background:radial-gradient(800px 400px at 20% 10%, rgba(106,166,255,.22), transparent 60%)}
.hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:start}
.hero h1{font-size:44px;line-height:1.08;margin:0 0 12px}
.lead{color:var(--muted);font-size:18px;max-width:52ch;margin:0 0 18px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.hero-badges{display:flex;gap:10px;flex-wrap:wrap}
.badge{border:1px solid var(--line);color:var(--muted);padding:8px 10px;border-radius:999px;font-size:13px;background:rgba(255,255,255,.03)}

.section{padding:56px 0;border-top:1px solid var(--line)}
.section.alt{background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.00))}
.section h2{font-size:30px;margin:0 0 10px}
.section-lead{color:var(--muted);margin:0 0 22px}

.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.tile{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px;
}
.tile h3{margin:0 0 8px}
.tile p{color:var(--muted);margin:0 0 10px}
.tile ul{margin:0;padding-left:18px;color:var(--muted)}
.note{
  margin-top:18px;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:rgba(216,209,195,.08);
  color:var(--text);
}

.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.clean{margin:10px 0 0;padding-left:18px;color:var(--muted)}
.muted{color:var(--muted)}
.small{font-size:13px}

.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ph{
  border-radius:16px;
  border:1px dashed rgba(255,255,255,.18);
  background:rgba(255,255,255,.03);
  padding:34px 14px;
  text-align:center;
  color:var(--muted);
}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.card{
  background:var(--panel2);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px;
}
.card h3{margin:0 0 10px}
.card ul{margin:0;padding-left:18px;color:var(--muted)}
.card p{margin:8px 0}

.footer-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}

.site-footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted)}
.footer-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

@media (max-width: 880px){
  .hero-inner{grid-template-columns:1fr}
  .hero h1{font-size:38px}
  .grid{grid-template-columns:1fr}
  .cols{grid-template-columns:1fr}
  .gallery{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
}
@media (max-width: 520px){
  .hero h1{font-size:34px}
  .gallery{grid-template-columns:1fr}
}


/* Logo image */
.logo{
  height:38px;
  width:auto;
  display:block;
}
@media (max-width: 520px){
  .logo{height:34px;}
}
