
  :root{
    --night:#120B14; --night-2:#1A1120; --night-3:#231628;
    --paper:#F7F1E8; --paper-2:#EFE6D8;
    --ink:#22141F; --ivory:#F3ECE4;
    --muted-d:#A896A8; --muted-l:#6B5B5E;
    --brass:#CFA655; --brass-2:#E2BE6A; --brass-deep:#7A5212; --on-brass:#1A1119;
    --flame:#F4B860; --flame-2:#FF8A3D;
    --lotus:#5A1024; --kumkum:#B8321F; --on-kumkum:#FFF4EE;
    --line-d:#3A2740; --line-l:#DCCFBF;
    --nav-bg:rgba(18,11,20,.88);
    --card:#FFFCF7; --card-d:#1E1424;
    --glow:rgba(244,184,96,.22);
    --maxw:1140px;
  }
  :root[data-theme="light"]{
    --night:#FBF7F0; --night-2:#F4EBDD; --night-3:#EFE3D0;
    --paper:#FFFFFF; --paper-2:#F6EEE2;
    --ink:#22141F; --ivory:#2A1A2C;
    --muted-d:#6F5F6F; --muted-l:#6B5B5E;
    --brass:#8C5F14; --brass-2:#7A5212; --brass-deep:#6E4810; --on-brass:#FFFFFF;
    --flame:#D98A2B; --flame-2:#C4581E;
    --line-d:#E6D9C6; --line-l:#E4D8C8;
    --nav-bg:rgba(251,247,240,.9);
    --card:#FFFFFF; --card-d:#FFFFFF;
    --glow:rgba(217,138,43,.16);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;background:var(--night);color:var(--ivory);
    font-family:var(--body);font-size:16.5px;line-height:1.7;-webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4,.disp{font-family:var(--disp);font-weight:500;margin:0;text-wrap:balance;letter-spacing:.005em;}
  h1{font-size:clamp(2.9rem,7.4vw,5.4rem);line-height:.98;}
  h2{font-size:clamp(2rem,4.4vw,3.1rem);line-height:1.1;}
  h3{font-size:1.45rem;line-height:1.25;}
  h4{font-size:1.1rem;}
  p{margin:0;} a{color:inherit;} img{max-width:100%;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
  .eyebrow{font-size:.68rem;text-transform:uppercase;letter-spacing:.26em;font-weight:700;color:var(--brass);}
  .on-paper .eyebrow{color:var(--brass-deep);}
  .section{padding:104px 0;}
  .stack{display:flex;flex-direction:column;gap:20px;}
  .lede{font-size:1.08rem;color:var(--muted-d);max-width:58ch;}
  .on-paper{background:var(--paper);color:var(--ink);}
  .on-paper .lede{color:var(--muted-l);}
  .em{font-family:var(--disp);font-style:italic;font-weight:500;color:var(--brass-2);}
  .on-paper .em{color:var(--brass-deep);}
  .pull{font-family:var(--disp);font-style:italic;font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.35;
    color:var(--brass-2);max-width:30ch;}
  .on-paper .pull{color:var(--brass-deep);}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--brass);outline-offset:3px;}
  @media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto;} *,*::before,*::after{animation:none!important;transition:none!important;} }

  /* ---------- buttons ---------- */
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;
    padding:12px 24px;border-radius:999px;text-decoration:none;font-weight:700;font-size:.8rem;
    letter-spacing:.12em;text-transform:uppercase;border:1px solid transparent;cursor:pointer;font-family:inherit;
    transition:background .2s,color .2s,border-color .2s,box-shadow .2s;}
  .btn-primary{background:var(--brass);color:var(--on-brass);box-shadow:0 0 0 0 var(--glow);}
  .btn-primary:hover{background:var(--brass-2);box-shadow:0 0 0 8px var(--glow);}
  .btn-ghost{border-color:var(--brass);color:var(--brass);background:transparent;}
  .btn-ghost:hover{background:var(--glow);}
  .on-paper .btn-ghost{border-color:var(--brass-deep);color:var(--brass-deep);}
  .btn-wa{background:var(--kumkum);color:var(--on-kumkum);}
  .btn-wa:hover{background:var(--lotus);}

  /* ---------- darshan curtain ---------- */
  .parda{position:fixed;inset:0;z-index:100;display:flex;pointer-events:none;}
  .parda .half{flex:1;background:
      repeating-linear-gradient(90deg, var(--lotus) 0 26px, #6B1A30 26px 52px),
      var(--lotus);
    box-shadow:inset 0 0 120px rgba(0,0,0,.35);position:relative;
    animation:draw 1.5s cubic-bezier(.77,0,.18,1) .55s forwards;}
  .parda .half::after{content:"";position:absolute;top:0;bottom:0;width:10px;
    background:linear-gradient(90deg,var(--brass),#8A6A2B);}
  .parda .l::after{right:0;} .parda .r::after{left:0;}
  .parda .r{animation-name:draw-r;}
  @keyframes draw{to{transform:translateX(-102%);}}
  @keyframes draw-r{to{transform:translateX(102%);}}
  .parda .bell{position:absolute;top:22px;left:50%;transform:translateX(-50%);z-index:101;
    width:56px;height:auto;animation:fade .6s ease 1.5s forwards;}
  @keyframes fade{to{opacity:0;}}
  :root[data-theme="light"] .parda .half{background:repeating-linear-gradient(90deg,#8C5F14 0 26px,#A9771F 26px 52px),#8C5F14;}
  .no-parda .parda{display:none;}

  /* ---------- diya rail ---------- */
  .rail{display:flex;justify-content:center;gap:34px;padding:8px 0;}
  .diya{width:26px;height:34px;position:relative;flex:0 0 auto;}
  .diya .bowl{position:absolute;bottom:0;left:0;right:0;height:11px;border-radius:0 0 14px 14px;
    background:linear-gradient(180deg,var(--brass-2),var(--brass-deep));}
  .diya .fl{position:absolute;bottom:10px;left:50%;width:9px;height:17px;margin-left:-4.5px;
    border-radius:50% 50% 45% 45%/60% 60% 40% 40%;
    background:radial-gradient(ellipse at 50% 70%,#FFF4C7 0%,var(--flame) 45%,var(--flame-2) 80%,transparent 100%);
    filter:drop-shadow(0 0 6px var(--flame)) drop-shadow(0 0 14px var(--glow));
    transform-origin:50% 100%;animation:flick 2.6s ease-in-out infinite;}
  .diya:nth-child(2n) .fl{animation-delay:-.9s;} .diya:nth-child(3n) .fl{animation-delay:-1.7s;}
  @keyframes flick{0%,100%{transform:scaleY(1) rotate(-1.5deg);} 35%{transform:scaleY(1.12) rotate(1.5deg);} 70%{transform:scaleY(.94) rotate(-1deg);} }
  .diya.off .fl{opacity:0;transform:scaleY(.2);transition:opacity .35s,transform .35s;}
  .diya .fl{transition:opacity .35s,transform .35s;}

  /* ---------- nav ---------- */
  nav.top{position:sticky;top:0;z-index:50;background:var(--nav-bg);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-d);}
  nav.top .inner{max-width:var(--maxw);margin:0 auto;padding:6px 24px;display:flex;align-items:center;gap:22px;}
  .brandmark{display:flex;align-items:center;justify-content:center;text-decoration:none;margin-right:auto;min-width:48px;min-height:44px;padding:0 4px;}
  .brandmark img{height:66px;width:auto;display:block;}
  .navlinks{display:flex;align-items:center;gap:18px;margin-right:auto;}
  nav.top a.lnk{text-decoration:none;font-size:.78rem;color:var(--muted-d);letter-spacing:.06em;white-space:nowrap;}
  nav.top a.lnk:hover{color:var(--ivory);}
  .themetoggle{display:inline-flex;align-items:center;gap:7px;background:transparent;cursor:pointer;min-height:44px;
    border:1px solid var(--line-d);color:var(--ivory);font-family:inherit;font-size:.74rem;letter-spacing:.06em;padding:8px 12px;border-radius:999px;}
  .themetoggle:hover{border-color:var(--brass);color:var(--brass);}
  .themetoggle svg{width:14px;height:14px;display:block;}
  .themetoggle .ic-sun{display:none;}
  :root[data-theme="light"] .themetoggle .ic-sun{display:block;}
  :root[data-theme="light"] .themetoggle .ic-moon{display:none;}
  nav.top .btn{min-height:44px;padding:10px 18px;}
  @media(max-width:1180px){ nav.top a.lnk{font-size:.72rem;} .navlinks{gap:12px;} }
  @media(max-width:860px){
    nav.top .inner{flex-wrap:wrap;gap:10px;padding:8px 20px 0;}
    .brandmark img{height:44px;}
    .themetoggle .tlabel{display:none;} .themetoggle{min-width:44px;justify-content:center;}
    nav.top .btn{padding:10px 14px;font-size:.72rem;}
    .navlinks{order:3;width:calc(100% + 40px);margin:0 -20px;padding:0 20px;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:4px;
      scrollbar-width:none;border-top:1px solid var(--line-d);}
    .navlinks::-webkit-scrollbar{display:none;}
    nav.top a.lnk{display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:0 10px;flex:0 0 auto;}
  }

  /* ---------- hero ---------- */
  header.hero{position:relative;overflow:hidden;padding:72px 0 40px;}
  header.hero::before{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(60% 50% at 78% 45%, var(--glow), transparent 70%);}
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;position:relative;}
  @media(max-width:920px){.hero-grid{grid-template-columns:1fr;gap:36px;}}
  .hero .kicker{font-size:.7rem;letter-spacing:.26em;text-transform:uppercase;color:var(--brass);font-weight:700;}
  .hero h1 .gold{color:var(--brass-2);font-style:italic;font-weight:500;}
  .hero .cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;}
  .areas{font-size:.86rem;color:var(--muted-d);}
  .on-paper .areas{color:var(--muted-l);}
  /* the arch: the shrine's own shape */
  .arch{position:relative;aspect-ratio:4/5;overflow:hidden;
    border-radius:50% 50% 14px 14px / 34% 34% 14px 14px;
    border:1px solid var(--brass-deep);box-shadow:0 30px 80px -30px rgba(0,0,0,.6), 0 0 0 10px var(--night-2), 0 0 0 11px var(--brass-deep);}
  :root[data-theme="light"] .arch{box-shadow:0 30px 60px -34px rgba(60,30,0,.35), 0 0 0 10px var(--night-2), 0 0 0 11px var(--brass);}
  .arch img{width:100%;height:100%;object-fit:cover;display:block;}
  .arch::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(180deg,transparent 60%,rgba(18,11,20,.55));}
  :root[data-theme="light"] .arch::after{background:none;}
  .hero-rail{margin-top:42px;}

  /* ---------- trust ---------- */
  .trust{border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d);background:var(--night-2);}
  .trust .items{display:grid;grid-template-columns:repeat(4,1fr);}
  @media(max-width:880px){.trust .items{grid-template-columns:repeat(2,1fr);}}
  .trust .it{padding:22px 22px;display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--line-d);}
  .trust .it:last-child{border-right:none;}
  @media(max-width:880px){.trust .it:nth-child(2){border-right:none;} .trust .it:nth-child(-n+2){border-bottom:1px solid var(--line-d);}}
  .trust .t{font-family:var(--disp);font-size:1.15rem;}
  .trust .s{font-size:.8rem;color:var(--muted-d);}

  /* ---------- two plans diptych ---------- */
  .diptych{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:22px;border:1px solid var(--line-l);}
  @media(max-width:860px){.diptych{grid-template-columns:1fr;}}
  .pane{padding:36px 34px;display:flex;flex-direction:column;gap:14px;background:var(--card);color:var(--ink);}
  .pane + .pane{border-left:1px solid var(--line-l);}
  @media(max-width:860px){.pane + .pane{border-left:none;border-top:1px solid var(--line-l);}}
  .pane .num{font-family:var(--disp);font-style:italic;color:var(--brass-deep);font-size:1.05rem;}
  .pane h3{font-size:1.9rem;}
  .pane p{color:var(--muted-l);font-size:.98rem;}
  .pane .basis{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--brass-deep);font-weight:700;
    border-top:1px solid var(--line-l);padding-top:14px;margin-top:auto;}
  .pane .btn{align-self:flex-start;}

  /* ---------- ritual strip ---------- */
  .ritual{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:26px;position:relative;}
  .ritual::before{content:"";position:absolute;left:12%;right:12%;top:17px;height:1px;
    background:linear-gradient(90deg,transparent,var(--brass),transparent);}
  @media(max-width:760px){.ritual{grid-template-columns:1fr 1fr;gap:26px 0;} .ritual::before{display:none;}}
  @media(max-width:460px){.ritual{grid-template-columns:1fr;}}
  .rite{padding:0 18px;display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center;}
  .rite .diya{margin-bottom:6px;}
  .rite .sk{font-family:var(--disp);font-style:italic;color:var(--brass-2);font-size:1.15rem;}
  .rite h4{font-size:1.2rem;}
  .rite p{font-size:.9rem;color:var(--muted-d);max-width:26ch;}

  /* ---------- configurator + thali ---------- */
  .cfgwrap{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:start;margin-top:22px;}
  @media(max-width:960px){.cfgwrap{grid-template-columns:1fr;}}
  .cfg{border:1px solid var(--line-d);background:var(--card-d);color:var(--ivory);}
  :root[data-theme="light"] .cfg{color:var(--ink);}
  .cfgrow{display:grid;grid-template-columns:1.15fr .85fr 1.1fr;gap:14px;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line-d);}
  @media(max-width:700px){.cfgrow{grid-template-columns:1fr;gap:8px;}}
  .cfgrow:last-of-type{border-bottom:none;}
  .cfgpick{display:flex;align-items:center;gap:10px;font-size:1.08rem;min-height:44px;cursor:pointer;font-family:var(--disp);}
  .cfgpick input{appearance:none;-webkit-appearance:none;width:44px;height:44px;margin:0 -8px 0 -10px;border:none;background:transparent;position:relative;cursor:pointer;flex:0 0 auto;}
  .cfgpick input::before{content:"";position:absolute;left:11px;top:11px;width:22px;height:22px;border:1px solid var(--brass);border-radius:50%;background:transparent;}
  .cfgpick input:checked::before{background:var(--brass);}
  .cfgpick input:checked::after{content:"";position:absolute;left:19px;top:15px;width:6px;height:12px;border:solid var(--on-brass);border-width:0 2px 2px 0;transform:rotate(45deg);}
  .cfgpick input:focus-visible{outline:2px solid var(--brass);outline-offset:-8px;}
  .cfgrow .lbl{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--brass);display:block;margin-bottom:3px;}
  .cfgrow .deity-g{font-size:.9rem;color:var(--muted-d);}
  :root[data-theme="light"] .cfgrow .deity-g{color:var(--muted-l);}
  .cfgrow select{font-family:inherit;font-size:.9rem;padding:10px 12px;min-height:44px;border:1px solid var(--line-d);
    background:var(--night);color:var(--ivory);border-radius:6px;width:100%;}
  .cfgfoot{padding:18px 20px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;border-top:1px solid var(--line-d);background:var(--night-3);}
  .cfgcount{font-family:var(--disp);font-size:1.2rem;}
  .cfgcount .sub{display:block;font-family:var(--body);font-size:.76rem;color:var(--muted-d);letter-spacing:.04em;}
  .slots{display:flex;flex-wrap:wrap;gap:8px;}
  .slot{font-family:inherit;font-size:.84rem;padding:9px 16px;min-height:44px;border:1px solid var(--line-d);background:transparent;color:inherit;cursor:pointer;border-radius:999px;}
  .slot[aria-pressed="true"]{background:var(--brass);color:var(--on-brass);border-color:var(--brass);}
  .on-paper .slot{border-color:var(--line-l);color:var(--ink);background:var(--card);}
  .on-paper .slot[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink);}
  /* thali */
  .thali{position:sticky;top:96px;border-radius:50%;aspect-ratio:1;border:2px solid var(--brass-deep);
    background:radial-gradient(circle at 50% 42%, var(--night-3), var(--night-2) 60%, var(--night) 100%);
    box-shadow:inset 0 0 0 12px var(--night-2), inset 0 0 0 13px var(--brass-deep), 0 30px 60px -30px rgba(0,0,0,.7);
    display:flex;align-items:center;justify-content:center;position:relative;}
  :root[data-theme="light"] .thali{background:radial-gradient(circle at 50% 42%, #FFF9EE, var(--night-2) 60%, var(--night-3) 100%);box-shadow:inset 0 0 0 12px var(--paper), inset 0 0 0 13px var(--brass);}
  .thali .d{position:absolute;left:50%;top:50%;width:26px;height:34px;margin:-30px 0 0 -13px;transform:rotate(var(--a)) translateY(-118px) rotate(calc(-1 * var(--a)));}
  .thali .centre{text-align:center;display:flex;flex-direction:column;gap:2px;}
  .thali .centre .n{font-family:var(--disp);font-size:3rem;line-height:1;color:var(--brass-2);}
  .thali .centre .t{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-d);font-weight:700;}
  .thali-cap{font-size:.84rem;color:var(--muted-d);text-align:center;margin-top:16px;max-width:30ch;margin-left:auto;margin-right:auto;}

  /* ---------- footprint plans ---------- */
  .plans{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:22px;}
  @media(max-width:1000px){.plans{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:520px){.plans{grid-template-columns:1fr;}}
  .plan{border:1px solid var(--line-l);background:var(--card);color:var(--ink);padding:24px 22px;display:flex;flex-direction:column;gap:12px;position:relative;}
  .plan.featured{border-color:var(--brass-deep);box-shadow:0 24px 50px -30px rgba(34,23,38,.5);}
  .plan .tag{position:absolute;top:-11px;left:22px;background:var(--brass-deep);color:#FFF9EE;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;padding:4px 10px;border-radius:999px;}
  .plan .fp{display:grid;gap:2px;width:max-content;margin-bottom:4px;}
  .plan .fp i{display:block;width:9px;height:9px;background:var(--brass-deep);opacity:.35;border-radius:1px;}
  .plan .nm{font-family:var(--disp);font-size:1.35rem;}
  .plan .amt{font-family:var(--disp);font-size:2.4rem;line-height:1;font-variant-numeric:tabular-nums;}
  .plan .per{font-size:.8rem;color:var(--muted-l);}
  .plan .qtr{font-size:.82rem;color:var(--muted-l);border-top:1px solid var(--line-l);padding-top:12px;}
  .plan .btn{margin-top:auto;}
  ul.plain{margin:0;padding-left:1.05em;display:flex;flex-direction:column;gap:9px;font-size:.95rem;color:var(--muted-d);}
  .on-paper ul.plain{color:var(--muted-l);}
  ul.plain li::marker{color:var(--brass);}
  .two-col{display:grid;grid-template-columns:1fr 1fr;gap:44px;}
  @media(max-width:860px){.two-col{grid-template-columns:1fr;gap:28px;}}

  /* ---------- shop ---------- */
  .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:18px;}
  @media(max-width:980px){.cards{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:560px){.cards{grid-template-columns:1fr;}}
  .card{display:flex;flex-direction:column;gap:0;}
  .card .art{aspect-ratio:3/4;overflow:hidden;border-radius:50% 50% 8px 8px / 30% 30% 8px 8px;border:1px solid var(--line-l);}
  .card .art img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease;}
  .card:hover .art img{transform:scale(1.04);}
  .card .body{padding:16px 4px 0;display:flex;flex-direction:column;gap:6px;}
  .card .meaning{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-deep);font-weight:700;}
  .card .nm{font-family:var(--disp);font-size:1.45rem;}
  .card p{font-size:.9rem;color:var(--muted-l);}
  .card .price{font-size:.78rem;font-weight:700;letter-spacing:.06em;color:var(--brass-deep);margin-top:4px;}
  .deities{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
  .deity{border:1px solid var(--line-l);background:var(--card);color:var(--ink);padding:9px 16px;font-size:.9rem;border-radius:999px;min-height:44px;display:inline-flex;align-items:center;font-family:var(--disp);}
  .deity .v{color:var(--muted-l);font-size:.76rem;margin-left:8px;font-family:var(--body);}
  .sizes{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line-l);border:1px solid var(--line-l);margin-top:10px;}
  @media(max-width:900px){.sizes{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:460px){.sizes{grid-template-columns:1fr;}}
  .sz{background:var(--card);padding:18px 16px;display:flex;flex-direction:column;gap:5px;}
  .sz .mark{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-deep);font-weight:700;}
  .sz .band{font-family:var(--disp);font-size:1.25rem;}
  .sz .who{font-size:.82rem;color:var(--muted-l);}

  /* ---------- story ---------- */
  .story{display:grid;grid-template-columns:.8fr 1.2fr;gap:52px;align-items:start;}
  @media(max-width:900px){.story{grid-template-columns:1fr;gap:28px;}}
  .portrait{aspect-ratio:4/5;overflow:hidden;border-radius:50% 50% 12px 12px / 34% 34% 12px 12px;border:1px solid var(--brass-deep);
    background:var(--night-2);display:flex;align-items:center;justify-content:center;}
  .portrait img{width:100%;height:100%;object-fit:cover;display:block;}
  .portrait .ph{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-d);text-align:center;padding:24px;line-height:1.8;}
  .story p{color:var(--muted-d);max-width:62ch;font-size:1.02rem;}
  .story h3{margin-top:8px;}

  /* ---------- voices ---------- */
  .quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;}
  @media(max-width:980px){.quotes{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:620px){.quotes{grid-template-columns:1fr;}}
  .quote{border:1px solid var(--line-l);background:var(--card);color:var(--ink);padding:26px 24px;display:flex;flex-direction:column;gap:12px;}
  .quote blockquote{margin:0;}
  .quote p{font-family:var(--disp);font-size:1.18rem;line-height:1.45;color:var(--ink);}
  .quote .who{margin-top:auto;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--brass-deep);border-top:1px solid var(--line-l);padding-top:12px;}
  .quote .lot{width:22px;height:22px;color:var(--lotus);}
  :root[data-theme="light"] .quote .lot{color:var(--lotus);}

  /* ---------- work ---------- */
  .work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px;}
  @media(max-width:980px){.work-grid{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:520px){.work-grid{grid-template-columns:1fr;}}
  .work-grid figure{margin:0;border:1px solid var(--line-d);aspect-ratio:4/3;overflow:hidden;background:var(--night-2);}
  .work-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease;}
  .work-grid figure:hover img{transform:scale(1.05);}

  /* ---------- festivals ---------- */
  .fests{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line-d);border:1px solid var(--line-d);margin-top:22px;}
  @media(max-width:1000px){.fests{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:520px){.fests{grid-template-columns:1fr;}}
  .fest{background:var(--night-2);padding:24px 20px;display:flex;flex-direction:column;gap:9px;}
  .fest .season{font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);font-weight:700;}
  .fest h3{font-size:1.35rem;}
  .fest p{font-size:.88rem;color:var(--muted-d);}
  .fest .amt{margin-top:auto;padding-top:10px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--brass-2);font-weight:700;}

  /* ---------- sevadar ---------- */
  .sevadar{border:1px solid var(--brass-deep);padding:34px 30px;display:grid;grid-template-columns:1.3fr auto;gap:28px;align-items:center;background:var(--card);color:var(--ink);
    border-radius:18px;}
  @media(max-width:760px){.sevadar{grid-template-columns:1fr;gap:18px;}}
  .sevadar h3{font-size:1.7rem;}
  .sevadar p{font-size:.96rem;color:var(--muted-l);max-width:60ch;}

  /* ---------- booking ---------- */
  .book-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;}
  @media(max-width:900px){.book-grid{grid-template-columns:1fr;gap:28px;}}
  form.booking{display:flex;flex-direction:column;gap:16px;}
  .field{display:flex;flex-direction:column;gap:6px;}
  .field label{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--brass-deep);}
  .field input,.field select{font-family:inherit;font-size:.95rem;padding:12px 13px;min-height:46px;border:1px solid var(--line-l);background:var(--card);color:var(--ink);border-radius:8px;width:100%;}
  .two{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  @media(max-width:560px){.two{grid-template-columns:1fr;}}
  .form-note{font-size:.78rem;color:var(--muted-l);}
  .confirm{border:1px solid var(--brass-deep);background:#FFF8EA;color:var(--ink);padding:16px 18px;font-size:.92rem;border-radius:8px;}
  .confirm.err{border-color:var(--kumkum);background:#FDF1EE;}
  .confirm a{color:var(--brass-deep);font-weight:700;}
  .cfg .confirm{margin:0 20px 18px;}
  .field input[aria-invalid="true"],.field select[aria-invalid="true"]{border-color:var(--kumkum);}

  /* ---------- faq ---------- */
  details.faq{border-bottom:1px solid var(--line-l);padding:14px 0;}
  details.faq summary{cursor:pointer;font-family:var(--disp);font-size:1.25rem;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:baseline;min-height:44px;}
  details.faq summary::-webkit-details-marker{display:none;}
  details.faq summary::after{content:"+";color:var(--brass-deep);font-size:1.3rem;}
  details.faq[open] summary::after{content:"\2212";}
  details.faq p{margin-top:10px;color:var(--muted-l);font-size:.95rem;max-width:70ch;}

  /* ---------- footer ---------- */
  footer.site{border-top:1px solid var(--line-d);padding:60px 0 40px;background:var(--night-2);}
  footer.site .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;}
  @media(max-width:760px){footer.site .cols{grid-template-columns:1fr;}}
  footer.site a{color:var(--muted-d);text-decoration:none;font-size:.88rem;display:flex;align-items:center;min-height:44px;}
  footer.site a:hover{color:var(--ivory);}
  footer.site .legal{margin-top:34px;padding-top:20px;border-top:1px solid var(--line-d);font-size:.76rem;color:var(--muted-d);}
  .footlogo{max-width:170px;height:auto;display:block;margin-bottom:8px;}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}

  /* ---------- font stacks per language ---------- */
  html[lang="en"]{--disp:"Cormorant Garamond","Iowan Old Style",Georgia,serif;--body:Karla,"Helvetica Neue",Arial,sans-serif;}
  html[lang="hi"]{--disp:"Tiro Devanagari Hindi","Noto Serif Devanagari",Georgia,serif;--body:Mukta,"Helvetica Neue",Arial,sans-serif;}
  /* ---------- multi-page additions ---------- */
  .page-head{padding:56px 0 24px;}
  .crumbs{font-size:.76rem;color:var(--muted-d);display:flex;gap:8px;flex-wrap:wrap;letter-spacing:.04em;}
  .on-paper .crumbs{color:var(--muted-l);}
  .crumbs a{text-decoration:none;} .crumbs a:hover{color:var(--brass);}
  .grid-cats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:18px;}
  @media(max-width:1000px){.grid-cats{grid-template-columns:repeat(3,1fr);}} @media(max-width:600px){.grid-cats{grid-template-columns:repeat(2,1fr);}}
  .cat{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;}
  .cat .art{aspect-ratio:3/4;overflow:hidden;border-radius:50% 50% 8px 8px / 30% 30% 8px 8px;border:1px solid var(--line-l);}
  .cat .art img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s;} .cat:hover .art img{transform:scale(1.04);}
  .cat .nm{font-family:var(--disp);font-size:1.25rem;} .cat .k{font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-deep);font-weight:700;}
  .chips{display:flex;flex-wrap:wrap;gap:8px;} .chip{border:1px solid var(--line-l);background:var(--card);color:var(--ink);padding:8px 14px;border-radius:999px;font-size:.86rem;text-decoration:none;min-height:40px;display:inline-flex;align-items:center;gap:6px;}
  .chip.on{background:var(--brass);border-color:var(--brass);color:var(--on-brass);} .chip:hover{border-color:var(--brass-deep);}
  .shop-layout{display:grid;grid-template-columns:240px 1fr;gap:36px;margin-top:22px;} @media(max-width:860px){.shop-layout{grid-template-columns:1fr;}}
  .facets{display:flex;flex-direction:column;gap:22px;} .facets h4{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-deep);font-family:var(--body);font-weight:700;}
  .facets a{display:block;text-decoration:none;font-size:.92rem;padding:6px 0;color:var(--ink);} .facets a.on{color:var(--brass-deep);font-weight:700;}
  .grid-prod{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;} @media(max-width:1100px){.grid-prod{grid-template-columns:repeat(2,1fr);}} @media(max-width:520px){.grid-prod{grid-template-columns:1fr;}}
  .card a{text-decoration:none;color:inherit;} .badge{display:inline-block;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--lotus);color:#FFF4EE;}
  .badge.est{background:transparent;color:var(--brass-deep);border:1px solid var(--brass-deep);}
  .pdp{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;} @media(max-width:860px){.pdp{grid-template-columns:1fr;gap:28px;}}
  .pdp .gallery{aspect-ratio:4/5;overflow:hidden;border-radius:50% 50% 14px 14px / 34% 34% 14px 14px;border:1px solid var(--brass-deep);} .pdp .gallery img{width:100%;height:100%;object-fit:cover;display:block;}
  .pdp h1{font-size:clamp(2rem,4vw,3rem);} .pdp .price{font-family:var(--disp);font-size:2rem;} .pdp .desc{color:var(--muted-l);max-width:60ch;}
  .opt{display:flex;flex-wrap:wrap;gap:8px;} .opt label{border:1px solid var(--line-l);border-radius:999px;padding:9px 14px;cursor:pointer;font-size:.88rem;min-height:44px;display:inline-flex;align-items:center;gap:8px;background:var(--card);}
  .opt input{accent-color:var(--brass-deep);} .opt label.dis{opacity:.45;} .opt .pr{color:var(--brass-deep);font-weight:700;}
  table.tbl{width:100%;border-collapse:collapse;font-size:.92rem;} .tbl th,.tbl td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line-l);vertical-align:middle;} .tbl th{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-deep);}
  .tbl img{width:56px;height:70px;object-fit:cover;border-radius:6px;} .tbl input[type=number]{width:64px;padding:8px;border:1px solid var(--line-l);border-radius:6px;font-family:inherit;}
  .tot{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line-l);} .tot.big{font-family:var(--disp);font-size:1.5rem;border:none;}
  .notice{border:1px solid var(--brass-deep);background:#FFF8EA;color:var(--ink);padding:14px 16px;border-radius:8px;font-size:.92rem;} .notice.err{border-color:var(--kumkum);background:#FDF1EE;} .notice.ok{border-color:#3B7A57;background:#EEF7F1;}
  .acct{display:grid;grid-template-columns:1fr 1fr;gap:28px;} @media(max-width:860px){.acct{grid-template-columns:1fr;}}
  .panel{border:1px solid var(--line-l);background:var(--card);padding:22px;border-radius:12px;display:flex;flex-direction:column;gap:12px;}
  .panel h3{font-size:1.3rem;} .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
  .btn-sm{min-height:36px;padding:6px 14px;font-size:.7rem;}
  .fest-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line-d);border:1px solid var(--line-d);} @media(max-width:1000px){.fest-grid{grid-template-columns:repeat(2,1fr);}} @media(max-width:520px){.fest-grid{grid-template-columns:1fr;}}
  .fest-grid a{text-decoration:none;color:inherit;}
  .unique{border:1px solid var(--brass-deep);border-radius:18px;padding:34px;background:var(--night-2);display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;}
  @media(max-width:860px){.unique{grid-template-columns:1fr;}} .unique ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px;} .unique li{display:flex;gap:12px;align-items:center;font-family:var(--disp);font-size:1.2rem;}
  .skip{position:absolute;left:-9999px;} .skip:focus{left:12px;top:12px;background:var(--brass);color:var(--on-brass);padding:8px 12px;z-index:200;}
  /* admin */
  .adm{font-family:var(--body);} .adm nav.admn{background:var(--night-2);border-bottom:1px solid var(--line-d);padding:10px 24px;display:flex;gap:16px;flex-wrap:wrap;align-items:center;}
  .adm nav.admn a{color:var(--ivory);text-decoration:none;font-size:.84rem;} .adm nav.admn a.on{color:var(--brass);}
  .adm main{padding:28px 24px;max-width:1200px;margin:0 auto;} .adm h1{font-size:2rem;} .adm .tbl td,.adm .tbl th{padding:8px;} .adm .tbl{background:var(--card);color:var(--ink);border-radius:8px;overflow:hidden;}
  .adm form.inline{display:inline-flex;gap:6px;align-items:center;} .adm input,.adm select,.adm textarea{font-family:inherit;font-size:.9rem;padding:8px 10px;border:1px solid var(--line-l);border-radius:6px;background:var(--card);color:var(--ink);}
  .adm .grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;} .adm .kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;} .adm .kpi div{background:var(--card);color:var(--ink);padding:16px;border-radius:10px;} .adm .kpi b{font-size:1.8rem;font-family:var(--disp);display:block;}
  .adm label{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin:10px 0 4px;}
