@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;700;800&family=Playfair+Display:wght@700;900&display=swap');
:root{--black:#000;--panel:#050505;--gold:#d4af37;--gold2:#f3cc69;--white:#fff;--muted:#d6d6d6}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Montserrat,Arial,sans-serif;background:#000;color:white}
img{width:100%;display:block}
a{text-decoration:none;color:inherit}
h1,h2,h3,h4{font-family:'Playfair Display',serif}
.announcement{background:#000;border-bottom:1px solid rgba(212,175,55,.55);display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:42px;padding:0 4%;font-size:14px}
.announcement strong{color:var(--gold2);font-family:'Playfair Display',serif;font-size:17px}
.nav{height:96px;background:#050505;display:flex;align-items:center;justify-content:space-between;padding:0 4%;border-bottom:1px solid rgba(212,175,55,.38);position:sticky;top:0;z-index:100}
.brand img{width:125px;height:80px;object-fit:contain}
.nav nav{display:flex;gap:25px;align-items:center;flex-wrap:wrap}
.nav nav a{font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.5px}
.nav nav a:hover,.nav nav a.active{color:var(--gold2)}
.icons{font-size:22px;letter-spacing:10px;color:white}
.hero{min-height:650px;display:flex;align-items:center;padding:0 5%;background:linear-gradient(90deg,rgba(0,0,0,.97),rgba(0,0,0,.75),rgba(0,0,0,.15)),var(--hero) center/cover no-repeat;border-bottom:1px solid var(--gold)}
.hero.small{min-height:440px}
.heroText{max-width:650px}
.kicker,.heroText>p:first-child{color:var(--gold2);text-transform:uppercase;font-family:'Playfair Display',serif;font-size:20px;letter-spacing:1px;margin-bottom:12px}
.hero h1{font-size:clamp(52px,7vw,96px);line-height:.95;text-transform:uppercase;letter-spacing:1px}
.line{width:280px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin:22px 0}
.desc{font-size:17px;line-height:1.8;color:#eee;margin-bottom:28px;max-width:670px}
.btn{display:inline-block;padding:15px 28px;border:1px solid var(--gold);background:#050505;color:var(--gold2);text-transform:uppercase;font-weight:800;font-size:13px;letter-spacing:.5px;transition:.25s}
.btn:hover{background:linear-gradient(135deg,#f3cc69,#c69622);color:#050505}
.btn.gold{background:linear-gradient(135deg,#f3cc69,#c69622);color:#050505}
.serviceBar{padding:28px 4%;background:radial-gradient(circle at center,rgba(212,175,55,.12),transparent 42%),#000;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;border-bottom:1px solid rgba(212,175,55,.55)}
.serviceBox{display:flex;gap:18px;align-items:center;padding:24px 20px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),#050505;border:1px solid rgba(212,175,55,.65);border-radius:14px;box-shadow:0 20px 45px rgba(0,0,0,.7),inset 0 0 0 1px rgba(255,255,255,.03)}
.serviceBox span{color:#050505;background:linear-gradient(135deg,#f4d477,#c79527);width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font-size:28px;flex:0 0 auto}
.serviceBox h3{color:var(--gold2);font-size:19px;text-transform:uppercase}
.serviceBox p{color:#eee;font-size:14px;line-height:1.5;margin-top:4px}
.section{padding:60px 4%;background:#000}
.section.white{background:#fff;color:#080808}
.heading{display:flex;align-items:center;justify-content:center;gap:25px;margin-bottom:34px}
.heading span{height:1px;width:170px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.heading h2{color:var(--gold2);font-size:36px;text-transform:uppercase;letter-spacing:1px;text-align:center}
.white .heading h2{color:#111}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:#050505;border:1px solid rgba(212,175,55,.75);border-radius:13px;overflow:hidden;box-shadow:0 20px 48px rgba(0,0,0,.65)}
.white .card{background:#fff;color:#111}
.card img{height:245px;object-fit:cover}
.card .body{padding:20px}
.card h3{font-size:22px;text-transform:uppercase;color:inherit}
.card p{font-size:14px;color:#ddd;line-height:1.6;margin:9px 0 14px}
.white .card p{color:#555}
.card a{color:var(--gold2);font-size:13px;font-weight:800;text-transform:uppercase}
.split{display:grid;grid-template-columns:1.15fr .85fr;background:#050505;border-top:1px solid rgba(212,175,55,.45);border-bottom:1px solid rgba(212,175,55,.45)}
.split.reverse{grid-template-columns:.85fr 1.15fr}
.split.reverse .splitImg{order:2}
.splitImg img{height:100%;min-height:430px;object-fit:cover}
.splitText{padding:60px;display:flex;flex-direction:column;justify-content:center}
.splitText h2{font-size:44px;text-transform:uppercase;color:var(--gold2);margin:8px 0 16px}
.splitText p{line-height:1.8;color:#eee;margin-bottom:24px}
.finance{display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(135deg,#f6d77d,#c99b2d);color:#050505;padding:44px 5%}
.finance h2{font-size:42px}
.finance p{font-size:18px;font-weight:800}
.trust{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(212,175,55,.55);border-bottom:1px solid rgba(212,175,55,.55);background:#050505}
.trust div{padding:32px 4%;text-align:center;border-right:1px solid rgba(212,175,55,.45)}
.trust h3{color:var(--gold2);font-size:24px;text-transform:uppercase}
.trust p{margin-top:8px;color:#eee}
.contactBox{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.form{display:grid;gap:14px}
input,textarea,select{width:100%;padding:15px;background:#060606;border:1px solid rgba(212,175,55,.65);color:#fff;font-family:Montserrat}
textarea{min-height:140px}
.infoPanel{background:#050505;border:1px solid rgba(212,175,55,.7);padding:32px;border-radius:14px}
.infoPanel h3{color:var(--gold2);font-size:28px;margin-bottom:15px}
.infoPanel p{line-height:1.9;color:#eee}
footer{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:36px;background:#000;padding:44px 5%;color:#ddd;border-top:1px solid rgba(212,175,55,.55)}
footer img{width:125px;height:95px;object-fit:contain;margin-bottom:12px}
footer h4{color:var(--gold2);font-size:18px;text-transform:uppercase;margin-bottom:12px}
footer a,footer p{display:block;font-size:14px;line-height:1.9;color:#ddd}
@media(max-width:1000px){.announcement{flex-direction:column;padding:10px}.nav{height:auto;flex-direction:column;padding:15px;gap:14px}.nav nav{justify-content:center;gap:14px}.icons{display:none}.serviceBar,.grid4,.grid3,.trust,footer,.contactBox{grid-template-columns:repeat(2,1fr)}.split,.split.reverse{grid-template-columns:1fr}.split.reverse .splitImg{order:0}.splitText{padding:38px 24px}}
@media(max-width:620px){.hero{min-height:560px;padding:30px 20px}.hero.small{min-height:380px}.hero h1{font-size:47px}.serviceBar,.grid4,.grid3,.trust,footer,.contactBox{grid-template-columns:1fr}.heading span{display:none}.finance{flex-direction:column;align-items:flex-start}.card img{height:230px}}
/* Sofa product detail layout */
.productDetailSection{background:#000}
.detailBlock{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  margin:0 auto 34px;
  max-width:1280px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.01)),
    #050505;
  border:1px solid rgba(212,175,55,.72);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 26px 70px rgba(0,0,0,.75), inset 0 0 0 1px rgba(255,255,255,.025);
}
.detailBlock.reverseDetail .detailImage{order:2}
.detailImage img{
  height:100%;
  min-height:430px;
  object-fit:cover;
}
.detailInfo{
  padding:48px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.detailInfo h2{
  color:var(--gold2);
  font-size:42px;
  text-transform:uppercase;
  margin:8px 0 14px;
}
.detailIntro{
  color:#e8e8e8;
  line-height:1.8;
  font-size:16px;
  margin-bottom:24px;
}
.detailGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-bottom:26px;
}
.detailGrid div{
  border:1px solid rgba(212,175,55,.45);
  background:#000;
  padding:16px;
  border-radius:12px;
}
.detailGrid strong{
  display:block;
  color:var(--gold2);
  font-family:'Playfair Display',serif;
  font-size:18px;
  text-transform:uppercase;
  margin-bottom:7px;
}
.detailGrid span{
  display:block;
  color:#e5e5e5;
  font-size:14px;
  line-height:1.6;
}
@media(max-width:900px){
  .detailBlock{grid-template-columns:1fr}
  .detailBlock.reverseDetail .detailImage{order:0}
  .detailInfo{padding:34px 22px}
  .detailGrid{grid-template-columns:1fr}
  .detailImage img{min-height:300px}
}

/* Interior Design Services */
.designPromo{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:44px 5%;background:linear-gradient(135deg,rgba(212,175,55,.16),rgba(255,255,255,.03)),#030303;border-top:1px solid rgba(212,175,55,.65);border-bottom:1px solid rgba(212,175,55,.65)}
.designPromo h2{color:var(--gold2);font-size:38px;text-transform:uppercase;margin:8px 0}.designPromo p{color:#e8e8e8;line-height:1.7}.interiorHero{background-position:center}.designFeature{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;max-width:1260px;margin:0 auto}.designFeature h2{color:var(--gold2);font-size:44px;text-transform:uppercase;margin:8px 0 18px}.designFeature p{color:#e8e8e8;line-height:1.8;margin-bottom:18px}.designImage{border:1px solid rgba(212,175,55,.7);border-radius:18px;overflow:hidden;box-shadow:0 24px 65px rgba(0,0,0,.75)}.designImage img{height:430px;object-fit:cover}.consultation{display:grid;grid-template-columns:.85fr 1.15fr;gap:36px;padding:60px 5%;background:radial-gradient(circle at left,rgba(212,175,55,.12),transparent 40%),#000;border-top:1px solid rgba(212,175,55,.55)}.consultationText{background:#050505;border:1px solid rgba(212,175,55,.65);border-radius:18px;padding:36px}.consultationText h2{color:var(--gold2);font-size:38px;text-transform:uppercase;margin:8px 0 18px}.consultationText p{color:#eee;line-height:1.9}.consultationForm{background:#050505;border:1px solid rgba(212,175,55,.65);border-radius:18px;padding:28px}@media(max-width:900px){.designPromo{flex-direction:column;align-items:flex-start}.designFeature{grid-template-columns:1fr}.consultation{grid-template-columns:1fr}}

/* Integrated Interior Design Services Page */
.designPromo{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:44px 5%;
  background:linear-gradient(135deg,rgba(212,175,55,.16),rgba(255,255,255,.03)),#030303;
  border-top:1px solid rgba(212,175,55,.65);
  border-bottom:1px solid rgba(212,175,55,.65);
}
.designPromo h2{
  color:var(--gold2);
  font-size:38px;
  text-transform:uppercase;
  margin:8px 0;
}
.designPromo p{color:#e8e8e8;line-height:1.7}
.designIntroGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:34px;
  align-items:center;
  max-width:1280px;
  margin:0 auto;
}
.designIntroGrid h2{
  color:var(--gold2);
  font-size:44px;
  text-transform:uppercase;
  margin:8px 0 18px;
}
.designIntroGrid p{
  color:#e8e8e8;
  line-height:1.8;
  margin-bottom:18px;
}
.designIntroGrid img{
  height:430px;
  object-fit:cover;
  border:1px solid rgba(212,175,55,.7);
  border-radius:18px;
  box-shadow:0 24px 65px rgba(0,0,0,.75);
}
.beforeAfterGallery{
  background:radial-gradient(circle at top,rgba(212,175,55,.10),transparent 42%),#000;
}
.galleryIntro{
  max-width:920px;
  margin:-12px auto 34px;
  text-align:center;
  color:#e8e8e8;
  line-height:1.8;
  font-size:16px;
}
.baGrid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:28px;
  max-width:1320px;
  margin:0 auto;
}
.baCard{
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),#050505;
  border:1px solid rgba(212,175,55,.72);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 24px 65px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.025);
}
.baCard h3{
  color:var(--gold2);
  font-size:26px;
  text-transform:uppercase;
  padding:22px 22px 0;
}
.baCard p{
  color:#e8e8e8;
  line-height:1.7;
  padding:18px 22px 24px;
}
.baImages{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  padding:20px 20px 0;
}
.baImage{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(212,175,55,.38);
  background:#000;
}
.baImage img{
  height:270px;
  object-fit:cover;
  transition:.35s;
}
.baImage:hover img{transform:scale(1.04)}
.baImage span{
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  background:linear-gradient(135deg,#f3cc69,#c69622);
  color:#050505;
  padding:7px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.4px;
}
.consultation{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:36px;
  padding:60px 5%;
  background:radial-gradient(circle at left,rgba(212,175,55,.12),transparent 40%),#000;
  border-top:1px solid rgba(212,175,55,.55);
}
.consultationText,.consultationForm{
  background:#050505;
  border:1px solid rgba(212,175,55,.65);
  border-radius:18px;
  padding:36px;
}
.consultationText h2{
  color:var(--gold2);
  font-size:38px;
  text-transform:uppercase;
  margin:8px 0 18px;
}
.consultationText p{color:#eee;line-height:1.9}
@media(max-width:900px){
  .designPromo{flex-direction:column;align-items:flex-start}
  .designIntroGrid,.consultation,.baGrid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .baImages{grid-template-columns:1fr}
  .baImage img{height:230px}
}

/* Google Reviews + Happy Customers Trust Bar */
.reviewsSection{
  padding:64px 5%;
  background:
    radial-gradient(circle at top,rgba(212,175,55,.10),transparent 42%),
    #000;
  border-top:1px solid rgba(212,175,55,.55);
}
.reviewsIntro{
  max-width:850px;
  margin:-10px auto 34px;
  text-align:center;
  color:#e8e8e8;
  line-height:1.8;
  font-size:16px;
}
.reviewGrid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  max-width:1280px;
  margin:0 auto;
}
.reviewCard{
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),#050505;
  border:1px solid rgba(212,175,55,.72);
  border-radius:18px;
  padding:26px;
  box-shadow:0 22px 58px rgba(0,0,0,.72),inset 0 0 0 1px rgba(255,255,255,.025);
}
.reviewCard .stars{
  color:var(--gold2);
  letter-spacing:3px;
  font-size:24px;
  margin-bottom:16px;
}
.reviewCard p{
  color:#f0f0f0;
  line-height:1.8;
  min-height:86px;
}
.reviewCard h3{
  color:var(--gold2);
  margin-top:18px;
  font-size:21px;
}
.reviewCard span{
  color:#aaa;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.5px;
}
.happyCustomersBar{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:rgba(212,175,55,.55);
  border-top:1px solid rgba(212,175,55,.75);
  border-bottom:1px solid rgba(212,175,55,.75);
}
.happyCustomersBar div{
  background:#050505;
  padding:28px 20px;
  text-align:center;
}
.happyCustomersBar strong{
  display:block;
  color:var(--gold2);
  font-family:'Playfair Display',serif;
  font-size:24px;
  text-transform:uppercase;
  margin-bottom:8px;
}
.happyCustomersBar span{
  color:#e8e8e8;
  font-size:14px;
}
@media(max-width:900px){
  .reviewGrid,.happyCustomersBar{grid-template-columns:1fr}
  .reviewCard p{min-height:auto}
}

/* Final single Interior Design Services section on homepage */
.homeDesignFeature{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:34px;
  align-items:center;
  padding:64px 5%;
  background:
    radial-gradient(circle at left,rgba(212,175,55,.12),transparent 42%),
    #000;
  border-top:1px solid rgba(212,175,55,.65);
  border-bottom:1px solid rgba(212,175,55,.65);
}
.homeDesignText{
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),#050505;
  border:1px solid rgba(212,175,55,.72);
  border-radius:18px;
  padding:38px;
  box-shadow:0 24px 65px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.025);
}
.homeDesignText h2{
  color:var(--gold2);
  font-size:40px;
  text-transform:uppercase;
  margin:8px 0 18px;
}
.homeDesignText p{
  color:#e8e8e8;
  line-height:1.8;
  margin-bottom:14px;
}
.designChecks{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:22px 0 26px;
}
.designChecks span{
  color:#fff;
  border:1px solid rgba(212,175,55,.45);
  background:#000;
  padding:12px;
  border-radius:10px;
  font-size:14px;
}
.homeDesignCollage{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.homeDesignCollage img{
  height:215px;
  object-fit:cover;
  border:1px solid rgba(212,175,55,.72);
  border-radius:16px;
  box-shadow:0 18px 42px rgba(0,0,0,.7);
}
@media(max-width:900px){
  .homeDesignFeature{grid-template-columns:1fr}
}
@media(max-width:620px){
  .designChecks,.homeDesignCollage{grid-template-columns:1fr}
  .homeDesignText{padding:28px 20px}
}

/* Expanded product photo galleries */
.productGalleryCard img{
  height:260px;
  object-fit:cover;
}
.productGalleryCard{
  transition:.25s;
}
.productGalleryCard:hover{
  transform:translateY(-4px);
  box-shadow:0 26px 70px rgba(0,0,0,.8);
}


/* Coffee Tables catalog additions */
.productDetailSection .detailImage img{height:100%;object-fit:contain;background:#fff;padding:16px}
.productDetailSection .detailImage{background:#fff}
.card img{background:#fff}
@media(max-width:900px){.grid4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.grid4{grid-template-columns:1fr}.announcement{flex-direction:column;padding:10px}.icons{display:none}}
