
:root{
  --ink:#111418;
  --muted:#5c6670;
  --paper:#f6f3ed;
  --white:#ffffff;
  --line:#d8d2c7;
  --accent:#d79a2b;
  --dark:#0d1116;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--white);line-height:1.55}
a{color:inherit;text-decoration:none}
.wrap{width:min(1160px,92%);margin:auto}
.topbar{background:var(--dark);color:#fff;font-size:14px}
.topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding:10px 0}
header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0}
.brand{font-weight:800;letter-spacing:.04em;font-size:20px}
.navlinks{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.navlinks a{font-size:15px}
.btn{display:inline-block;background:var(--accent);color:#111;padding:13px 18px;border-radius:4px;font-weight:700}
.btn.dark{background:var(--dark);color:#fff}
.hero{background:var(--paper);padding:84px 0 76px;border-bottom:1px solid var(--line)}
.eyebrow{font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#6b5a37}
h1{font-size:clamp(42px,7vw,78px);line-height:.98;margin:12px 0 24px;max-width:900px;letter-spacing:-.045em}
h2{font-size:clamp(30px,4vw,48px);line-height:1.05;letter-spacing:-.03em;margin:0 0 18px}
h3{font-size:22px;margin:0 0 8px}
.lead{font-size:20px;color:var(--muted);max-width:760px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
section{padding:72px 0}
.band{background:var(--dark);color:#fff}
.grid2{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:start}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{border:1px solid var(--line);padding:26px;background:#fff;border-radius:4px}
.band .card{background:#151b22;border-color:#2b333c}
.kicker{font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#8a6f39}
.list{padding-left:20px}
.list li{margin:8px 0}
.stat{padding:22px;border-top:3px solid var(--accent);background:#fff}
.note{background:var(--paper);padding:18px;border-left:4px solid var(--accent)}
.cta{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
footer{background:#0d1116;color:#dfe3e7;padding:46px 0 28px}
footer .grid3{grid-template-columns:1.4fr 1fr 1fr}
.small{font-size:14px;color:#9aa3ad}
.service-list a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-weight:700}
.form{display:grid;gap:14px}
.form input,.form textarea,.form select{width:100%;padding:13px;border:1px solid #c9c3b9;border-radius:4px;font:inherit}
.form textarea{min-height:150px}
.breadcrumb{font-size:14px;color:var(--muted);margin-bottom:18px}
.pill{display:inline-block;border:1px solid var(--line);padding:7px 10px;margin:4px 6px 4px 0;border-radius:999px;font-size:14px}
@media(max-width:860px){
 .grid2,.grid3,.grid4,footer .grid3{grid-template-columns:1fr}
 .navlinks{display:none}
 .hero{padding:58px 0}
 h1{font-size:48px}
}


/* AEC brand system */
.brand-lockup{
  display:inline-flex;
  align-items:center;
  gap:12px;
  font-weight:800;
  letter-spacing:.04em;
  font-size:20px;
  white-space:nowrap;
}
.brand-lockup img{
  width:42px;
  height:42px;
  object-fit:contain;
  display:block;
}
.footer-mark{
  width:74px;
  height:74px;
  object-fit:contain;
  display:block;
  margin-bottom:14px;
}
.brand-wordmark{
  display:flex;
  flex-direction:column;
  line-height:1;
}
.brand-wordmark strong{
  font-size:19px;
  letter-spacing:.04em;
}
.brand-wordmark span{
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-top:5px;
  color:#727b84;
}
footer .brand-wordmark span{color:#9aa3ad}

/* Brand sizing revision — larger AEC mark */
.brand-lockup{gap:16px}
.brand-lockup img{
  width:88px;
  height:88px;
}
.brand-wordmark strong{font-size:24px}
.brand-wordmark span{font-size:11px}
.footer-mark{
  width:150px;
  height:150px;
}
@media(max-width:860px){
  .brand-lockup img{width:64px;height:64px}
  .brand-wordmark strong{font-size:20px}
  .brand-wordmark span{font-size:9px}
}

/* Tight-cropped logo revision */
.brand-lockup img{
  width:112px;
  height:58px;
  object-fit:contain;
}
.footer-mark{
  width:180px;
  height:auto;
}
@media(max-width:860px){
  .brand-lockup img{width:88px;height:46px}
}

main{position:relative}.brand-watermark{position:absolute;right:4vw;top:170px;z-index:0;pointer-events:none;opacity:.055}.brand-watermark img{width:220px;max-width:24vw;height:auto}main>section{position:relative;z-index:1}@media(max-width:760px){.brand-watermark{right:3vw;top:150px;opacity:.045}.brand-watermark img{width:140px}}

body{background:#f4f1e9}header{background:rgba(244,241,233,.97)}.hero{background:linear-gradient(120deg,#171b1d 0%,#242b2d 72%,#31383a 100%);color:#fff}.band{background:#e9e4d9}.card{border:1px solid #d2cab9;box-shadow:0 10px 30px rgba(23,27,29,.06)}.btn{border-radius:3px;letter-spacing:.02em}.brand-lockup img{width:132px;height:68px;object-fit:contain}.footer-mark{width:205px}

/* Final logo contrast treatment */
footer .footer-mark{
  box-sizing:content-box;
  background:#f4f1e9;
  padding:14px 18px;
  border-radius:6px;
  width:205px;
  height:auto;
  object-fit:contain;
  box-shadow:0 0 0 1px rgba(255,255,255,.10);
}
/* Keep logo artwork readable wherever it sits over a dark field. */
.band .brand-watermark{
  background:rgba(244,241,233,.92);
  padding:8px;
  border-radius:6px;
}
