/* =========================================================
   Royalbrandgems Luxury Detail Page
   /skin/royal/css/rbg-content-detail.min.css
========================================================= */

:root{
  --rbg-green:#123d33;
  --rbg-green-dark:#0c2b24;
  --rbg-gold:#c8a96b;
  --rbg-bg:#f7f6f2;
  --rbg-text:#222;
  --rbg-muted:#777;
  --rbg-border:#e5e5e5;
  --rbg-white:#fff;
  --rbg-radius:18px;
  --rbg-shadow:0 10px 35px rgba(0,0,0,.06);
}

body.rbg-body{
  background:var(--rbg-bg);
  color:var(--rbg-text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  line-height:1.7;
}

.rbg-detail-page{
  max-width:1400px;
  margin:0 auto;
  padding:40px 20px 80px;
}

/* breadcrumb */

.rbg-breadcrumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:40px;
  font-size:14px;
  color:var(--rbg-muted);
}

.rbg-breadcrumb a{
  color:var(--rbg-green);
  text-decoration:none;
  transition:.25s;
}

.rbg-breadcrumb a:hover{
  color:var(--rbg-gold);
}

/* main product */

.rbg-luxury-product{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:60px;
  align-items:start;
  margin-bottom:90px;
}

/* gallery */

.rbg-gallery-wrap{
  position:sticky;
  top:30px;
}

.rbg-main-image{
  background:#fff;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--rbg-shadow);
  margin-bottom:20px;
}

.rbg-main-image img{
  width:100%;
  display:block;
  object-fit:cover;
  transition:transform .5s ease;
}

.rbg-main-image:hover img{
  transform:scale(1.03);
}

.rbg-thumb-list{
  display:flex;
  gap:12px;
}

.rbg-thumb-list img{
  width:88px;
  height:88px;
  object-fit:cover;
  border-radius:14px;
  border:2px solid transparent;
  cursor:pointer;
  transition:.25s;
  background:#fff;
}

.rbg-thumb-list img:hover{
  border-color:var(--rbg-gold);
}

/* info */

.rbg-product-info{
  display:flex;
  flex-direction:column;
  gap:28px;
}

.rbg-kicker{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:2px;
  color:var(--rbg-gold);
  font-weight:700;
}

.rbg-product-info h1{
  font-size:44px;
  line-height:1.2;
  margin:0;
  color:var(--rbg-green-dark);
  font-weight:700;
}

.rbg-short-desc{
  font-size:17px;
  color:#444;
  line-height:1.9;
}

/* luxury tags */

.rbg-luxury-tags{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.rbg-luxury-tags span{
  background:#fff;
  border:1px solid var(--rbg-border);
  padding:10px 16px;
  border-radius:999px;
  font-size:13px;
  color:var(--rbg-green);
  font-weight:600;
}

/* meta */

.rbg-meta-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.rbg-meta-item{
  background:#fff;
  border-radius:18px;
  padding:20px;
  border:1px solid var(--rbg-border);
}

.rbg-meta-item label{
  display:block;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:1px;
  color:var(--rbg-muted);
  margin-bottom:10px;
}

.rbg-meta-item strong{
  font-size:16px;
  color:var(--rbg-green-dark);
}

/* inquiry box */

.rbg-inquiry-box{
  background:#fff;
  border-radius:24px;
  padding:34px;
  border:1px solid var(--rbg-border);
  box-shadow:var(--rbg-shadow);
}

.rbg-inquiry-box h2{
  margin:0 0 14px;
  font-size:28px;
  color:var(--rbg-green-dark);
}

.rbg-inquiry-box p{
  margin:0 0 28px;
  color:#555;
  line-height:1.8;
}

/* buttons */

.rbg-action-row{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
}

.rbg-btn-primary,
.rbg-btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:0 28px;
  border-radius:999px;
  text-decoration:none;
  font-size:15px;
  font-weight:700;
  transition:.3s;
}

.rbg-btn-primary{
  background:var(--rbg-green);
  color:#fff;
}

.rbg-btn-primary:hover{
  background:var(--rbg-green-dark);
  transform:translateY(-2px);
}

.rbg-btn-secondary{
  background:#fff;
  color:var(--rbg-green);
  border:1px solid var(--rbg-green);
}

.rbg-btn-secondary:hover{
  background:var(--rbg-green);
  color:#fff;
}

/* service points */

.rbg-service-points{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.rbg-service-points div{
  background:#fff;
  border-radius:18px;
  padding:18px;
  border:1px solid var(--rbg-border);
  font-size:14px;
  font-weight:600;
  color:var(--rbg-green-dark);
}

/* sections */

.rbg-story-section,
.rbg-faq-section,
.rbg-related-section{
  margin-top:90px;
}

.rbg-section-heading{
  margin-bottom:34px;
}

.rbg-section-heading p{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:2px;
  color:var(--rbg-gold);
  margin-bottom:10px;
}

.rbg-section-heading h2{
  font-size:38px;
  line-height:1.3;
  color:var(--rbg-green-dark);
  margin:0;
}

/* content */

.rbg-content-body{
  background:#fff;
  border-radius:24px;
  padding:50px;
  box-shadow:var(--rbg-shadow);
}

.rbg-content-body img{
  max-width:100%;
  height:auto;
  border-radius:16px;
  margin:24px 0;
}

.rbg-content-body h2,
.rbg-content-body h3{
  color:var(--rbg-green-dark);
  margin-top:40px;
}

.rbg-content-body p{
  margin-bottom:22px;
  color:#444;
  line-height:1.9;
}

/* faq */

.rbg-faq-list{
  display:flex;
  flex-direction:column;
  gap:24px;
}

.rbg-faq-item{
  background:#fff;
  border-radius:20px;
  padding:32px;
  box-shadow:var(--rbg-shadow);
}

.rbg-faq-item h3{
  margin:0 0 12px;
  font-size:22px;
  color:var(--rbg-green-dark);
}

.rbg-faq-item p{
  margin:0;
  color:#555;
  line-height:1.8;
}

/* related */

.rbg-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:34px;
}

.rbg-section-head h2{
  font-size:34px;
  margin:0;
  color:var(--rbg-green-dark);
}

.rbg-section-head a{
  color:var(--rbg-green);
  text-decoration:none;
  font-weight:700;
}

.rbg-related-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:28px;
}

.rbg-related-card{
  background:#fff;
  border-radius:24px;
  overflow:hidden;
  transition:.35s;
  box-shadow:var(--rbg-shadow);
}

.rbg-related-card:hover{
  transform:translateY(-6px);
}

.rbg-related-card a{
  text-decoration:none;
  color:inherit;
}

.rbg-related-image{
  aspect-ratio:1/1;
  overflow:hidden;
}

.rbg-related-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s;
}

.rbg-related-card:hover img{
  transform:scale(1.06);
}

.rbg-related-card h3{
  padding:22px;
  font-size:18px;
  line-height:1.5;
  color:var(--rbg-green-dark);
}

/* skip */

.rbg-skip{
  position:absolute;
  left:-9999px;
}

.rbg-skip:focus{
  left:20px;
  top:20px;
  z-index:9999;
  background:#000;
  color:#fff;
  padding:10px 16px;
}

/* mobile */

@media(max-width:1200px){

  .rbg-luxury-product{
    grid-template-columns:1fr;
  }

  .rbg-gallery-wrap{
    position:relative;
    top:auto;
  }

  .rbg-related-grid{
    grid-template-columns:repeat(2,1fr);
  }

}

@media(max-width:768px){

  .rbg-detail-page{
    padding:24px 16px 60px;
  }

  .rbg-product-info h1{
    font-size:32px;
  }

  .rbg-section-heading h2{
    font-size:28px;
  }

  .rbg-content-body{
    padding:28px;
  }

  .rbg-meta-grid{
    grid-template-columns:1fr;
  }

  .rbg-service-points{
    grid-template-columns:1fr;
  }

  .rbg-related-grid{
    grid-template-columns:1fr;
  }

  .rbg-action-row{
    flex-direction:column;
  }

  .rbg-btn-primary,
  .rbg-btn-secondary{
    width:100%;
  }

}