/* ==========================================================================
   AstroDoer — Indian ornament layer (toran, mehrab, lotus, rangoli, jaali,
   paisley/kairi, mandala). All original SVG, embedded as data URIs.
   ========================================================================== */
:root {
  --orn-toran: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22120%22 height=%2252%22 viewBox=%220 0 120 52%22%3E%3Cstyle%3E.l%7Btransform-box:fill-box;transform-origin:50%25 0;animation:s 3.2s ease-in-out infinite alternate%7D%40keyframes s%7Bfrom%7Btransform:rotate(-7deg)%7Dto%7Btransform:rotate(7deg)%7D%7D%3C/style%3E %3Cg class=%22l%22 style=%22animation-delay:0s%22%3E%3Cpath d=%22M0 4c6 7 6 19 0 28c-6-9-6-21 0-28z%22 fill=%22%232e7d32%22/%3E%3Cpath d=%22M0 6v24%22 stroke=%22%239ccc65%22 stroke-width=%22.9%22/%3E%3C/g%3E%3Cg class=%22l%22 style=%22animation-delay:0s%22%3E%3Cpath d=%22M120 4c6 7 6 19 0 28c-6-9-6-21 0-28z%22 fill=%22%232e7d32%22/%3E%3Cpath d=%22M120 6v24%22 stroke=%22%239ccc65%22 stroke-width=%22.9%22/%3E%3C/g%3E%3Cg class=%22l%22 style=%22animation-delay:0.8s%22%3E%3Cpath d=%22M30 4c6 7 6 19 0 28c-6-9-6-21 0-28z%22 fill=%22%232e7d32%22/%3E%3Cpath d=%22M30 6v24%22 stroke=%22%239ccc65%22 stroke-width=%22.9%22/%3E%3C/g%3E%3Cg class=%22l%22 style=%22animation-delay:1.6s%22%3E%3Cpath d=%22M90 4c6 7 6 19 0 28c-6-9-6-21 0-28z%22 fill=%22%232e7d32%22/%3E%3Cpath d=%22M90 6v24%22 stroke=%22%239ccc65%22 stroke-width=%22.9%22/%3E%3C/g%3E%3Ccircle cx=%220.0%22 cy=%225.0%22 r=%225.2%22 fill=%22%23f39221%22/%3E%3Ccircle cx=%220.0%22 cy=%225.0%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%220.0%22 cy=%225.0%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%2212.0%22 cy=%2213.6%22 r=%225.2%22 fill=%22%23ffc928%22/%3E%3Ccircle cx=%2212.0%22 cy=%2213.6%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%2212.0%22 cy=%2213.6%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%2224.0%22 cy=%2220.4%22 r=%225.2%22 fill=%22%23e8730c%22/%3E%3Ccircle cx=%2224.0%22 cy=%2220.4%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%2224.0%22 cy=%2220.4%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%2236.0%22 cy=%2225.2%22 r=%225.2%22 fill=%22%23f39221%22/%3E%3Ccircle cx=%2236.0%22 cy=%2225.2%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%2236.0%22 cy=%2225.2%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%2248.0%22 cy=%2228.0%22 r=%225.2%22 fill=%22%23ffc928%22/%3E%3Ccircle cx=%2248.0%22 cy=%2228.0%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%2248.0%22 cy=%2228.0%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%2260.0%22 cy=%2229.0%22 r=%225.2%22 fill=%22%23e8730c%22/%3E%3Ccircle cx=%2260.0%22 cy=%2229.0%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%2260.0%22 cy=%2229.0%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%2272.0%22 cy=%2228.0%22 r=%225.2%22 fill=%22%23f39221%22/%3E%3Ccircle cx=%2272.0%22 cy=%2228.0%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%2272.0%22 cy=%2228.0%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%2284.0%22 cy=%2225.2%22 r=%225.2%22 fill=%22%23ffc928%22/%3E%3Ccircle cx=%2284.0%22 cy=%2225.2%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%2284.0%22 cy=%2225.2%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%2296.0%22 cy=%2220.4%22 r=%225.2%22 fill=%22%23e8730c%22/%3E%3Ccircle cx=%2296.0%22 cy=%2220.4%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%2296.0%22 cy=%2220.4%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%22108.0%22 cy=%2213.6%22 r=%225.2%22 fill=%22%23f39221%22/%3E%3Ccircle cx=%22108.0%22 cy=%2213.6%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%22108.0%22 cy=%2213.6%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Ccircle cx=%22120.0%22 cy=%225.0%22 r=%225.2%22 fill=%22%23ffc928%22/%3E%3Ccircle cx=%22120.0%22 cy=%225.0%22 r=%225.2%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.8%22 stroke-dasharray=%221.2 1.4%22 opacity=%22.55%22/%3E%3Ccircle cx=%22120.0%22 cy=%225.0%22 r=%221.6%22 fill=%22%238a3a06%22 opacity=%22.55%22/%3E%3Cg class=%22l%22 style=%22animation-delay:.6s%22%3E%3Cpath d=%22M60 29v9%22 stroke=%22%23f6b22b%22 stroke-width=%221.2%22/%3E%3Ccircle cx=%2260%22 cy=%2241%22 r=%224%22 fill=%22%23ffc928%22/%3E%3Ccircle cx=%2260%22 cy=%2241%22 r=%224%22 fill=%22none%22 stroke=%22%23b44a06%22 stroke-width=%22.7%22 stroke-dasharray=%221 1.2%22/%3E%3Cpath d=%22M58 45l2 6 2-6z%22 fill=%22%23e8730c%22/%3E%3C/g%3E%3Cpath d=%22M0 2.5h120%22 stroke=%22%23f6b22b%22 stroke-width=%222.4%22 stroke-dasharray=%223 2%22/%3E%3Cpath d=%22M0 2.5h120%22 stroke=%22%238b1a1a%22 stroke-width=%221%22 stroke-dasharray=%221 4%22/%3E%3C/svg%3E");
  --orn-arch: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2244%22 height=%2216%22 viewBox=%220 0 44 16%22%3E%3Cpath d=%22M0 16V11C0 5 15 3 22 0c7 3 22 5 22 11v5z%22 fill=%22%23fffaf4%22/%3E%3Ccircle cx=%2222%22 cy=%225%22 r=%221.3%22 fill=%22%23e8730c%22 opacity=%22.7%22/%3E%3C/svg%3E");
  --orn-lotus: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22160%22 height=%2218%22 viewBox=%220 0 160 18%22%3E%3Cpath d=%22M4 14h56M100 14h56%22 stroke=%22%23e8730c%22 stroke-width=%221.4%22 stroke-linecap=%22round%22/%3E%3Cpath d=%22M14 11h40M106 11h40%22 stroke=%22%23f6b22b%22 stroke-width=%22.8%22/%3E%3Ccircle cx=%2262%22 cy=%2214%22 r=%222%22 fill=%22%238b1a1a%22/%3E%3Ccircle cx=%2298%22 cy=%2214%22 r=%222%22 fill=%22%238b1a1a%22/%3E%3Cpath d=%22M4 14l-3-2v4zM156 14l3-2v4z%22 fill=%22%23e8730c%22/%3E%3Cpath transform=%22translate(80 15) rotate(-50) scale(0.8)%22 d=%22M0 0C-5-4-5-10 0-14C5-10 5-4 0 0z%22 fill=%22%23f39221%22 stroke=%22%238b1a1a%22 stroke-width=%22.7%22/%3E%3Cpath transform=%22translate(80 15) rotate(-25) scale(0.95)%22 d=%22M0 0C-5-4-5-10 0-14C5-10 5-4 0 0z%22 fill=%22%23f39221%22 stroke=%22%238b1a1a%22 stroke-width=%22.7%22/%3E%3Cpath transform=%22translate(80 15) rotate(0) scale(1.1)%22 d=%22M0 0C-5-4-5-10 0-14C5-10 5-4 0 0z%22 fill=%22%23e8730c%22 stroke=%22%238b1a1a%22 stroke-width=%22.7%22/%3E%3Cpath transform=%22translate(80 15) rotate(25) scale(0.95)%22 d=%22M0 0C-5-4-5-10 0-14C5-10 5-4 0 0z%22 fill=%22%23f39221%22 stroke=%22%238b1a1a%22 stroke-width=%22.7%22/%3E%3Cpath transform=%22translate(80 15) rotate(50) scale(0.8)%22 d=%22M0 0C-5-4-5-10 0-14C5-10 5-4 0 0z%22 fill=%22%23f39221%22 stroke=%22%238b1a1a%22 stroke-width=%22.7%22/%3E%3Cpath d=%22M68 15h24%22 stroke=%22%238b1a1a%22 stroke-width=%221.2%22 stroke-linecap=%22round%22/%3E%3C/svg%3E");
  --orn-rangoli: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2280%22 height=%2280%22 viewBox=%220 0 80 80%22%3E%3Cg fill=%22none%22 stroke=%22%23c0560a%22 stroke-opacity=%22.11%22 stroke-width=%221%22%3E%3Cpath transform=%22translate(40 40) rotate(0)%22 d=%22M0-5C-4-10-4-17 0-22C4-17 4-10 0-5z%22/%3E%3Cpath transform=%22translate(40 40) rotate(45)%22 d=%22M0-5C-4-10-4-17 0-22C4-17 4-10 0-5z%22/%3E%3Cpath transform=%22translate(40 40) rotate(90)%22 d=%22M0-5C-4-10-4-17 0-22C4-17 4-10 0-5z%22/%3E%3Cpath transform=%22translate(40 40) rotate(135)%22 d=%22M0-5C-4-10-4-17 0-22C4-17 4-10 0-5z%22/%3E%3Cpath transform=%22translate(40 40) rotate(180)%22 d=%22M0-5C-4-10-4-17 0-22C4-17 4-10 0-5z%22/%3E%3Cpath transform=%22translate(40 40) rotate(225)%22 d=%22M0-5C-4-10-4-17 0-22C4-17 4-10 0-5z%22/%3E%3Cpath transform=%22translate(40 40) rotate(270)%22 d=%22M0-5C-4-10-4-17 0-22C4-17 4-10 0-5z%22/%3E%3Cpath transform=%22translate(40 40) rotate(315)%22 d=%22M0-5C-4-10-4-17 0-22C4-17 4-10 0-5z%22/%3E%3Ccircle cx=%2240%22 cy=%2240%22 r=%223%22/%3E%3Ccircle cx=%2240%22 cy=%2240%22 r=%2226%22 stroke-dasharray=%221.5 4%22/%3E%3Cpath d=%22M40 0l6 6-6 6-6-6zM40 68l6 6-6 6-6-6zM0 40l6-6 6 6-6 6zM68 40l6-6 6 6-6 6z%22/%3E%3Ccircle cx=%220%22 cy=%220%22 r=%228%22/%3E%3Ccircle cx=%2280%22 cy=%220%22 r=%228%22/%3E%3Ccircle cx=%220%22 cy=%2280%22 r=%228%22/%3E%3Ccircle cx=%2280%22 cy=%2280%22 r=%228%22/%3E%3C/g%3E%3C/svg%3E");
  --orn-jaali: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2256%22 height=%2256%22 viewBox=%220 0 56 56%22%3E%3Cg fill=%22none%22 stroke=%22%23fff%22 stroke-opacity=%22.07%22 stroke-width=%221.2%22%3E%3Cpath d=%22M28 4l7 17 17 7-17 7-7 17-7-17-17-7 17-7z%22/%3E%3Ccircle cx=%2228%22 cy=%2228%22 r=%225%22/%3E%3Cpath d=%22M0 0l9 9M56 0l-9 9M0 56l9-9M56 56l-9-9%22/%3E%3C/g%3E%3C/svg%3E");
  --orn-ring: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22100%22 height=%22100%22 viewBox=%220 0 100 100%22%3E%3Cg fill=%22%23f39221%22 fill-opacity=%22.55%22 stroke=%22%23e8730c%22 stroke-width=%22.6%22%3E%3Cpath transform=%22translate(50 50) rotate(0.0)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(22.5)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(45.0)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(67.5)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(90.0)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(112.5)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(135.0)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(157.5)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(180.0)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(202.5)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(225.0)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(247.5)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(270.0)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(292.5)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(315.0)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3Cpath transform=%22translate(50 50) rotate(337.5)%22 d=%22M0-44C-3-41-3-38 0-36C3-38 3-41 0-44z%22/%3E%3C/g%3E%3Ccircle cx=%2250%22 cy=%2250%22 r=%2247%22 fill=%22none%22 stroke=%22%23e8730c%22 stroke-width=%221.2%22 stroke-dasharray=%221 4.2%22 stroke-linecap=%22round%22/%3E%3C/svg%3E");
  --orn-paisley: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2270%22 height=%2270%22 viewBox=%220 0 70 70%22%3E%3Cg fill=%22none%22 stroke=%22%23e8730c%22 stroke-width=%221.3%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M34 62C15 62 8 44 14 30S38 10 48 16s10 18 2 22-12-4-7-7%22/%3E%3Cpath d=%22M33 55C20 54 15 42 19 32s16-14 24-10%22 stroke-dasharray=%221.5 3%22/%3E%3Cpath d=%22M27 46c-4-6-2-13 4-16%22/%3E%3Ccircle cx=%2244%22 cy=%2231%22 r=%221.6%22 fill=%22%238b1a1a%22 stroke=%22none%22/%3E%3C/g%3E%3Cg fill=%22%23f39221%22 fill-opacity=%22.55%22%3E%3Ccircle cx=%2258%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%2263%22 cy=%2218%22 r=%221.4%22/%3E%3Ccircle cx=%2252%22 cy=%225%22 r=%221.4%22/%3E%3C/g%3E%3C/svg%3E");
  --orn-band: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2240%22 height=%2222%22 viewBox=%220 0 40 22%22%3E%3Crect width=%2240%22 height=%2222%22 fill=%22%236b1212%22/%3E%3Cpath d=%22M0 2h40M0 20h40%22 stroke=%22%23f6b22b%22 stroke-width=%221.4%22/%3E%3Cpath d=%22M20 5l6 6-6 6-6-6z%22 fill=%22%23f6b22b%22/%3E%3Cpath d=%22M20 8l3 3-3 3-3-3z%22 fill=%22%238b1a1a%22/%3E%3Ccircle cx=%224%22 cy=%2211%22 r=%222%22 fill=%22%23f39221%22/%3E%3Ccircle cx=%2236%22 cy=%2211%22 r=%222%22 fill=%22%23f39221%22/%3E%3Cpath d=%22M8 11h4M28 11h4%22 stroke=%22%23f6b22b%22 stroke-width=%221%22/%3E%3C/svg%3E");
  --orn-scallop: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22100%22 height=%22100%22 viewBox=%220 0 100 100%22%3E%3Cg fill=%22none%22 stroke=%22%23f39221%22 stroke-width=%221.4%22%3E%3Ccircle cx=%2250.0%22 cy=%224.0%22 r=%223.6%22/%3E%3Ccircle cx=%2261.9%22 cy=%225.6%22 r=%223.6%22/%3E%3Ccircle cx=%2273.0%22 cy=%2210.2%22 r=%223.6%22/%3E%3Ccircle cx=%2282.5%22 cy=%2217.5%22 r=%223.6%22/%3E%3Ccircle cx=%2289.8%22 cy=%2227.0%22 r=%223.6%22/%3E%3Ccircle cx=%2294.4%22 cy=%2238.1%22 r=%223.6%22/%3E%3Ccircle cx=%2296.0%22 cy=%2250.0%22 r=%223.6%22/%3E%3Ccircle cx=%2294.4%22 cy=%2261.9%22 r=%223.6%22/%3E%3Ccircle cx=%2289.8%22 cy=%2273.0%22 r=%223.6%22/%3E%3Ccircle cx=%2282.5%22 cy=%2282.5%22 r=%223.6%22/%3E%3Ccircle cx=%2273.0%22 cy=%2289.8%22 r=%223.6%22/%3E%3Ccircle cx=%2261.9%22 cy=%2294.4%22 r=%223.6%22/%3E%3Ccircle cx=%2250.0%22 cy=%2296.0%22 r=%223.6%22/%3E%3Ccircle cx=%2238.1%22 cy=%2294.4%22 r=%223.6%22/%3E%3Ccircle cx=%2227.0%22 cy=%2289.8%22 r=%223.6%22/%3E%3Ccircle cx=%2217.5%22 cy=%2282.5%22 r=%223.6%22/%3E%3Ccircle cx=%2210.2%22 cy=%2273.0%22 r=%223.6%22/%3E%3Ccircle cx=%225.6%22 cy=%2261.9%22 r=%223.6%22/%3E%3Ccircle cx=%224.0%22 cy=%2250.0%22 r=%223.6%22/%3E%3Ccircle cx=%225.6%22 cy=%2238.1%22 r=%223.6%22/%3E%3Ccircle cx=%2210.2%22 cy=%2227.0%22 r=%223.6%22/%3E%3Ccircle cx=%2217.5%22 cy=%2217.5%22 r=%223.6%22/%3E%3Ccircle cx=%2227.0%22 cy=%2210.2%22 r=%223.6%22/%3E%3Ccircle cx=%2238.1%22 cy=%225.6%22 r=%223.6%22/%3E%3C/g%3E%3Ccircle cx=%2250%22 cy=%2250%22 r=%2241%22 fill=%22none%22 stroke=%22%23f6b22b%22 stroke-width=%221%22 stroke-dasharray=%222 3%22/%3E%3C/svg%3E");
}

/* Toran (marigold garland with mango leaves) hanging under the header */
.toran { position: relative; height: 0; z-index: 20; pointer-events: none; }
.toran::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 52px; background: var(--orn-toran) repeat-x 0 0 / 120px 52px; filter: drop-shadow(0 3px 3px rgba(60,10,0,.25)); }
.hero .container { padding-top: 76px; }
.page-hero { padding-top: 68px; }

/* Mehrab arches where banners meet the page */
.hero::after, .page-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 16px; background: var(--orn-arch) repeat-x center bottom / 44px 16px; border: 0; border-radius: 0; width: auto; top: auto; z-index: 2; }

/* Inner page banner: jaali screen + rotating mandala */
.page-hero::before { content: ""; position: absolute; inset: 0; background: var(--orn-jaali) repeat 0 0 / 56px 56px; pointer-events: none; }
.page-hero .container { position: relative; z-index: 1; }
.page-mandala { position: absolute; right: -90px; top: 50%; width: 420px; height: 420px; margin-top: -210px; color: rgba(255,236,205,.22); pointer-events: none; animation: ornSpin 120s linear infinite; }
.page-mandala.alt { left: -150px; right: auto; width: 300px; height: 300px; margin-top: -150px; color: rgba(255,236,205,.12); animation-direction: reverse; }
@media (max-width: 700px) { .page-mandala { width: 300px; height: 300px; margin-top: -150px; right: -140px; } .page-mandala.alt { display: none; } }

/* Lotus divider under section titles */
.section-head h2::after { content: ""; display: block; width: 160px; height: 18px; margin-top: 8px; background: var(--orn-lotus) no-repeat 0 0 / 160px 18px; }
.section-head.center h2::after, .center > h2::after { margin-left: auto; margin-right: auto; }
.kicker::before { content: "✦"; color: var(--gold-400); margin-right: 6px; }

/* Rangoli texture on soft sections */
.soft { background: var(--orn-rangoli) repeat 0 0 / 80px 80px, var(--cream-100); position: relative; }
.soft::before, .soft::after { content: ""; position: absolute; left: 0; right: 0; height: 10px; background: radial-gradient(circle at 7px 0, transparent 6px, var(--cream-100) 6.5px) repeat-x 0 0 / 14px 10px; pointer-events: none; }
.soft::before { top: -9px; transform: scaleY(-1); }
.soft::after { bottom: -9px; }

/* Tool shortcuts: mandala ring */
.tool .circle::before { content: ""; position: absolute; inset: -10px; background: var(--orn-ring) center / contain no-repeat; animation: ornSpin 40s linear infinite; opacity: .75; transition: opacity .2s; }
.tool:hover .circle::before { opacity: 1; animation-duration: 8s; }
.tools { row-gap: 26px; }

/* Kairi (paisley) corners on cards */
.service-card, .feature, .astro-card, .post-card, .pack { position: relative; }
.service-card::after, .pack::after { content: ""; position: absolute; top: 6px; right: 6px; width: 54px; height: 54px; background: var(--orn-paisley) center / contain no-repeat; opacity: .45; pointer-events: none; transition: .25s; }
.service-card:hover::after, .pack:hover::after { opacity: .9; transform: rotate(-8deg) scale(1.06); }
.feature { background: #fff; border: 1px solid #f6ebe0; border-radius: var(--radius); padding: 20px; box-shadow: var(--shadow); overflow: hidden; }
.feature::after { content: ""; position: absolute; right: -18px; bottom: -18px; width: 90px; height: 90px; background: var(--orn-paisley) center / contain no-repeat; opacity: .25; transform: rotate(180deg); }

/* Rashi cards: Indian pictogram in a scalloped ring */
.sign-card .sym, .zsym { position: relative; }
.sign-card .sym::after { content: ""; position: absolute; inset: -8px; background: var(--orn-scallop) center / contain no-repeat; transition: transform .6s; }
.sign-card:hover .sym::after { transform: rotate(45deg); }
.sign-card .sym { margin-bottom: 14px; margin-top: 6px; }
.rashi-ic { width: 64%; height: 64%; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.rashi-ic .f { fill: currentColor; stroke: none; }
.zsym { display: inline-grid; place-items: center; width: 1.6em; height: 1.6em; border-radius: 50%; background: var(--grad); color: #fff; vertical-align: middle; }

/* Promo + slides */
.promo::after { content: ""; position: absolute; right: 18%; top: -20px; width: 140px; height: 140px; background: var(--orn-paisley) center / contain no-repeat; opacity: .35; pointer-events: none; }
.slide { position: relative; }
.slide::before { content: ""; position: absolute; inset: 0; background: var(--orn-jaali) repeat 0 0 / 56px 56px; pointer-events: none; }
.slide > * { position: relative; }

/* Footer: saree border + mandala watermark */
.site-footer { position: relative; overflow: hidden; border-top: 0; }
.site-footer::before { content: ""; display: block; height: 22px; background: var(--orn-band) repeat-x 0 0 / 40px 22px; }
.footer-mandala { position: absolute; right: -120px; bottom: -160px; width: 460px; height: 460px; color: rgba(246,178,43,.08); animation: ornSpin 160s linear infinite; pointer-events: none; }
.site-footer .container { position: relative; z-index: 1; }

/* Card headings get a small diya-like marker */
.card-head h3 .ic { filter: drop-shadow(0 0 4px rgba(243,146,33,.45)); }

h2.center::after { content: ""; display: block; width: 160px; height: 18px; margin: 8px auto 0; background: var(--orn-lotus) no-repeat 0 0 / 160px 18px; }
.post-card .thumb { background: var(--orn-jaali) repeat 0 0 / 56px 56px, var(--grad-v); position: relative; }
.post-card .thumb::after { content: ""; position: absolute; inset: 18% 30%; background: var(--orn-ring) center / contain no-repeat; opacity: .5; filter: brightness(2); }
.post-card .thumb img { position: relative; z-index: 1; }

@keyframes ornSpin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .page-mandala, .footer-mandala, .tool .circle::before { animation: none; } }
@media print { .toran, .page-mandala, .footer-mandala { display: none !important; } }
