.hero{ width:100%; padding:54px 0 26px; overflow:hidden; }

.hero .hero-grid{
  width:min(var(--container), calc(100% - 24px));
  margin:0 auto;
}

.hero-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(420px, 1fr));
  gap:28px;
  align-items:center;
}

.hero-grid > *{ min-width:0; }

.hero-copy h1{
  margin:0 0 10px;
  font-family:'Bricolage Grotesque', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:800;
  letter-spacing:0.01em;
  line-height:1.05;
  font-size:clamp(46px, 4.2vw, 72px);
  color:var(--gold-canva);
  text-transform:uppercase;
  text-shadow:
    0 1px 0 rgba(255,255,255,0.7),
    0 3px 8px rgba(0,0,0,0.08),
    0 14px 28px rgba(0,0,0,0.05);
}

.hero-celebrate{
  font-size:0.9em;
  letter-spacing:0.005em;
}

.hero-sub{
  font-family:'Bricolage Grotesque', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:600;
  letter-spacing:0.14em;
  text-transform:uppercase;
  font-size:clamp(16px, 1.6vw, 22px);
  color:#6a6a6a;
  white-space:nowrap;
}

.hero-video{
  width:100%;
  border-radius:22px;
  overflow:hidden;
  background:var(--cream);
  border:1px solid rgba(0,0,0,0.08);
  box-shadow:var(--shadow);
}

.hero-video video{
  width:100%;
  height:clamp(220px, 40vw, 320px);
  display:block;
  object-fit:cover;
  object-position:center;
}

.hero-image{
  grid-column:1 / -1;
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--shadow);
  margin:0;
  padding:0;
  line-height:0;
  background:var(--cream);
}

.hero-image img{
  width:100%;
  height:clamp(340px, 48vw, 520px);
  display:block;
  object-fit:cover;
  object-position:center;
}

.section-title{
  text-align:center;
  font-family:'Bricolage Grotesque', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:800;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--gold-canva);
  font-size:24px;
  margin-bottom:24px;
}

.about-section{
  background:#f7efe4;
  padding:20px 20px;
  text-align:center;
}

.about-box{
  max-width:1100px;
  margin:0 auto;
  background:#ffffff;
  border-radius:24px;
  padding:40px 48px;
  box-shadow:0 10px 28px rgba(0,0,0,0.05);
}

.about-box p{
  font-family:'Bricolage Grotesque', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:200;
  font-size:16px;
  line-height:1.85;
  color:#3a3a3a;
  text-align:justify;
  text-justify:inter-word;
  margin-bottom:22px;
}

.pills-wrap{
  padding:28px 0 18px;
  display:flex;
  justify-content:center;
}

.pills{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:20px;
  max-width:1100px;
}

.pill{
  min-width:200px;
  max-width:220px;
  padding:14px 22px;
  text-align:center;
  border-radius:999px;
  text-decoration:none;
  background:var(--cream);
  border:1px solid rgba(0,0,0,0.10);
  color:var(--gold);
  font-family:'Bricolage Grotesque', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:600;
  font-size:12px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  transition:all 0.25s ease;
  white-space:nowrap;
}

.pill:hover{
  transform:translateY(-4px);
  box-shadow:0 0 0 2px rgba(212,175,55,0.15);
  color:var(--gold);
}

.location-wrap{ padding:26px 0 46px; }

.location-grid{
  display:grid;
  grid-template-columns:1.15fr 0.85fr;
  gap:22px;
  align-items:stretch;
}

.map-card{
  border-radius:18px;
  overflow:hidden;
  min-height:320px;
  background:#eaf2ff;
  border:1px solid rgba(0,0,0,0.10);
}

.leasing-card{
  border-radius:18px;
  padding:28px 22px;
  background:var(--card);
  border:1px solid rgba(0,0,0,0.10);
  text-align:center;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.leasing-sub{
  margin:0 0 20px;
  font-family:'Bricolage Grotesque', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:800;
  font-size:16px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--gold-canva);
  line-height:1.4;
}

.leasing-label{
  margin:8px 0 14px;
  color:#8a8a8a;
  font-family:'Bricolage Grotesque', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:600;
  letter-spacing:0.10em;
  font-size:12px;
  text-transform:uppercase;
}

.leasing-line{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#7c7c7c;
  font-family:'Bricolage Grotesque', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight:400;
  font-size:16px;
}

@media (max-width:980px){
  .hero-copy{ text-align:center; justify-self:center; }
  .hero-copy h1{ margin-left:auto; margin-right:auto; }
  .hero-sub{ margin-left:auto; margin-right:auto; white-space:normal; }
  .location-grid{ grid-template-columns:1fr; }
  .pill{ max-width:420px; }
  .about-box p{ text-align:left; }
}

@media (max-width:520px){
  .hero-grid{ grid-template-columns:1fr; }
}

@media (max-width:768px){
  .hero .hero-grid{ width:calc(100% - 24px); }
  .hero-copy h1{ font-size:clamp(40px, 9vw, 60px); }
  .hero-sub{ margin-top:10px; }
  .about-box{ padding:28px 18px; }
  .about-box p{ font-size:15px; line-height:1.75; }
  .hero-video video{ height:240px; }
  .hero-image img{ height:auto; object-fit:contain; }
}

@media (max-width:980px) and (orientation:landscape){
  .hero-copy{ text-align:center; justify-self:center; }
  .hero-sub{ white-space:normal; }
}

@media (min-width:981px){
  .hero-copy{
    max-width:560px;
    margin-left:10px;
    padding-top:10px;
  }
}