:root{--cream:#f7f1e8;--paper:#fffaf3;--white:#fff;--ink:#17212b;--muted:#657180;--line:#e5d9c8;--red:#b5121b;--teal:#004b5a;--teal2:#0b6b7c;--shadow:0 18px 45px rgba(38,28,18,.12);--container:min(1210px,calc(100% - 34px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,sans-serif;background:var(--cream);color:var(--ink);overflow-x:hidden}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.container{width:var(--container);margin:auto}.topbar{background:#fff;border-bottom:1px solid var(--line)}.topbar-inner{min-height:86px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.top-info{font-size:.94rem;color:#384452;line-height:1.45}.top-info strong{font-size:1.02rem;color:#111}.top-info.right{text-align:right}.logo{width:230px;max-height:78px;object-fit:contain}.header{position:sticky;top:0;z-index:50;background:var(--teal);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 10px 25px rgba(0,75,90,.18)}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:22px}.menu{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.menu a{color:#fff;font-weight:800;font-size:.92rem;padding:27px 0;position:relative}.menu a:after{content:"";position:absolute;left:0;bottom:18px;width:0;height:2px;background:#fff;transition:.25s}.menu a:hover:after,.menu a.active:after{width:100%}.cta{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--teal2);color:#fff;font-weight:900;padding:14px 24px;box-shadow:0 12px 25px rgba(0,75,90,.22);border:0}.toggle{display:none;background:#fff;color:#111;border:1px solid var(--line);border-radius:12px;padding:12px 15px;font-weight:900}.page-section{display:block}.page-section.active{display:block}.hero{position:relative;background:#fff}.hero-slider{position:relative;height:680px;max-height:calc(100vh - 118px);min-height:540px;overflow:hidden}.slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}.slide.active{opacity:1}.slide img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-panel{position:absolute;left:50%;bottom:70px;transform:translateX(-50%);z-index:3;width:var(--container);display:flex;justify-content:flex-end}.hero-copy{max-width:520px}.hero h1{font-family:Playfair Display,serif;font-size:clamp(2rem,4.2vw,4.1rem);line-height:1.05;margin:0 0 8px;color:#fff;font-weight:600;text-shadow:0 4px 18px rgba(0,0,0,.42)}.hero p{font-size:clamp(1rem,1.7vw,1.35rem);line-height:1.55;color:#fff;max-width:430px;margin:0;text-shadow:0 3px 14px rgba(0,0,0,.42);font-weight:700}.hero-community-btn{display:inline-flex;margin-top:18px;min-width:300px;border-radius:999px;background:var(--teal);color:#fff;padding:11px 28px;font-family:Playfair Display,serif;font-size:1.22rem;font-weight:700;justify-content:center}.dots{position:absolute;z-index:4;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.dot{width:11px;height:11px;border-radius:999px;border:1px solid #fff;background:rgba(255,255,255,.6);cursor:pointer}.dot.active{width:34px;background:var(--teal);border-color:var(--teal)}.section{padding:84px 0}.section.alt{background:var(--paper)}.kicker{color:var(--red);font-weight:900;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;margin-bottom:12px}.title{font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,3.2rem);line-height:1.08;margin:0 0 14px}.lead{color:var(--muted);line-height:1.85;max-width:790px;margin:0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.card{background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.pad{padding:34px}.about-list{display:grid;gap:14px;margin-top:24px}.point{display:flex;gap:14px;background:#faf4ec;border:1px solid var(--line);border-radius:18px;padding:16px}.num{width:42px;height:42px;display:grid;place-items:center;background:#fff;border-radius:50%;color:var(--red);font-weight:900;flex:none}.point span{display:block;color:var(--muted);line-height:1.65}.image-tall{height:560px;width:100%;object-fit:cover}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:34px}.project img{width:100%;height:255px;object-fit:cover;background:#fff}.drawing img{height:360px;object-fit:contain;padding:10px}.project-body{padding:23px}.tag{display:inline-block;background:#f1e6d8;color:#7b3a15;border-radius:999px;font-weight:900;padding:8px 12px;font-size:.78rem;margin-bottom:12px}.project h3{margin:0 0 9px;font-size:1.22rem}.project p{margin:0;color:var(--muted);line-height:1.75}.community-showcase{display:grid;grid-template-columns:.95fr 1.05fr;gap:34px;align-items:stretch;margin-top:34px}.community-list{display:grid;gap:16px}.community-item{border:1px solid var(--line);background:#fff;border-radius:22px;padding:22px 24px;cursor:pointer;transition:.25s;box-shadow:0 12px 30px rgba(80,57,35,.08)}.community-item:hover,.community-item.active{transform:translateY(-3px);border-color:var(--teal)}.community-item strong{display:block;color:#651727;font-size:1.2rem;margin-bottom:6px}.community-item span{display:block;color:var(--muted);line-height:1.65}.community-preview{position:relative;border-radius:28px;overflow:hidden;min-height:430px;background:#fff;box-shadow:var(--shadow);border:1px solid var(--line)}.community-preview img{width:100%;height:100%;min-height:430px;object-fit:cover}.community-caption{position:absolute;left:22px;right:22px;bottom:22px;background:rgba(255,255,255,.90);backdrop-filter:blur(8px);border-radius:20px;padding:20px}.community-caption h3{margin:0 0 8px;font-family:Playfair Display,serif;font-size:1.75rem;color:#651727}.community-caption p{margin:0;color:#334155;line-height:1.65}.contact-shell{display:grid;grid-template-columns:.95fr 1.05fr;gap:28px}.contact-img{height:100%;min-height:620px;object-fit:cover}.form{display:grid;gap:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}input,select,textarea{width:100%;border:1px solid #d9cdbb;border-radius:15px;padding:15px 16px;font:inherit;background:#fff;color:var(--ink)}textarea{min-height:155px;resize:vertical}.footer{background:var(--teal);color:#fff;padding:58px 0 22px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr;gap:30px}.footer-logo{width:205px;background:#fff;border-radius:14px;padding:8px;margin-bottom:18px}.footer p,.footer a{color:rgba(255,255,255,.88);line-height:1.75}.footer h3{font-family:Playfair Display,serif;font-size:1.45rem;color:#fff}.copy{text-align:center;border-top:1px solid rgba(255,255,255,.14);padding-top:18px;margin-top:30px;color:rgba(255,255,255,.7)}
@media(max-width:1000px){.topbar-inner{grid-template-columns:1fr;text-align:center;padding:14px 0}.brand{order:2}.top-info:first-child{order:1}.top-info.right{order:3;text-align:center}.logo{margin:auto;width:190px}.nav{min-height:72px;position:relative;justify-content:space-between}.toggle{display:block;z-index:91}.menu{display:none;position:fixed;left:16px;right:16px;top:calc(86px + 72px);background:var(--teal);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:10px;box-shadow:var(--shadow);z-index:90;max-height:calc(100vh - 180px);overflow:auto}.menu.open{display:grid}.menu a{display:block;padding:16px;border-radius:12px}.menu a.active{background:rgba(255,255,255,.12)}.menu a:after{display:none}.cta{padding:12px 15px;font-size:.9rem}.grid2,.contact-shell,.community-showcase{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.topbar-inner{gap:10px}.hero-slider{height:520px;min-height:500px}.hero-panel{bottom:44px;justify-content:center;text-align:center}.hero-copy{width:100%;padding:0 14px}.hero h1{font-size:2.25rem}.hero-community-btn{min-width:0;width:100%;font-size:1rem}.section{padding:58px 0}.cards,.form-grid,.footer-grid{grid-template-columns:1fr}.image-tall,.contact-img{height:360px;min-height:auto}.pad{padding:24px}.community-preview,.community-preview img{min-height:320px}.project img{height:230px}.drawing img{height:300px}.footer{text-align:center}.footer-logo{margin:0 auto 18px}.top-info{font-size:.9rem}.top-info strong{font-size:1rem}}
.page-section{display:block!important}.page-section.active{display:block!important}.alert-submitted{position:fixed;right:18px;bottom:18px;z-index:2000;background:#ecfdf3;border:1px solid #bbf7d0;color:#127b34;font-weight:900;border-radius:16px;padding:14px 18px;box-shadow:0 16px 35px rgba(0,0,0,.14)}

/* FINAL CORRECTIONS: Multi-family drawings, map size, gallery polish */
.elevation-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:34px!important;
  margin-top:34px!important;
  align-items:start!important;
}
.drawing-panel{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
.drawing-panel img{
  width:100%!important;
  height:430px!important;
  object-fit:contain!important;
  background:#fff!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  border-radius:0!important;
}
.drawing-copy{
  margin-top:16px!important;
  padding:0 4px!important;
}
.drawing-copy h3{
  margin:10px 0 8px!important;
  font-size:1.25rem!important;
}
.drawing-copy p{
  color:var(--muted)!important;
  line-height:1.7!important;
  margin:0!important;
}
.map-wrap iframe{
  width:100%!important;
  height:420px!important;
  border:0!important;
  border-radius:28px!important;
  box-shadow:var(--shadow)!important;
}
@media(max-width:900px){
  .elevation-grid{grid-template-columns:1fr!important}
  .drawing-panel img{height:340px!important}
  .map-wrap iframe{height:360px!important}
}

/* ===== MULTI-FAMILY PROJECT IMAGE FIX ===== */
.multifamily-list .multifamily-project-card img{
  width:100%;
  height:230px;
  object-fit:cover;
  border-top-left-radius:28px;
  border-top-right-radius:28px;
  background:#fff;
}
.multifamily-list .project-body{min-height:150px;}
@media(max-width:640px){
  .multifamily-list .multifamily-project-card img{height:220px;}
}


/* ===== LOCATION DESIGN UPGRADE ===== */
.location-section .lead{margin-bottom:28px}
.location-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:28px;align-items:stretch;margin-top:28px}
.location-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:34px;display:flex;flex-direction:column;justify-content:center}
.location-badge{display:inline-flex;width:max-content;background:#f1e6d8;color:#7b3a15;border-radius:999px;font-weight:900;padding:8px 13px;font-size:.78rem;margin-bottom:18px;letter-spacing:.06em;text-transform:uppercase}
.location-card h3{font-family:Playfair Display,serif;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.1;margin:0 0 14px}
.location-address{color:var(--muted);font-size:1.06rem;line-height:1.8;margin:0 0 24px}
.location-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.location-call{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;color:var(--teal);border-radius:999px;padding:14px 20px;font-weight:900}
.location-call:hover{transform:translateY(-2px)}
.location-grid .map-wrap{min-height:420px}
.location-grid .map-wrap iframe{width:100%!important;height:100%!important;min-height:420px!important;border:0!important;border-radius:28px!important;box-shadow:var(--shadow)!important}
@media(max-width:900px){.location-grid{grid-template-columns:1fr}.location-card{padding:28px}.location-grid .map-wrap,.location-grid .map-wrap iframe{min-height:360px!important}}
@media(max-width:640px){.location-card{padding:24px;border-radius:22px}.location-actions{display:grid;grid-template-columns:1fr}.location-actions .cta,.location-call{width:100%;text-align:center}.location-grid .map-wrap,.location-grid .map-wrap iframe{min-height:330px!important;border-radius:22px!important}}
