/* =========================================================
   Kanaka Durga Navaratri — day pages
   Shared styling for the 9 detailed alankaram pages + index.
   Uses the site theme variables (maroon/gold/cream).
   ========================================================= */

.nv-wrap { max-width: 920px; margin: 0 auto; }

/* ---- Day hero ---- */
.nv-hero {
  background: linear-gradient(135deg, var(--maroon-dark, #4D0D17), var(--maroon, #7A1524));
  color: #fdf6ec; border-radius: 18px; overflow: hidden;
  display: grid; grid-template-columns: 220px 1fr; gap: 0;
  margin-bottom: 26px; box-shadow: 0 10px 30px rgba(77,13,23,.18);
}
.nv-hero-img {
  background: #fff8ec; display: flex; align-items: center; justify-content: center;
  position: relative; min-height: 240px;
}
.nv-hero-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.nv-hero-img .nv-slot {
  text-align: center; color: var(--maroon); padding: 20px;
  font-size: .82rem; line-height: 1.6;
}
.nv-hero-img .nv-slot .nv-slot-icon { font-size: 2.2rem; display: block; margin-bottom: 8px; opacity: .5; }
.nv-hero-body { padding: 28px 30px; position: relative; }
.nv-hero-body::after {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(circle at 90% 10%, rgba(184,149,74,.16), transparent 45%);
  pointer-events: none;
}
.nv-daytag {
  display: inline-block; background: rgba(243,217,166,.16); border: 1px solid rgba(243,217,166,.4);
  color: #f3d9a6; font-size: .74rem; font-weight: 600; letter-spacing: 1.5px;
  padding: 4px 14px; border-radius: 20px; text-transform: uppercase; margin-bottom: 12px;
}
.nv-hero-body h1 {
  font-family: 'Noto Serif Telugu', serif; font-size: 2rem; margin: 0 0 4px; color: #fff; line-height: 1.25;
}
.nv-hero-body .nv-en { color: #f3d9a6; font-size: .95rem; font-family: 'Poppins', sans-serif; margin: 0 0 14px; }
.nv-hero-body .nv-date { font-size: .9rem; color: #fdf6ec; opacity: .9; }
.nv-hero-body .nv-date b { color: #f3d9a6; }

/* ---- Section blocks ---- */
.nv-section { margin-bottom: 30px; }
.nv-section h2 {
  font-family: 'Noto Serif Telugu', serif; font-size: 1.35rem; color: var(--maroon-dark, #4D0D17);
  border-left: 5px solid var(--gold, #B8954A); padding-left: 14px; margin: 0 0 14px;
}
.nv-section h3 {
  font-family: 'Noto Serif Telugu', serif; font-size: 1.08rem; color: var(--maroon, #7A1524); margin: 20px 0 8px;
}
.nv-section p { font-size: 1rem; line-height: 1.95; color: var(--ink-soft, #5c4632); margin: 0 0 14px; }

/* ---- Iconography / fact grid ---- */
.nv-facts {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1px;
  background: #ecdcb6; border: 1px solid #ecdcb6; border-radius: 12px; overflow: hidden; margin-bottom: 20px;
}
.nv-fact { background: #fff; padding: 14px 16px; }
.nv-fact span { display: block; font-size: .76rem; color: var(--gold-dark, #8F7134); font-weight: 600;
  text-transform: uppercase; letter-spacing: .5px; margin-bottom: 3px; }
.nv-fact b { font-family: 'Noto Sans Telugu', sans-serif; font-size: .98rem; color: var(--ink, #252525); font-weight: 600; }

/* ---- Mantra box ---- */
.nv-mantra {
  background: #fff8ec; border: 1px solid #f0dcae; border-left: 5px solid var(--gold, #B8954A);
  border-radius: 10px; padding: 18px 22px; margin-bottom: 20px;
}
.nv-mantra .nv-mantra-label { font-size: .78rem; font-weight: 700; color: var(--maroon, #7A1524);
  text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; }
.nv-mantra p { font-family: 'Noto Serif Telugu', serif; font-size: 1.15rem; line-height: 2; color: var(--maroon-dark, #4D0D17);
  margin: 0; font-weight: 500; }
.nv-mantra .nv-mantra-mean { font-family: 'Noto Sans Telugu', sans-serif; font-size: .9rem;
  color: var(--ink-soft, #5c4632); margin-top: 10px; font-weight: 400; line-height: 1.7; }

/* ---- Pooja steps ---- */
.nv-steps { counter-reset: step; list-style: none; padding: 0; margin: 0 0 20px; }
.nv-steps li {
  position: relative; padding: 12px 16px 12px 52px; margin-bottom: 10px;
  background: #fff; border: 1px solid #ecdcb6; border-radius: 10px;
  font-size: .96rem; line-height: 1.8; color: var(--ink-soft, #5c4632);
}
.nv-steps li::before {
  counter-increment: step; content: counter(step);
  position: absolute; left: 12px; top: 12px; width: 28px; height: 28px;
  background: var(--maroon, #7A1524); color: #f3d9a6; border-radius: 50%;
  display: flex; align-items: center; justify-content: center; font-size: .9rem; font-weight: 700;
  font-family: 'Poppins', sans-serif;
}
.nv-steps li b { color: var(--maroon, #7A1524); }

/* ---- Callout ---- */
.nv-callout {
  background: #f2f9f2; border: 1px solid #cfe6cf; border-radius: 10px; padding: 14px 18px;
  font-size: .92rem; line-height: 1.8; color: #2f5d34; margin-bottom: 20px;
}
.nv-callout.warn { background: #fdf3ea; border-color: #f0d2b0; color: #8a4b1e; }
.nv-callout b { font-weight: 700; }

/* ---- Day navigation ---- */
.nv-daynav {
  display: flex; justify-content: space-between; gap: 12px; margin: 30px 0 10px; flex-wrap: wrap;
}
.nv-daynav a {
  flex: 1; min-width: 140px; background: #fff; border: 1px solid #ecdcb6; border-radius: 12px;
  padding: 12px 16px; text-decoration: none; transition: all .2s;
}
.nv-daynav a:hover { border-color: var(--maroon, #7A1524); box-shadow: 0 4px 14px rgba(90,40,10,.1); }
.nv-daynav .nv-dir { font-size: .72rem; color: var(--gold-dark, #8F7134); text-transform: uppercase; letter-spacing: 1px; }
.nv-daynav .nv-name { font-family: 'Noto Serif Telugu', serif; color: var(--maroon-dark, #4D0D17); font-size: 1rem; margin-top: 2px; }
.nv-daynav .nv-next { text-align: right; }

/* ---- Index page strip ---- */
.nv-indexgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 18px; }
.nv-idx-card {
  display: flex; gap: 14px; background: #fff; border: 1px solid #ecdcb6; border-radius: 14px;
  padding: 14px; text-decoration: none; transition: all .2s;
}
.nv-idx-card:hover { transform: translateY(-3px); box-shadow: 0 10px 26px rgba(90,40,10,.14); }
.nv-idx-thumb { width: 72px; height: 90px; border-radius: 8px; overflow: hidden; flex-shrink: 0;
  background: #fff8ec; display: flex; align-items: center; justify-content: center; }
.nv-idx-thumb img { width: 100%; height: 100%; object-fit: cover; }
.nv-idx-thumb .nv-idx-num { font-family: 'Poppins', sans-serif; font-size: 1.6rem; font-weight: 700; color: var(--gold, #B8954A); }
.nv-idx-body h3 { font-family: 'Noto Serif Telugu', serif; font-size: 1.08rem; color: var(--maroon-dark, #4D0D17); margin: 2px 0 2px; }
.nv-idx-body .nv-idx-en { font-size: .78rem; color: var(--ink-soft, #5c4632); font-family: 'Poppins', sans-serif; }
.nv-idx-body .nv-idx-date { font-size: .8rem; color: var(--gold-dark, #8F7134); font-weight: 600; margin-top: 4px; }

@media (max-width: 620px) {
  .nv-hero { grid-template-columns: 1fr; }
  .nv-hero-img { min-height: 200px; }
  .nv-hero-body h1 { font-size: 1.5rem; }
}

/* ---- Index / overview page (kd-*) ---- */
.kd-hero {
  background: linear-gradient(135deg, var(--maroon-dark,#4D0D17), var(--maroon,#7A1524));
  color:#fdf6ec; border-radius:16px; padding:34px 26px; text-align:center;
  position:relative; overflow:hidden; margin-bottom:26px;
}
.kd-hero::after{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 20% 20%, rgba(184,149,74,.18), transparent 40%),
  radial-gradient(circle at 80% 80%, rgba(184,149,74,.14), transparent 42%);}
.kd-hero h1{font-family:'Noto Serif Telugu',serif;font-size:1.9rem;margin:0 0 8px;color:#fff;position:relative}
.kd-hero .kd-sub{color:#f3d9a6;font-size:1rem;margin:0 0 14px;position:relative}
.kd-hero .kd-dates{display:inline-flex;gap:10px;flex-wrap:wrap;justify-content:center;position:relative}
.kd-hero .kd-chip{background:rgba(255,255,255,.12);border:1px solid rgba(243,217,166,.4);
  border-radius:30px;padding:6px 16px;font-size:.86rem;color:#fdf6ec}
.kd-intro{max-width:760px;margin:0 auto 30px;text-align:center;color:var(--ink-soft,#5c4632);line-height:1.9}

.kd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px;margin-bottom:36px}
.kd-card{background:#fff;border:1px solid #ecdcb6;border-radius:16px;overflow:hidden;text-decoration:none;
  box-shadow:0 4px 16px rgba(90,40,10,.08);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.kd-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(90,40,10,.16)}
.kd-card img{width:100%;height:auto;display:block;background:#fdf6ec}
.kd-card-body{padding:16px 18px 20px}
.kd-day{display:inline-block;background:var(--maroon,#7A1524);color:#f3d9a6;font-size:.72rem;
  font-weight:600;letter-spacing:1px;padding:3px 12px;border-radius:20px;margin-bottom:8px;text-transform:uppercase}
.kd-date{float:right;font-size:.8rem;color:var(--gold,#B8954A);font-weight:600;font-family:'Poppins',sans-serif}
.kd-card h3{font-family:'Noto Serif Telugu',serif;font-size:1.2rem;color:var(--maroon-dark,#4D0D17);margin:0 0 2px}
.kd-card .kd-en{font-size:.8rem;color:var(--ink-soft,#5c4632);font-family:'Poppins',sans-serif;margin:0 0 10px}
.kd-card p{font-size:.92rem;line-height:1.8;color:var(--ink-soft,#5c4632);margin:0 0 10px}
.kd-meta{border-top:1px dashed #e4d2a8;padding-top:10px;font-size:.84rem;color:var(--ink-soft,#5c4632)}
.kd-meta b{color:var(--maroon,#7A1524)}
.kd-note{background:#fff8ec;border:1px solid #f0dcae;border-radius:12px;padding:16px 20px;
  font-size:.9rem;color:var(--ink-soft,#5c4632);line-height:1.85;margin-bottom:30px}
.kd-note strong{color:var(--maroon,#7A1524)}
@media(max-width:620px){.kd-hero h1{font-size:1.5rem}.kd-date{float:none;display:block;margin-top:4px}}
