:root{--ink:#171716;--muted:#686761;--paper:#f4f0e7;--line:#d7d0c2;--accent:#c75b35}
*{box-sizing:border-box}
html{background:var(--paper);color:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif}
body{margin:0;min-height:100vh;display:flex;flex-direction:column}
.wrap{width:min(1120px,calc(100% - 48px));margin:auto}
.site-header{border-bottom:1px solid var(--line)}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{font-weight:700;letter-spacing:-.04em;text-decoration:none;color:var(--ink);font-size:1.2rem}
.brand span{font-weight:400}
nav{display:flex;gap:28px}
nav a{color:var(--muted);text-decoration:none;font-size:.92rem}
nav a:hover,nav a[aria-current=page]{color:var(--ink)}
.hero{padding:clamp(90px,15vw,170px) 0 130px}
.eyebrow{margin:0 0 24px;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;color:var(--accent)}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(4rem,10vw,8.8rem);line-height:.86;letter-spacing:-.07em;margin-bottom:42px;font-weight:500}
h1 em,h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:500}
.lede{max-width:600px;color:var(--muted);font-size:1.25rem;line-height:1.6;margin-bottom:34px}
.button{display:inline-block;background:var(--ink);color:var(--paper);text-decoration:none;padding:14px 22px;border-radius:100px;font-size:.9rem}
.feature{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:70px 0;display:grid;grid-template-columns:1fr 1fr;gap:60px}
.feature h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1;letter-spacing:-.05em;font-weight:500;margin:0}
.feature>p{color:var(--muted);font-size:1.1rem;line-height:1.7;max-width:500px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:70px 0 110px}
.card{border:1px solid var(--line);padding:30px;text-decoration:none;color:var(--ink);min-height:220px;display:flex;flex-direction:column;transition:transform .2s ease,background .2s ease}
.card:hover{transform:translateY(-4px);background:#eee8dc}
.card-no{font-size:.72rem;color:var(--accent);letter-spacing:.12em}
.card h3{font-size:1.8rem;letter-spacing:-.04em;margin:42px 0 8px}
.card p{color:var(--muted);margin:0}
.page{padding:100px 0 120px;flex:1}
.page h1{font-size:clamp(3.8rem,8vw,7rem);margin-bottom:60px}
.intro{font-size:1.45rem;line-height:1.55;max-width:760px;margin-bottom:70px}
.list{border-top:1px solid var(--line)}
.list article{display:grid;grid-template-columns:150px 1fr 1fr;gap:35px;padding:38px 0;border-bottom:1px solid var(--line)}
.list article>span,.place{color:var(--accent);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.list h2{font-size:2rem;letter-spacing:-.04em;margin:0}
.list p{color:var(--muted);line-height:1.7;margin:0}
.neighborhood-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.neighborhood-grid article{padding:38px 40px 55px 0;border-bottom:1px solid var(--line)}
.neighborhood-grid article:nth-child(even){padding-left:40px;border-left:1px solid var(--line)}
.neighborhood-grid h2{font-size:2.5rem;letter-spacing:-.05em;margin:15px 0}
.neighborhood-grid p:last-child{color:var(--muted);line-height:1.7;max-width:440px}
.narrow{max-width:820px}
.narrow h2{font-size:1.5rem;margin-top:48px;margin-bottom:12px}
.narrow p{color:var(--muted);line-height:1.8;max-width:700px}
.site-footer{border-top:1px solid var(--line);margin-top:auto}
.footer-inner{min-height:90px;display:flex;align-items:center;gap:30px;color:var(--muted);font-size:.78rem}
.footer-inner span:first-child{color:var(--ink);font-weight:700;margin-right:auto}
.footer-inner a{color:var(--muted)}
.not-found{padding-top:18vh;flex:1}
.not-found h1{font-size:clamp(4rem,9vw,8rem);margin-bottom:35px}
.not-found p{color:var(--muted);margin-bottom:28px}
@media(max-width:700px){
  .wrap{width:min(100% - 32px,1120px)}
  .nav{min-height:68px}.nav nav{gap:14px}.nav nav a:nth-child(2){display:none}
  .hero{padding:90px 0 90px}.hero h1{font-size:clamp(3.7rem,18vw,6rem)}
  .feature{grid-template-columns:1fr;gap:25px;padding:50px 0}
  .cards{grid-template-columns:1fr;padding:50px 0 75px}
  .page{padding:70px 0 85px}.page h1{margin-bottom:45px}
  .list article{grid-template-columns:1fr;gap:12px}
  .neighborhood-grid{grid-template-columns:1fr}
  .neighborhood-grid article,.neighborhood-grid article:nth-child(even){padding:32px 0;border-left:0}
  .footer-inner{min-height:75px;flex-wrap:wrap;padding:18px 0}
}
