/* ============================================================
   RK AUTOMOBILES - Complete Style Sheet
   ============================================================ */
:root {
  --red: #e32026;
  --red-dark: #b01016;
  --ink: #14171c;
  --grey: #5b6470;
  --bg: #ffffff;
  --soft: #f4f6f9;
  --line: #e4e8ee;
  --green: #25d366;
  --shadow: 0 18px 45px rgba(20,23,28,0.10);
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:"Segoe UI",Roboto,Helvetica,Arial,sans-serif; color:var(--ink); background:var(--bg); line-height:1.6; -webkit-font-smoothing:antialiased; }
img { max-width:100%; display:block; }
a { text-decoration:none; color:inherit; }
ul { list-style:none; }
.container { width:min(1200px,92%); margin:0 auto; }
section { padding:78px 0; }

/* Buttons */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; border:none; cursor:pointer; font-weight:600; font-size:15px; border-radius:10px; padding:13px 24px; transition:.25s; font-family:inherit; }
.btn-dark { background:var(--ink); color:#fff; }
.btn-dark:hover { background:var(--red); transform:translateY(-2px); }
.btn-wa { background:var(--green); color:#fff; }
.btn-wa:hover { filter:brightness(1.06); transform:translateY(-2px); }
.btn-red { background:var(--red); color:#fff; }
.btn-red:hover { background:var(--red-dark); transform:translateY(-2px); }
.btn-outline { background:transparent; color:var(--ink); border:2px solid var(--ink); }
.btn-outline:hover { background:var(--ink); color:#fff; }
.btn-outline-white { background:transparent; color:#fff; border:2px solid rgba(255,255,255,0.7); border-radius:10px; padding:13px 24px; font-weight:600; font-size:15px; display:inline-flex; align-items:center; cursor:pointer; transition:.25s; font-family:inherit; }
.btn-outline-white:hover { background:#fff; color:var(--ink); }
.btn-gold { background:linear-gradient(135deg,#ffd700,#f0b400); color:#6b1a10; font-weight:800; box-shadow:0 10px 26px rgba(255,215,0,.35); border:none; border-radius:10px; padding:13px 24px; font-size:15px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; transition:.25s; font-family:inherit; }
.btn-gold:hover { filter:brightness(1.06); transform:translateY(-2px); }

/* Navbar */
.navbar { position:fixed; top:0; left:0; width:100%; z-index:100; background:rgba(255,255,255,0.92); backdrop-filter:blur(10px); border-bottom:1px solid var(--line); transition:.3s; }
.navbar.scrolled { box-shadow:0 6px 22px rgba(0,0,0,.07); }
.nav-inner { display:flex; align-items:center; justify-content:space-between; height:74px; }
.logo { display:flex; align-items:center; gap:12px; }
.logo-img { width:46px; height:46px; border-radius:50%; object-fit:cover; border:2px solid var(--red); box-shadow:0 4px 12px rgba(227,32,38,.25); }
.logo-text { line-height:1.1; }
.logo-text b { font-size:19px; letter-spacing:.3px; display:block; }
.logo-text span { font-size:11px; color:var(--grey); letter-spacing:1.6px; text-transform:uppercase; }
.nav-links { display:flex; align-items:center; gap:22px; }
.nav-links a { font-weight:600; color:var(--ink); font-size:14px; position:relative; }
.nav-links a::after { content:""; position:absolute; left:0; bottom:-6px; height:3px; width:0; background:var(--red); border-radius:2px; transition:.3s; }
.nav-links a:hover::after { width:100%; }
.nav-cta { background:var(--red); color:#fff !important; padding:10px 20px; border-radius:9px; }
.nav-cta:hover::after { width:0; }
.burger { display:none; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; }
.burger span { width:26px; height:3px; background:var(--ink); border-radius:2px; transition:.3s; }
.burger.active span:nth-child(1) { transform:translateY(8px) rotate(45deg); }
.burger.active span:nth-child(2) { opacity:0; }
.burger.active span:nth-child(3) { transform:translateY(-8px) rotate(-45deg); }

/* ===== HERO SLIDESHOW ===== */
.hero { position:relative; min-height:100vh; display:flex; align-items:center; overflow:hidden; padding:0; }
.hero-slideshow { position:absolute; inset:0; z-index:0; }
.hero-slide { position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity 1.2s ease-in-out; }
.hero-slide.active { opacity:1; animation:zoomIn 8s ease-in-out forwards; }
@keyframes zoomIn { from { transform:scale(1.06); } to { transform:scale(1.0); } }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,12,20,0.90) 0%,rgba(10,12,20,0.60) 55%,rgba(10,12,20,0.20) 100%); z-index:1; }
.hero .container { position:relative; z-index:2; width:min(1200px,92%); margin:0 auto; padding:140px 0 100px; }
.hero-grid { display:grid; grid-template-columns:1fr; }
.hero-kicker { display:inline-block; background:var(--red); color:#fff; font-weight:700; letter-spacing:2px; text-transform:uppercase; font-size:12px; padding:6px 16px; border-radius:20px; margin-bottom:18px; }
.hero-copy h1 { color:#fff; font-size:clamp(36px,5.5vw,68px); line-height:1.05; font-weight:800; margin-bottom:18px; }
.hero-copy h1 em { font-style:normal; color:var(--red); }
.hero-copy .lead { color:rgba(255,255,255,0.82); font-size:17px; margin-bottom:30px; max-width:520px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:44px; }
.hero-stats { display:flex; gap:34px; padding-top:24px; border-top:1px solid rgba(255,255,255,0.15); }
.hero-stats .stat b { color:#fff; font-size:26px; display:block; }
.hero-stats .stat span { color:rgba(255,255,255,0.6); font-size:12px; }

/* Slide dots */
.slide-dots { position:absolute; bottom:30px; left:50%; transform:translateX(-50%); display:flex; gap:10px; z-index:10; }
.dot { width:10px; height:10px; border-radius:50%; background:rgba(255,255,255,0.35); cursor:pointer; transition:.3s; border:none; }
.dot.active { background:var(--red); width:28px; border-radius:5px; }

/* Slide chip */
.slide-chip { position:absolute; bottom:34px; right:40px; background:rgba(0,0,0,0.4); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.2); border-radius:14px; padding:12px 18px; z-index:10; color:#fff; }
.slide-chip-tag { display:block; font-size:11px; font-weight:700; color:#ffd700; letter-spacing:1px; text-transform:uppercase; }
.slide-chip-name { display:block; font-size:15px; font-weight:800; margin-top:3px; }

/* Section heads */
.sec-head { text-align:center; max-width:640px; margin:0 auto 46px; }
.sec-head .kicker { color:var(--red); font-weight:700; letter-spacing:2px; text-transform:uppercase; font-size:13px; }
.sec-head h2 { font-size:clamp(28px,4vw,42px); margin:10px 0 12px; }
.sec-head p { color:var(--grey); font-size:16px; }

/* ===== DURGA PUJA OFFER CARD ===== */
/* ===== DURGA PUJA OFFER CARD ===== */
.offers-section { padding:60px 0; }

.durga-offer-card {
  position: relative;
  display: grid;
  grid-template-columns: 180px 1fr 180px;
  border-radius: 24px;
  color: #fff;
  overflow: hidden;
  box-shadow: 0 24px 60px rgba(180,16,26,.40);
  border: 1px solid rgba(255,215,0,.50);
  margin-bottom: 10px;
  isolation: isolate;
  min-height: 520px;
}

/* --- Background Maa Durga Image --- */
.durga-offer-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: url("../images/offers/maa-durga.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  opacity: 1;
}

/* --- Dark red overlay so text stays readable --- */
.durga-offer-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    135deg,
    rgba(100, 8, 12, 0.82) 0%,
    rgba(180, 20, 28, 0.75) 40%,
    rgba(120, 10, 16, 0.85) 100%
  );
}

.coin-bg {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  pointer-events: none;
}

.durga-side,
.durga-center {
  position: relative;
  z-index: 3;
}

.float-coin {
  position: absolute;
  bottom: -50px;
  font-size: 28px;
  opacity: 0.40;
  animation: floatUpCoin 7s linear infinite;
  filter: drop-shadow(0 0 6px rgba(255,215,0,0.7));
}
.float-coin.silver {
  filter: drop-shadow(0 0 6px rgba(200,200,200,0.6));
  font-size: 22px;
}
@keyframes floatUpCoin {
  0%   { transform: translateY(0) rotate(0deg); opacity: 0; }
  10%  { opacity: 0.5; }
  90%  { opacity: 0.4; }
  100% { transform: translateY(-520px) rotate(360deg); opacity: 0; }
}

.durga-side {
  display: flex;
  align-items: center;
  justify-content: center;
}
.durga-motif {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.durga-glow {
  position: absolute;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,215,0,0.55) 0%, transparent 70%);
  animation: durgaPulse 2.5s ease-in-out infinite;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%);
}
@keyframes durgaPulse {
  0%, 100% { opacity: 0.5; transform: translate(-50%, -60%) scale(1); }
  50%      { opacity: 0.95; transform: translate(-50%, -60%) scale(1.18); }
}
.durga-emoji {
  position: relative;
  font-size: 56px;
  z-index: 2;
  filter: drop-shadow(0 4px 14px rgba(255,215,0,0.7));
}
.durga-label {
  position: relative;
  z-index: 2;
  font-size: 12px;
  font-weight: 700;
  color: #ffe98a;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-shadow: 0 2px 8px rgba(0,0,0,0.5);
}

.durga-center {
  padding: 40px 28px;
  text-align: center;
}
.of-badge {
  display: inline-block;
  background: linear-gradient(135deg,#ffd700,#f0b400);
  color: #6b1a10;
  font-weight: 800;
  padding: 7px 18px;
  border-radius: 30px;
  font-size: 12px;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 12px;
  box-shadow: 0 4px 16px rgba(255,215,0,0.45);
}
.of-sub {
  font-size: 15px;
  font-weight: 600;
  color: #ffe98a;
  margin-bottom: 12px;
  text-shadow: 0 2px 6px rgba(0,0,0,0.4);
}
.durga-headline {
  font-size: clamp(16px, 2.2vw, 26px);
  line-height: 1.4;
  margin-bottom: 24px;
  text-shadow: 0 3px 16px rgba(0,0,0,0.5);
}
.gold-text {
  color: #ffd700;
  font-size: clamp(22px, 3.2vw, 36px);
  font-weight: 800;
  display: block;
  text-shadow: 0 0 24px rgba(255,215,0,0.6), 0 3px 10px rgba(0,0,0,0.5);
}

.of-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 24px;
}
.step {
  background: rgba(0,0,0,0.28);
  border: 1px solid rgba(255,215,0,0.35);
  border-radius: 14px;
  padding: 14px 10px;
  text-align: center;
  backdrop-filter: blur(6px);
}
.step .step-n {
  width: 32px; height: 32px;
  margin: 0 auto 8px;
  display: grid; place-items: center;
  background: linear-gradient(135deg,#ffd700,#f0b400);
  color: #6b1a10;
  font-weight: 800;
  border-radius: 50%;
  font-size: 14px;
}
.step b { display: block; font-size: 13px; }
.step small { font-size: 11px; opacity: 0.85; }

.prizes-title {
  font-size: 16px;
  color: #ffe98a;
  margin-bottom: 14px;
  text-shadow: 0 2px 8px rgba(0,0,0,0.4);
}
.prize-coins-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-bottom: 20px;
}
.prize-coin-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.prize-coin-item span {
  font-size: 12px;
  font-weight: 700;
  color: #ffe98a;
  text-shadow: 0 1px 4px rgba(0,0,0,0.5);
}
.coin-wrap {
  width: 72px; height: 72px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  border: 3px solid #ffd700;
  box-shadow: 0 0 20px rgba(255,215,0,0.55);
  animation: coinGlow 2s ease-in-out infinite alternate;
}
.coin-emoji { font-size: 34px; }
.gold-coin {
  background: radial-gradient(circle at 35% 30%, #fff6c9, #ffd700 45%, #b8860b 100%);
}
.silver-coin {
  background: radial-gradient(circle at 35% 30%, #ffffff, #c0c0c0 45%, #808080 100%);
  border-color: #d9d9d9;
  box-shadow: 0 0 20px rgba(200,200,200,0.6);
}
.emoji-prize {
  background: rgba(0,0,0,0.25);
  font-size: 28px;
  border: 3px solid rgba(255,215,0,0.55);
  backdrop-filter: blur(4px);
}
@keyframes coinGlow {
  from { box-shadow: 0 0 10px rgba(255,215,0,0.4); }
  to   { box-shadow: 0 0 30px rgba(255,215,0,0.95); }
}

.of-perks {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-bottom: 6px;
}
.perk {
  font-size: 13px;
  font-weight: 600;
  text-shadow: 0 1px 4px rgba(0,0,0,0.4);
}
.offer-terms {
  font-size: 12px;
  color: rgba(255,230,200,0.75);
  margin-top: 12px;
}

/* Other offer cards */
.offers-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:24px; }
.offer-card { background:#fff; border:1px solid var(--line); border-radius:18px; overflow:hidden; box-shadow:0 8px 24px rgba(0,0,0,.05); transition:.3s; display:flex; flex-direction:column; }
.offer-card:hover { transform:translateY(-6px); box-shadow:var(--shadow); }
.offer-top { position:relative; padding:34px 26px 26px; color:#fff; background:linear-gradient(135deg,var(--red),var(--red-dark)); }
.offer-tag { position:absolute; top:16px; right:16px; background:rgba(255,255,255,.2); border:1px solid rgba(255,255,255,.4); padding:4px 12px; border-radius:20px; font-size:11px; letter-spacing:1px; text-transform:uppercase; }
.offer-top h3 { font-size:24px; line-height:1.2; }
.offer-top .offer-sub { font-size:13px; opacity:.9; margin-top:6px; }
.offer-body { padding:20px 26px 26px; display:flex; flex-direction:column; flex:1; }
.offer-body p { color:var(--grey); font-size:14.5px; flex:1; margin-bottom:18px; }
.offer-card.alt .offer-top { background:linear-gradient(135deg,#14171c,#2b3139); }

/* Bike cards */
.bike-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:28px; }
.bike-card { background:#fff; border:1px solid var(--line); border-radius:20px; overflow:hidden; transition:transform .18s ease,box-shadow .3s; transform-style:preserve-3d; will-change:transform; }
.bike-card:hover { box-shadow:var(--shadow); }
.bike-media { position:relative; background:linear-gradient(180deg,#f2f5f9,#e9edf3); padding:30px 24px 10px; }
.bike-media img { transform-style:preserve-3d; transition:transform .3s ease; margin:0 auto; max-height:210px; object-fit:contain; }
.badge { position:absolute; top:16px; left:16px; background:var(--red); color:#fff; padding:5px 12px; border-radius:20px; font-size:12px; font-weight:700; }
.cat { position:absolute; top:16px; right:16px; background:rgba(255,255,255,.8); border:1px solid var(--line); padding:5px 12px; border-radius:20px; font-size:12px; color:var(--grey); }
.bike-body { padding:20px 22px 24px; }
.bike-body h3 { font-size:20px; }
.price { color:var(--red); font-size:20px; font-weight:800; margin:4px 0 12px; }
.price small { color:var(--grey); font-weight:500; font-size:12px; }
.specs { display:flex; gap:16px; margin-bottom:18px; }
.specs li { font-size:12.5px; color:var(--grey); }
.specs li strong { display:block; color:var(--ink); font-size:14px; }
.actions { display:flex; gap:10px; }
.actions .btn { flex:1; padding:11px 10px; font-size:14px; }

/* Catalogue */
.catalogue-wrap { background:var(--soft); border:1px solid var(--line); border-radius:20px; overflow:hidden; box-shadow:0 10px 30px rgba(0,0,0,.04); }
.cat-scroll { overflow-x:auto; }
table { width:100%; border-collapse:collapse; min-width:520px; }
thead th { background:var(--ink); color:#fff; text-align:left; padding:15px 22px; font-size:13px; letter-spacing:.5px; text-transform:uppercase; }
thead th.ta-r { text-align:right; }
tbody td { padding:13px 22px; border-bottom:1px solid var(--line); font-size:15px; }
tbody tr:nth-child(even) { background:#fbfcfd; }
tbody tr:hover { background:#fff5f5; }
tbody td.ta-r { text-align:right; font-weight:700; color:var(--red); }
.cat-note { padding:14px 22px; font-size:12.5px; color:var(--grey); }

/* EMI Calculator */
.emi-wrap { max-width:980px; margin:0 auto; background:#fff; border:1px solid var(--line); border-radius:20px; padding:34px; box-shadow:var(--shadow); display:grid; grid-template-columns:1.2fr 1fr; gap:34px; }
.emi-controls { display:flex; flex-direction:column; gap:26px; }
.emi-field label { font-weight:600; font-size:14px; }
.emi-label-row { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.emi-value { font-weight:800; color:var(--red); font-size:16px; }
.emi-field input[type="range"] { width:100%; height:6px; border-radius:4px; background:var(--line); appearance:none; outline:none; cursor:pointer; }
.emi-field input[type="range"]::-webkit-slider-thumb { appearance:none; width:20px; height:20px; border-radius:50%; background:var(--red); cursor:pointer; box-shadow:0 2px 8px rgba(227,32,38,.4); border:3px solid #fff; }
.emi-tenure { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.tenure-btn { background:var(--soft); border:1px solid var(--line); border-radius:10px; padding:10px 8px; font-weight:700; font-size:13px; cursor:pointer; transition:.2s; font-family:inherit; }
.tenure-btn.active { background:var(--ink); color:#fff; border-color:var(--ink); }
.emi-result { background:linear-gradient(160deg,var(--ink),#1e232b); color:#fff; border-radius:16px; padding:28px; display:flex; flex-direction:column; }
.emi-result-label { font-size:12px; letter-spacing:1.5px; text-transform:uppercase; color:#9aa3af; font-weight:700; }
.emi-amount { font-size:40px; font-weight:800; color:#fff; margin:8px 0 4px; }
.emi-note { font-size:11.5px; color:#8a93a1; margin-bottom:20px; }
.emi-breakup { border-top:1px solid rgba(255,255,255,.12); border-bottom:1px solid rgba(255,255,255,.12); padding:18px 0; margin-bottom:22px; display:flex; flex-direction:column; gap:12px; }
.emi-row { display:flex; justify-content:space-between; font-size:14px; }
.emi-row span { color:#aeb6c2; }
.emi-row b { color:#fff; }

/* Tabs */
.booking-section { background:linear-gradient(180deg,#fff,var(--soft)); }
.tabs { display:flex; gap:10px; justify-content:center; margin-bottom:34px; flex-wrap:wrap; }
.tab-btn { background:#fff; border:1px solid var(--line); padding:13px 26px; border-radius:12px; font-weight:600; cursor:pointer; font-family:inherit; font-size:15px; transition:.25s; }
.tab-btn.active { background:var(--ink); color:#fff; border-color:var(--ink); }
.tab-pane { display:none; }
.tab-pane.active { display:block; animation:fade .4s ease; }
@keyframes fade { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
.form-card { max-width:780px; margin:0 auto; background:#fff; border:1px solid var(--line); border-radius:20px; padding:34px; box-shadow:var(--shadow); }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.field { display:flex; flex-direction:column; gap:7px; }
.field.full { grid-column:1 / -1; }
.field label { font-weight:600; font-size:14px; }
.field input,.field select,.field textarea { border:1px solid var(--line); border-radius:10px; padding:13px 15px; font-size:15px; font-family:inherit; background:#fbfcfe; transition:.2s; }
.field input:focus,.field select:focus,.field textarea:focus { outline:none; border-color:var(--red); background:#fff; box-shadow:0 0 0 3px rgba(227,32,38,.12); }
.field textarea { resize:vertical; min-height:90px; }
.form-foot { margin-top:22px; display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; }
.form-foot .hint { font-size:12.5px; color:var(--grey); }

/* Why us */
.feat-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:22px; }
.feat { background:#fff; border:1px solid var(--line); border-radius:16px; padding:26px; text-align:center; transition:.3s; }
.feat:hover { transform:translateY(-6px); box-shadow:var(--shadow); border-color:#f3cdcd; }
.feat .ico { width:56px; height:56px; margin:0 auto 14px; border-radius:14px; display:grid; place-items:center; background:#fff0f0; color:var(--red); }
.feat h4 { font-size:17px; margin-bottom:6px; }
.feat p { color:var(--grey); font-size:14px; }

/* Branches */
.branch-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:26px; }
.branch-card { background:#fff; border:1px solid var(--line); border-radius:18px; padding:28px; box-shadow:0 8px 24px rgba(0,0,0,.05); transition:.3s; }
.branch-card:hover { transform:translateY(-6px); box-shadow:var(--shadow); }
.branch-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }
.branch-head h3 { font-size:20px; }
.branch-badge { background:#fff0f0; color:var(--red); font-weight:700; font-size:12px; padding:6px 14px; border-radius:20px; }
.branch-addr { display:flex; gap:12px; align-items:flex-start; margin-bottom:20px; }
.branch-addr .pin { font-size:22px; }
.branch-addr p { color:var(--grey); font-size:15px; }
.branch-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; }

/* About */
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.about-img { border-radius:20px; overflow:hidden; box-shadow:var(--shadow); }
.about-content h2 { font-size:clamp(26px,3.5vw,38px); margin-bottom:16px; }
.about-content p { color:var(--grey); margin-bottom:14px; }
.about-list li { display:flex; gap:12px; margin-bottom:12px; align-items:flex-start; }
.about-list .tick { color:var(--red); font-weight:800; }

/* Contact */
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.info-card { background:var(--ink); color:#fff; border-radius:20px; padding:34px; }
.info-card h3 { margin-bottom:22px; font-size:24px; }
.info-row { display:flex; gap:14px; margin-bottom:20px; align-items:flex-start; }
.info-row .ic { width:44px; height:44px; border-radius:12px; background:rgba(255,255,255,.12); display:grid; place-items:center; flex-shrink:0; }
.info-row b { display:block; font-size:15px; }
.info-row span { color:#c9d1dc; font-size:14px; }

/* Footer */
footer { background:#0d1014; color:#aeb6c2; padding:56px 0 0; }
.foot-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1.4fr; gap:34px; padding-bottom:40px; }
.foot-grid h5 { color:#fff; margin-bottom:16px; font-size:15px; }
.foot-grid a { display:block; margin-bottom:10px; font-size:14px; transition:.2s; }
.foot-grid a:hover { color:var(--red); }
.foot-grid p { font-size:14px; margin-bottom:8px; }
.foot-logo-img { width:64px; height:64px; border-radius:50%; object-fit:cover; border:2px solid var(--red); margin-bottom:12px; }
.foot-logo b { color:#fff; font-size:20px; display:block; margin-bottom:8px; }
.foot-logo p { font-size:14px; margin-bottom:16px; }
.social { display:flex; gap:10px; }
.social a { width:40px; height:40px; border-radius:10px; background:rgba(255,255,255,.08); display:grid; place-items:center; margin:0; color:#aeb6c2; }
.social a:hover { background:var(--red); color:#fff; }
.foot-bottom { border-top:1px solid rgba(255,255,255,.08); padding:18px 0; text-align:center; font-size:13px; }

/* Modal */
.overlay { position:fixed; inset:0; background:rgba(10,12,15,.72); z-index:200; display:grid; place-items:center; opacity:0; pointer-events:none; transition:.3s; padding:20px; }
.overlay.show { opacity:1; pointer-events:auto; }
.modal { background:#fff; border-radius:20px; max-width:960px; width:100%; max-height:92vh; overflow-y:auto; padding:30px; position:relative; transform:translateY(20px) scale(.97); transition:.3s; }
.overlay.show .modal { transform:none; }
.modal-close { position:absolute; top:16px; right:16px; width:40px; height:40px; border-radius:50%; border:1px solid var(--line); background:#fff; font-size:18px; cursor:pointer; display:grid; place-items:center; transition:.2s; }
.modal-close:hover { background:var(--red); color:#fff; border-color:var(--red); }
.modal-top { display:grid; grid-template-columns:1.3fr 1fr; gap:28px; align-items:center; }
.modal-stage { background:linear-gradient(180deg,#f2f5f9,#e7ecf2); border-radius:16px; padding:20px; }
.modal-stage img { max-height:300px; object-fit:contain; margin:0 auto; }
.modal-thumbs { display:flex; gap:10px; margin-top:12px; flex-wrap:wrap; }
.modal-thumbs .thumb { width:64px; height:52px; object-fit:cover; border-radius:8px; cursor:pointer; border:2px solid var(--line); transition:.2s; }
.modal-thumbs .thumb.active { border-color:var(--red); }
.modal-info h3 { font-size:28px; margin-bottom:10px; }
.modal-info .price { font-size:24px; }
.modal-info p { color:var(--grey); margin:8px 0 18px; }
.modal-specs { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:22px; }
.spec-box { background:var(--soft); border:1px solid var(--line); border-radius:12px; padding:12px; text-align:center; }
.spec-box strong { display:block; font-size:15px; }
.spec-box span { font-size:12px; color:var(--grey); }
.modal-foot { display:flex; gap:12px; flex-wrap:wrap; }

/* Floating WhatsApp */
#waFloat { position:fixed; bottom:24px; left:24px; width:58px; height:58px; border-radius:50%; background:var(--green); color:#fff; display:grid; place-items:center; z-index:95; box-shadow:0 10px 26px rgba(37,211,102,.45); animation:waPulse 2.4s infinite; }
@keyframes waPulse { 0%{ box-shadow:0 0 0 0 rgba(37,211,102,.5); } 70%{ box-shadow:0 0 0 16px rgba(37,211,102,0); } 100%{ box-shadow:0 0 0 0 rgba(37,211,102,0); } }

/* Scroll to top */
#toTop { position:fixed; bottom:24px; right:24px; width:48px; height:48px; border-radius:50%; background:var(--red); color:#fff; border:0; cursor:pointer; z-index:90; display:none; font-size:20px; box-shadow:0 8px 20px rgba(227,32,38,.35); }
#toTop.show { display:grid; place-items:center; }

/* ===== RESPONSIVE ===== */
@media (max-width:900px) {
  .hero-grid,.about-grid,.contact-grid,.modal-top { grid-template-columns:1fr; }
  .foot-grid { grid-template-columns:1fr 1fr; }
  .form-grid { grid-template-columns:1fr; }
  .emi-wrap { grid-template-columns:1fr; }
  .durga-offer-card { grid-template-columns:1fr; }
  .durga-right { display:none; }
  .durga-side { height:180px; }
  .nav-links { position:fixed; top:74px; left:0; right:0; background:#fff; flex-direction:column; padding:20px; gap:18px; border-bottom:1px solid var(--line); box-shadow:0 20px 40px rgba(0,0,0,.08); transform:translateY(-120%); transition:.3s; z-index:99; }
  .nav-links.open { transform:translateY(0); }
  .burger { display:flex; }
  .nav-cta { width:100%; text-align:center; }
  .of-steps { grid-template-columns:1fr 1fr; }
  .branch-grid { grid-template-columns:1fr; }
  .branch-actions { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .slide-chip { display:none; }
  .foot-grid { grid-template-columns:1fr; }
  .hero-stats { flex-wrap:wrap; gap:16px; }
  .durga-emoji { font-size:40px; }
  .coin-wrap { width:56px; height:56px; }
  .coin-emoji { font-size:26px; }
  .emoji-prize { font-size:22px; }
  .float-coin { font-size:20px; }
}
