/* =====================================================================
   Shaurya Dev Group — Theme styles (gold + maroon luxury solar)
   ===================================================================== */
:root {
	--sdg-maroon: #7a0d12;
	--sdg-maroon-dark: #5c0a0e;
	--sdg-gold: #d4af37;
	--sdg-gold-soft: #f0c75e;
	--sdg-dark: #2b1a0f;
	--sdg-cream: #fbf7ef;
	--sdg-ink: #2b1a0f;
	--sdg-muted: #6b5b4d;
	--sdg-line: rgba(122, 13, 18, 0.12);
	--sdg-gold-grad: linear-gradient(135deg, #f5d98b 0%, #d4af37 45%, #b8860b 100%);
	--sdg-maroon-grad: linear-gradient(135deg, #7a0d12 0%, #5c0a0e 100%);
	--sdg-shadow: 0 20px 50px -20px rgba(43, 26, 15, 0.35);
	--sdg-radius: 18px;
}

body.sdg-theme {
	font-family: 'Jost', sans-serif;
	color: var(--sdg-ink);
	background: #fff;
	line-height: 1.65;
	font-size: 17px;
}
.sdg-theme h1, .sdg-theme h2, .sdg-theme h3, .sdg-theme h4 {
	font-family: 'Cinzel', serif;
	color: var(--sdg-maroon);
	line-height: 1.15;
	letter-spacing: 0.01em;
	margin: 0 0 0.5em;
}
.sdg-theme a { color: var(--sdg-maroon); text-decoration: none; transition: color .25s ease; }
.sdg-theme a:hover { color: var(--sdg-gold); }
.sdg-theme img { max-width: 100%; height: auto; display: block; }
.sdg-container { width: min(1200px, 92%); margin-inline: auto; }
.sdg-section { padding: 72px 0; }

/* ---------- Buttons ---------- */
.sdg-btn {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 14px 28px; border-radius: 999px;
	font-family: 'Jost', sans-serif; font-weight: 600; font-size: 15px;
	letter-spacing: .02em; cursor: pointer; border: none;
	transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease, color .25s ease;
}
.sdg-btn--sm { padding: 10px 18px; font-size: 14px; }
.sdg-btn--gold { background: var(--sdg-gold-grad); color: #3a2400; box-shadow: 0 12px 26px -10px rgba(184,134,11,.75); }
.sdg-btn--gold:hover { transform: translateY(-2px); box-shadow: 0 18px 34px -10px rgba(184,134,11,.9); color:#3a2400; }
.sdg-btn--maroon { background: var(--sdg-maroon-grad); color: #fff; }
.sdg-btn--maroon:hover { transform: translateY(-2px); color:#fff; }
.sdg-btn--ghost { background: transparent; color: var(--sdg-maroon); border: 2px solid var(--sdg-line); }
.sdg-btn--ghost:hover { border-color: var(--sdg-gold); }
.sdg-btn--ghost-light { background: rgba(255,255,255,.12); color:#fff; border: 2px solid rgba(255,255,255,.5); backdrop-filter: blur(6px); }
.sdg-btn--ghost-light:hover { background: rgba(255,255,255,.22); color:#fff; }

.sdg-kicker {
	display: inline-block; font-family:'Jost'; font-weight:600; text-transform: uppercase;
	letter-spacing: .22em; font-size: 12px; color: var(--sdg-gold);
	background: rgba(212,175,55,.12); padding: 6px 16px; border-radius: 999px; margin-bottom: 14px;
}

/* ---------- Top bar ---------- */
.sdg-topbar { background: var(--sdg-maroon-grad); color: #f4e6c8; font-size: 13.5px; }
.sdg-topbar__inner { display:flex; justify-content: space-between; align-items:center; padding: 9px 0; flex-wrap: wrap; gap: 6px; }
.sdg-topbar__tag { letter-spacing: .06em; }
.sdg-topbar__tag i { color: var(--sdg-gold-soft); }
.sdg-topbar__contact { display:flex; gap: 20px; }
.sdg-topbar__contact a { color:#f4e6c8; }
.sdg-topbar__contact a:hover { color: var(--sdg-gold-soft); }
.sdg-topbar i { margin-right: 5px; }

/* ---------- Header ---------- */
.sdg-header { background: #fff; position: sticky; top: 0; z-index: 999; box-shadow: 0 6px 24px -18px rgba(43,26,15,.6); border-bottom: 3px solid transparent; border-image: var(--sdg-gold-grad) 1; }
.sdg-header__inner { display: flex; align-items: center; gap: 24px; padding: 12px 0; }
.sdg-header__brand img, .custom-logo { max-height: 66px; width: auto; }
.sdg-header__brand { margin-right: auto; }
.sdg-nav { margin-left: auto; }
.sdg-menu { display:flex; gap: 4px; list-style:none; margin:0; padding:0; }
.sdg-menu li { position: relative; }
.sdg-menu a { display:block; padding: 10px 15px; font-weight: 500; color: var(--sdg-dark); border-radius: 8px; font-size: 15.5px; }
.sdg-menu a:hover, .sdg-menu .current-menu-item > a { color: var(--sdg-maroon); background: rgba(212,175,55,.12); }
.sdg-menu .sub-menu { position:absolute; top: 100%; left:0; background:#fff; min-width: 210px; box-shadow: var(--sdg-shadow); border-radius: 12px; padding: 8px; display:none; z-index: 50; }
.sdg-menu li:hover > .sub-menu { display:block; }
.sdg-header__cta { display:flex; gap: 10px; }
.sdg-nav-toggle { display:none; flex-direction: column; gap:5px; background:none; border:none; cursor:pointer; padding: 8px; }
.sdg-nav-toggle span { width: 26px; height: 3px; background: var(--sdg-maroon); border-radius: 3px; transition: .3s; }

/* ---------- Hero ---------- */
.sdg-hero { position: relative; color:#fff; padding: 120px 0; background: var(--sdg-maroon-grad); overflow:hidden; }
.sdg-hero::before { content:""; position:absolute; inset:0; background-image: var(--sdg-hero-img); background-size: cover; background-position: center; opacity:.28; }
.sdg-hero::after { content:""; position:absolute; inset:0; background: linear-gradient(90deg, rgba(92,10,14,.94) 0%, rgba(92,10,14,.6) 55%, rgba(92,10,14,.25) 100%); }
.sdg-hero__inner { position: relative; z-index:2; width: min(1200px, 92%); margin-inline:auto; max-width: 760px; }
.sdg-hero__title { color:#fff; font-size: clamp(2rem, 5vw, 3.6rem); text-shadow: 0 3px 18px rgba(0,0,0,.35); }
.sdg-hero__sub { font-size: 1.15rem; color:#f4e6c8; max-width: 560px; }
.sdg-badge-pill { display:inline-block; background: rgba(212,175,55,.2); border:1px solid rgba(240,199,94,.5); color:#f4e6c8; padding: 8px 18px; border-radius:999px; font-size:13px; letter-spacing:.05em; margin-bottom: 22px; }
.sdg-hero__pills { display:flex; flex-wrap:wrap; gap: 12px; margin: 26px 0 30px; }
.sdg-hero__pills span { background: rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.22); padding: 8px 18px; border-radius: 999px; font-size: 14px; font-weight: 500; }
.sdg-hero__cta { display:flex; gap: 14px; flex-wrap:wrap; }

/* ---------- Stats ---------- */
.sdg-stats { display:grid; grid-template-columns: repeat(4,1fr); gap: 20px; width:min(1200px,92%); margin: -46px auto 0; position: relative; z-index: 5; }
.sdg-stat { background:#fff; border-radius: var(--sdg-radius); padding: 28px 20px; text-align:center; box-shadow: var(--sdg-shadow); border-top: 4px solid var(--sdg-gold); }
.sdg-stat span { display:block; font-family:'Cinzel'; font-size: 2rem; font-weight:700; color: var(--sdg-maroon); }
.sdg-stat small { color: var(--sdg-muted); font-size: 13.5px; letter-spacing: .04em; }

/* ---------- CTA banner ---------- */
.sdg-cta-banner { background: var(--sdg-maroon-grad); color:#fff; text-align:center; padding: 70px 24px; position:relative; overflow:hidden; }
.sdg-cta-banner::before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 80% 20%, rgba(212,175,55,.35), transparent 55%); }
.sdg-cta-banner > * { position: relative; z-index:2; }
.sdg-cta-banner h2 { color:#fff; font-size: clamp(1.6rem,4vw,2.6rem); }
.sdg-cta-banner p { color:#f4e6c8; max-width:640px; margin: 0 auto 26px; }
.sdg-cta-banner .sdg-hero__cta { justify-content:center; }

/* ---------- Products ---------- */
.sdg-products { display:grid; gap: 26px; margin-top: 10px; }
.sdg-cols-2 { grid-template-columns: repeat(2,1fr); }
.sdg-cols-3 { grid-template-columns: repeat(3,1fr); }
.sdg-cols-4 { grid-template-columns: repeat(4,1fr); }
.sdg-product { position:relative; background:#fff; border-radius: var(--sdg-radius); overflow:hidden; box-shadow: var(--sdg-shadow); border:1px solid var(--sdg-line); transition: transform .3s ease, box-shadow .3s ease; display:flex; flex-direction:column; }
.sdg-product:hover { transform: translateY(-6px); box-shadow: 0 30px 60px -24px rgba(43,26,15,.5); }
.sdg-product__badge { position:absolute; top:14px; left:14px; z-index:3; background: var(--sdg-gold-grad); color:#3a2400; font-weight:700; font-size:12px; padding:5px 14px; border-radius:999px; }
.sdg-product__media { aspect-ratio: 4/3; background: var(--sdg-cream); overflow:hidden; }
.sdg-product__media img { width:100%; height:100%; object-fit: cover; }
.sdg-product__ph { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size: 3rem; color: var(--sdg-gold); background: var(--sdg-cream); }
.sdg-product__body { padding: 22px; display:flex; flex-direction:column; gap:12px; flex:1; }
.sdg-product__body h3 { font-size: 1.2rem; margin:0; }
.sdg-product__meta { display:flex; gap: 16px; color: var(--sdg-muted); font-size: 14px; }
.sdg-product__meta i { color: var(--sdg-gold); }
.sdg-product__features { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; font-size: 14.5px; }
.sdg-product__features i { color: var(--sdg-maroon); margin-right:6px; }
.sdg-product__foot { margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap: 12px; padding-top: 6px; }
.sdg-product__price { font-family:'Cinzel'; font-weight:700; color: var(--sdg-maroon); font-size: 1.15rem; }
.sdg-empty { text-align:center; color: var(--sdg-muted); grid-column: 1 / -1; padding: 40px; }

/* ---------- Blog cards ---------- */
.sdg-post-grid { display:grid; grid-template-columns: repeat(3,1fr); gap: 26px; }
.sdg-card { background:#fff; border-radius: var(--sdg-radius); overflow:hidden; box-shadow: var(--sdg-shadow); border:1px solid var(--sdg-line); transition: transform .3s ease; }
.sdg-card:hover { transform: translateY(-5px); }
.sdg-card__media { display:block; aspect-ratio: 16/10; overflow:hidden; }
.sdg-card__media img { width:100%; height:100%; object-fit:cover; }
.sdg-card__body { padding: 22px; }
.sdg-card__title { font-size: 1.25rem; }
.sdg-card__meta { color: var(--sdg-gold); font-size: 13px; letter-spacing:.05em; margin-bottom: 8px; text-transform: uppercase; }
.sdg-readmore { font-weight:600; }
.sdg-pagination { margin-top: 40px; text-align:center; }
.sdg-pagination .page-numbers { display:inline-block; padding: 8px 14px; margin: 2px; border-radius: 8px; background: var(--sdg-cream); }
.sdg-pagination .current { background: var(--sdg-maroon); color:#fff; }

/* ---------- Rich content ---------- */
.sdg-rich h2 { margin-top: 1.4em; }
.sdg-rich table { width:100%; border-collapse: collapse; margin: 20px 0; }
.sdg-rich th, .sdg-rich td { border:1px solid var(--sdg-line); padding: 12px 14px; text-align:left; }
.sdg-rich th { background: var(--sdg-cream); }

/* ---------- Single ---------- */
.sdg-single__media { border-radius: var(--sdg-radius); overflow:hidden; margin-bottom: 24px; box-shadow: var(--sdg-shadow); }
.sdg-product-spec { display:grid; grid-template-columns: repeat(auto-fit,minmax(140px,1fr)); gap: 16px; margin: 20px 0 28px; }
.sdg-product-spec div { background: var(--sdg-cream); border-radius: 14px; padding: 16px; border-left: 4px solid var(--sdg-gold); }
.sdg-product-spec small { display:block; color: var(--sdg-muted); font-size: 12.5px; text-transform: uppercase; letter-spacing:.05em; }
.sdg-product-spec strong { font-family:'Cinzel'; color: var(--sdg-maroon); font-size: 1.1rem; }
.sdg-single { max-width: 820px; margin-inline:auto; }

/* ---------- Footer ---------- */
.sdg-footer { background: var(--sdg-dark); color: #e8ddce; padding-top: 64px; }
.sdg-footer__grid { display:grid; grid-template-columns: 1.4fr 1fr 1.2fr 1fr; gap: 40px; padding-bottom: 44px; }
.sdg-footer__logo { max-height: 74px; background:#fff; padding:8px 12px; border-radius: 12px; margin-bottom:16px; }
.sdg-footer h4.widget-title { color:#fff; font-family:'Cinzel'; font-size: 1.05rem; margin-bottom: 18px; position:relative; padding-bottom: 10px; }
.sdg-footer h4.widget-title::after { content:""; position:absolute; bottom:0; left:0; width:40px; height:3px; background: var(--sdg-gold-grad); border-radius:3px; }
.sdg-footer p { color:#b9a892; font-size: 15px; }
.sdg-footer__menu, .sdg-contact-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap: 11px; }
.sdg-footer__menu a { color:#d8ccbb; }
.sdg-footer__menu a:hover { color: var(--sdg-gold-soft); padding-left: 4px; }
.sdg-contact-list li { display:flex; gap:10px; font-size: 15px; color:#cdbfac; }
.sdg-contact-list i { color: var(--sdg-gold); margin-top: 4px; }
.sdg-contact-list a { color:#cdbfac; }
.sdg-socials { display:flex; gap: 12px; margin-top: 16px; }
.sdg-socials a { width: 40px; height:40px; border-radius:50%; background: rgba(212,175,55,.15); display:flex; align-items:center; justify-content:center; color: var(--sdg-gold-soft); }
.sdg-socials a:hover { background: var(--sdg-gold-grad); color:#3a2400; }
.sdg-footer__bar { border-top: 1px solid rgba(255,255,255,.08); padding: 20px 0; font-size: 13.5px; color:#9c8b78; text-align:center; }

/* ---------- WhatsApp float ---------- */
.sdg-whatsapp-float { position: fixed; right: 22px; bottom: 22px; width: 58px; height:58px; border-radius:50%; background:#25d366; color:#fff; display:flex; align-items:center; justify-content:center; font-size: 1.7rem; box-shadow: 0 12px 30px -8px rgba(37,211,102,.7); z-index: 998; animation: sdg-pulse 2.2s infinite; }
.sdg-whatsapp-float:hover { color:#fff; transform: scale(1.08); }
@keyframes sdg-pulse { 0%{box-shadow:0 0 0 0 rgba(37,211,102,.6)} 70%{box-shadow:0 0 0 16px rgba(37,211,102,0)} 100%{box-shadow:0 0 0 0 rgba(37,211,102,0)} }

/* ---------- Page headers / 404 ---------- */
.sdg-page__header { text-align:center; margin-bottom: 36px; }
.sdg-page__title { font-size: clamp(1.8rem, 4vw, 2.8rem); }
.sdg-404 { text-align:center; }
.sdg-404 h1 { font-size: 6rem; color: var(--sdg-gold); }

/* ---------- Reveal animation ---------- */
.sdg-reveal { opacity:0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.sdg-reveal.is-in { opacity:1; transform: none; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.sdg-footer__grid { grid-template-columns: repeat(2,1fr); }
	.sdg-cols-4 { grid-template-columns: repeat(2,1fr); }
	.sdg-post-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 860px) {
	.sdg-nav-toggle { display:flex; }
	.sdg-nav { position: fixed; inset: 0 0 0 auto; width: min(320px, 82%); background:#fff; box-shadow: var(--sdg-shadow); transform: translateX(100%); transition: transform .35s ease; padding: 80px 20px 20px; z-index: 1000; }
	.sdg-nav.is-open { transform: none; }
	.sdg-menu { flex-direction: column; gap: 2px; }
	.sdg-menu .sub-menu { position: static; display:block; box-shadow:none; padding-left: 12px; }
	.sdg-header__cta { display:none; }
	.sdg-stats { grid-template-columns: repeat(2,1fr); }
	.sdg-topbar__contact { display:none; }
}
@media (max-width: 640px) {
	.sdg-cols-2, .sdg-cols-3, .sdg-cols-4, .sdg-post-grid { grid-template-columns: 1fr; }
	.sdg-section { padding: 48px 0; }
	.sdg-hero { padding: 80px 0; }
}
