/* Responsive page styling */
:root{
  --accent: #ac6b3d;
  --accent-dark: #20424a;
  --bg-color: #fafafa;
  --text-color: #2c3237;
  --muted: #6b6f73;
  --max-width: 1100px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  color:var(--text-color);
  background:var(--bg-color);
  font-family:'Lato', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  line-height:1.5;
}

.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:999;
  background:rgba(255,255,255,0.85);
  backdrop-filter: blur(4px);
  border-bottom:1px solid rgba(0,0,0,0.06);
}
.site-header-inner{
  max-width:var(--max-width);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 16px;
}

.brand{ text-decoration:none; color:inherit; display:flex; flex-direction:column; }
.brand-name{ font-weight:700; font-size:1rem; }
.brand-sub{ font-size:0.73rem; color:var(--muted); margin-top:2px; }

.btn{ display:inline-block; padding:4px 18px; border-radius:6px; text-decoration:none; font-size:0.9rem; border:1px solid transparent; }
.btn-primary{ background:var(--accent); color:#fff; }
.btn-outline{ background:transparent; border:1px solid rgba(0,0,0,0.08); color:var(--text-color); }

.hero{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  margin-top:72px;
}
.hero .hero-overlay{
  position:absolute;
  inset:0;
  background-image: url('./city-office-black-and-white-crop.jpg');
  background-size:cover;
  background-position:center left;
  filter:grayscale(70%) contrast(.9) brightness(.6);
  z-index:0;
}
.hero-content{
  position:relative;
  z-index:2;
  text-align:center;
  color:#fff;
  padding:6vh 20px;
  max-width:960px;
  margin:auto;
}
.hero h1{font-size:clamp(1.6rem, 4vw, 3.2rem); margin:0 0 8px; letter-spacing:0.6px;}
.hero-sub{ font-size:clamp(1rem, 2.2vw, 1.25rem); opacity:0.95; margin-bottom:8px; }
.byline{ font-size:0.95rem; opacity:0.9; margin-bottom:16px; color:#eaeaea; }

.hero-ctas{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }

.page-main{ margin-top:0; }
.content-section{
  padding:48px 16px;
  background:linear-gradient(180deg, rgba(255,255,255,0.95), rgba(250,250,250,0.99));
}
.container{ max-width:var(--max-width); margin:0 auto; }
.content-section h2{ font-size:1.4rem; margin-top:0; margin-bottom:10px; color:var(--accent-dark); }

.site-footer{ background:var(--accent-dark); color:#fff; padding:28px 16px; }
.footer-top{ display:flex; flex-direction:column; gap:10px; max-width:var(--max-width); margin:0 auto; }
.footer-brand{ font-weight:700; }
.footer-contact a{ color:#fff; text-decoration:underline; }

.site-footer hr{ border:0; border-top:1px solid rgba(255,255,255,0.08); margin:18px 0; }
.footer-bottom{ text-align:center; opacity:0.9; }
