.hero{padding:38px 0 32px}
.kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-dark);font-weight:700;margin-bottom:14px}
.hero-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:18px;min-height:570px}
.hero-main,.story-card{position:relative;overflow:hidden;background:#dfe5df}
.hero-main {position: relative; background-size: cover; background-position: center; background-repeat: no-repeat; min-height: 560px; overflow: hidden; }
.hero-main::before {content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(0,0,0,0.05) 20%,rgba(0,0,0,0.75) 100%);}
.hero-content{position:absolute;left:42px;bottom:40px;color:#fff;max-width:650px}
.hero-content .kicker{color:#dbe8d5}
.hero h1{font-size:34px;line-height:1.2;font-weight:400;margin:0 0 22px;letter-spacing:-.04em}
.hero-content p{max-width:520px;color:#e9ece9;line-height:1.7;margin:0 0 25px}
.hero-side{display:grid;grid-template-rows:1fr 1fr;gap:18px}
.story-card {position: relative; background-size: cover; background-position: center; background-repeat: no-repeat; overflow: hidden;}
.story-card::before {content: "";position: absolute;inset: 0;background: linear-gradient(180deg,rgba(0,0,0,0.05) 20%,rgba(0,0,0,0.78) 100%);}
.story-content{position:absolute;left:25px;right:25px;bottom:24px;color:#fff}
.story-content h3{font-size:23px;font-weight:400;line-height:1.10;margin:8px 0 0}
.divider-banner {display: flex; align-items: center; justify-content: center; padding-top: 32px;}

.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}
.section-title{font-size:34px;font-weight:400;margin:0;letter-spacing:.3px}
.section-link{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.category-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.pill{border:1px solid #d6ddd5;padding:10px 13px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:#fff}
.pill:hover {background-color: #dbdff8;}

.design-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:16px}
.design-card{min-height:450px;position:relative;overflow:hidden;background-size:cover;background-position:center}
.design-card.small{min-height:450px}
.design-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 65%)}
.design-card .overlay{position:absolute;z-index:1;bottom:25px;left:25px;right:25px;color:#fff}
.design-card h3{font-size:20px;font-weight:400;margin:8px 0 0;line-height:1.2}

.products{background:#eef2ec}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.product-card{background:#fff;border:1px solid #e2e7e1}
.product-img{height:190px;background-size:cover;background-position:center}
.product-info{padding:12px}
.product-info h3{font-family:var(--sans);font-size:18px;font-weight:400;margin:7px 0 0;line-height: 1.2;}
.meta{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}

.news-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.news-main{background:#fff;padding:26px}
.news-main h3{font-size:32px;font-weight:400;margin:12px 0;line-height: 1.3;}
.news-main p{color:var(--muted);line-height:1.65}
.news-items{display:grid;gap:12px}
.news-desc{background:#fff;padding:18px;display:flex;gap:18px;align-items:center}
.news-thumb{border:1px solid var(--ink);width: 100%;max-width: 92px;display:grid;place-items:center;text-align:center;font-weight:700;font-size:12px;line-height:1.05}
.news-desc h3{font-size:21px;font-weight:400;margin:0 0 5px;line-height: 1.1;}

@media(max-width:1000px){
  .hero-grid,.news-grid{grid-template-columns:1fr}
  .hero-side{grid-template-columns:1fr 1fr;grid-template-rows:1fr}
  .hero-main{min-height:500px}
  .grid-4,.product-grid{grid-template-columns:repeat(2,1fr)}
  .design-grid{grid-template-columns:1fr 1fr}
  .design-card:first-child{grid-column:1/-1}
}

@media(max-width:650px){
  .hero{padding-top:20px}
  .hero-grid{min-height:auto}
  .hero-main{min-height:500px}
  .hero-content{left:24px;right:24px;bottom:26px}
  .hero h1{font-size:45px}
  .hero-side{grid-template-columns:1fr;grid-template-rows:250px 250px}
  .section-title{font-size:34px}
  .section-head{align-items:start;gap:15px}
  .grid-4,.product-grid,.design-grid{grid-template-columns:1fr}
  .design-card,.design-card.small{min-height:380px}
  .design-card:first-child{grid-column:auto}
  .realestate{padding:28px;min-height:380px}
  .realestate h2{font-size:43px}
}