/* Benz One-Page (Matched to approved PDF render) */
:root{
  --text:#111;
  --muted:#3a3a3a;
  --muted2:#6c6c6c;
  --line:#e9e9e9;
  --gold:#b08b4a;
  --max:1060px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--text);
  background:#fff;

  overflow-x:hidden;}

a{color:inherit; text-decoration:none}
img{max-width:100%; display:block}
.container{max-width:var(--max); margin:0 auto; padding:0 22px}

/* Full-bleed (edge-to-edge) blocks inside a centered container */
.fullbleed{
  width:100vw;
  margin-left: calc(50% - 50vw);
}
.fullbleed img{
  display:block;
  width:100%;
  height:auto;
}


/* HERO */
.hero{
  position:relative;
  min-height: 560px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  background:
    linear-gradient(to bottom, rgba(0,0,0,.25), rgba(0,0,0,.15) 35%, rgba(0,0,0,.35)),
    url("../img/hero.jpg") center/cover no-repeat;
  overflow:hidden;
}

.hero::after{
  content:"";
  position:absolute;
  left:0; right:0; top:0; height:140px;
  background: linear-gradient(to bottom, rgba(0,0,0,.35), rgba(0,0,0,0));
  pointer-events:none;
}

.hero-nav{position:absolute;left:0;right:0;top:0;z-index:3;padding:18px 0;background:linear-gradient(to bottom, rgba(0,0,0,.18), rgba(0,0,0,0));backdrop-filter:saturate(120%) blur(6px)}
.nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
}
.brand img{height:64px;width:auto;display:block;filter:drop-shadow(0 6px 16px rgba(0,0,0,.35));}

.menu{
  display:flex;
  gap:22px;
  align-items:center;
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  font-weight:500;
}
.menu a{
  opacity:.95;
  padding:8px 2px;
  border-bottom:1px solid transparent;
}
.menu a:hover{border-bottom-color:rgba(255,255,255,.65)}
.menu .sep{opacity:.55}

.hero-content{
  position:relative;
  z-index:2;
  padding: 40px 22px 60px;
  max-width: 980px;
}
.hero h1{
  margin:0 0 18px;
  font-weight:300;
  font-size:46px;
  line-height:1.12;
  text-shadow: 0 10px 30px rgba(0,0,0,.55);
}
.btn{
  display:inline-block;
  padding: 12px 26px;
  background:#fff;
  color:#111;
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 2px;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  font-weight:600;
}
.btn:hover{transform: translateY(-1px)}
.scroll-indicator{
  position:absolute;
  bottom:16px;
  left:50%;
  transform:translateX(-50%);
  width:1px;
  height:28px;
  background:rgba(255,255,255,.8);
  opacity:.9;
}

/* Section base */
.section{
  padding: 70px 0;
}
.section.tight{padding: 55px 0}
.section-title{
  text-align:center;
  font-size:28px;
  letter-spacing:2.5px;
  font-weight:500;
  text-transform:uppercase;
  margin: 0 0 18px;
}
.section-sub{
  text-align:center;
  max-width:860px;
  margin: 0 auto 24px;
  color: var(--muted);
  font-size:13px;
  line-height:1.85;
}
.small-note{
  text-align:center;
  max-width:860px;
  margin: 0 auto 10px;
  color: var(--muted);
  font-size:12.5px;
  line-height:1.85;
}

/* Full-width media block like the PDF */
.media{
  margin-top: 26px;
}
.media img{
  width:100%;
  border-radius:0;
}

/* Eco overlay */
.eco{
  position:relative;
  overflow:hidden;
  background:#f7f7f7;
}
.eco img{
  width:100%;
}
.eco .eco-text{
  position:absolute;
  left:34px;
  top:34px;
  color:#111;
  max-width: 440px;
}
.eco .eco-title{
  font-family: "Bebas Neue", "Oswald", sans-serif;
  font-size:76px;
  line-height:0.9;
  letter-spacing:1px;
  margin:0 0 8px;
  text-transform:uppercase;
}
.eco .eco-sub{
  font-size:11px;
  line-height:1.4;
  color:#222;
  opacity:.9;
}

/* Vision/Mission titles */
.center-block{
  text-align:center;
  max-width: 860px;
  margin:0 auto;
}
.center-block p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.9;
}

/* Core Values */
.core-hero{padding-bottom:20px}
.core-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:26px;
  margin-top: 26px;
}
.value-card{
  border-top: 1px solid var(--line);
  padding-top: 18px;
}
.value-card h3{
  margin:0 0 10px;
  font-size:13.5px;
  color: var(--gold);
  font-weight:600;
  letter-spacing:.4px;
}
.value-card p{
  margin:0;
  color:var(--muted);
  font-size:12.5px;
  line-height:1.85;
}
.slider-ui{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin-top: 28px;
  color:#999;
}
.slider-ui .line{
  width:46px; height:1px; background:#111; opacity:.45;
}
.slider-ui .arrows{display:flex; gap:12px; align-items:center; font-size:18px;}

/* Projects */
.cards{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 26px;
  margin-top: 28px;
}
.card{
  border: 1px solid var(--line);
  background:#fff;
}
.card .imgwrap{
  padding:14px 14px 0;
}
.card img{width:100%}
.card .body{
  padding: 14px 16px 18px;
}
.card h3{
  margin:0 0 8px;
  font-size:16px;
  letter-spacing:.5px;
  font-weight:600;
  text-transform:uppercase;
}
.card p{
  margin:0;
  font-size:12.5px;
  line-height:1.85;
  color:var(--muted);
}

/* Upcoming */
.upcoming{
  padding-bottom: 0;
}
.upcoming-wrap{position:relative;overflow:hidden;border:none;border-radius:0;height:520px;box-shadow:none}
.upcoming-wrap img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.02);filter:saturate(1.06) contrast(1.04)}
.upcoming-wrap img.overlay{
  position:absolute;
  left:50%;
  top:55%;
  transform: translate(-50%,-50%);
  width: 520px;
  max-width: 78%;
  opacity: .98;
}
.upcoming-wrap .discover{position:absolute;left:50%;top:calc(50% + 120px);transform:translateX(-50%);z-index:2}

/* Footer */
.footer{
  margin-top: 0;
  padding: 0;
  position:relative;
  background:#000;
}
.footer-hero{
  position:relative;
}
.footer-hero img{width:100%}
.footer-bar{
  position:absolute;
  left:0; right:0;
  bottom:0;
  background: rgba(40,40,40,.88);
  color:#ddd;
  padding: 28px 0;
}
.footer-grid{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 22px;
}
.footer-left{
  font-size:11.5px;
  line-height:1.85;
  color:#ddd;
  max-width: 520px;
}
.footer-left strong{color:#fff}
.footer-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
.footer-right img{
  width: 230px;   /* bigger footer logo */
  height:auto;
  opacity: .95;
}
.footer-bottom{
  height: 110px;
  background:#000;
}

/* Mobile */
.burger{
  display:none;
  width: 38px; height: 38px;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 10px;
  align-items:center;
  justify-content:center;
  gap:4px;
  flex-direction:column;
  background: rgba(0,0,0,.18);
}
.burger span{
  width: 18px; height:2px;
  background:#fff;
  display:block;
  opacity:.9;
}

@media (max-width: 980px){
  .hero{min-height: 600px}
  .hero h1{font-size:38px}
  .brand img{height:42px;width:auto;display:block;filter:drop-shadow(0 6px 16px rgba(0,0,0,.35));}
  .core-grid{grid-template-columns:1fr; gap:18px}
  .cards{grid-template-columns:1fr}
}

@media (max-width: 760px){
  .menu{display:none}
  .burger{display:flex}
  .hero h1{font-size:30px}
  .section{padding: 56px 0}
  .eco .eco-title{font-size:56px}
  .eco .eco-text{left:20px; top:20px}
  .footer-grid{flex-direction:column; align-items:flex-start}
}


/* Upcoming project section - fixed layout */
.upcoming-wrap{position:relative;overflow:hidden;border:none;border-radius:0;height:520px;box-shadow:none}
.upcoming-wrap .bg{
  width:100%;
  height: 520px;
  object-fit: cover;
  display:block;
}
.upcoming-wrap .u-card{
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%,-50%);
  width:min(72%, 560px);
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(255,255,255,.7);
  padding: 26px 24px;
  text-align:center;
  backdrop-filter: blur(6px);
}
.upcoming-wrap .u-top{
  font-family: var(--serif);
  font-size: 56px;
  letter-spacing: 2px;
  color:#111;
  margin-bottom: 8px;
}
.upcoming-wrap .u-mid{
  font-size: 18px;
  letter-spacing: 6px;
  text-transform: uppercase;
  color:#111;
  opacity: .92;
  margin-bottom: 10px;
}
.upcoming-wrap .u-mid .diamond{letter-spacing:0; margin: 0 8px;}
.upcoming-wrap .u-bot{
  font-size: 28px;
  letter-spacing: 6px;
  text-transform: uppercase;
  color:#111;
  border-top: 1px solid rgba(0,0,0,.18);
  padding-top: 10px;
}
.upcoming-wrap .discover{position:absolute;left:50%;top:calc(50% + 120px);transform:translateX(-50%);z-index:2}
.upcoming-wrap .discover:hover{background: rgba(0,0,0,.42);}

@media (max-width: 720px){
  .upcoming-wrap .bg{height: 420px;}
  .upcoming-wrap .u-top{font-size: 40px;}
  .upcoming-wrap .u-mid{font-size: 13px; letter-spacing: 4px;}
  .upcoming-wrap .u-bot{font-size: 20px; letter-spacing: 4px;}
  .upcoming-wrap .discover{position:absolute;left:50%;top:calc(50% + 120px);transform:translateX(-50%);z-index:2}
}

/* Footer hero height clamp (prevents huge image) */
.footer-hero{position:relative; height: 520px; overflow:hidden;}
.footer-hero > img{width:100%; height:100%; object-fit:cover; display:block;}

/* Hero overlays (subtle geometry, premium look) */
.hero::before{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.35) 45%, rgba(0,0,0,.55));
  pointer-events:none;
}
.hero::after{
  content:"";
  position:absolute; inset:-2px;
  background:
    radial-gradient(70% 120% at 20% 50%, rgba(255,255,255,.10), rgba(255,255,255,0) 55%),
    radial-gradient(70% 120% at 80% 50%, rgba(255,255,255,.08), rgba(255,255,255,0) 55%);
  mix-blend-mode: overlay;
  pointer-events:none;
}


/* Footer (updated) */
.footer{
  margin-top: 0;
  padding: 64px 0 56px;
  background:
    radial-gradient(1200px 500px at 30% -30%, rgba(255,255,255,.10), transparent 60%),
    radial-gradient(900px 420px at 85% 20%, rgba(255,255,255,.06), transparent 65%),
    #070707;
  color: rgba(255,255,255,.84);
}
.footer-grid{
  display:grid;
  grid-template-columns: 1.35fr .65fr;
  gap: 36px;
  align-items:end;
}
.footer-left{
  font-size:14px;
  line-height:1.85;
}
.footer-left strong{color:#fff;font-weight:600;}
.footer-left .f-space{height:14px;}
.footer a{
  color:#fff;
  opacity:.92;
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.28);
}
.footer a:hover{
  opacity:1;
  border-bottom-color: rgba(255,255,255,.55);
}
.footer-right{
  display:flex;
  justify-content:flex-end;
}
.footer-logo{
  height:64px;
  width:auto;
  display:block;
  filter: drop-shadow(0 10px 26px rgba(0,0,0,.45));
}
@media (max-width: 880px){
  .footer-grid{grid-template-columns:1fr;}
  .footer-right{justify-content:flex-start;margin-top:14px;}
  .footer-logo{height:64px;}
}


/* v5 overrides */
.upcoming .container{max-width:1200px}
@media(max-width:860px){.brand img{height:52px}}
@media(max-width:860px){.upcoming-wrap{height:420px}.upcoming-wrap .discover{top:calc(50% + 96px)}}

.upcoming-wrap img.title{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:min(820px,78%);width:auto;height:auto;opacity:.98;filter:drop-shadow(0 14px 26px rgba(0,0,0,.35))}
