:root {
      --cream:#fffaf0;
      --cream2:#fff3df;
      --orange:#ea580c;
      --orange-dark:#c2410c;
      --deep:#7c2d12;
      --coral:#ff5e62;
      --ink:#39291f;
      --muted:#6b625b;
      --line:#fed7aa;
    }

    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; scroll-padding-top:86px; }
    body {
      margin:0;
      font-family:'Poppins',sans-serif;
      background:linear-gradient(180deg,var(--cream),var(--cream2) 58%,#fffaf0);
      color:var(--ink);
      line-height:1.65;
    }

    h1,h2,h3 { font-family:'Gotu',sans-serif; }
    a { text-underline-offset:3px; }
    .wrap { width:min(1180px,calc(100% - 32px)); margin-inline:auto; }

    .sun-gradient {
      background:linear-gradient(135deg,#ff9966 0%,#ff5e62 100%);
      position:relative;
    }

    .sun-gradient:before {
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
      opacity:.12;
      background-image:radial-gradient(#fff .7px,transparent .7px),radial-gradient(#fff .7px,transparent .7px);
      background-size:22px 22px;
      background-position:0 0,11px 11px;
    }

    .sun-gradient > .wrap { position:relative; z-index:1; }
    .glass { background:rgba(255,253,250,.92); backdrop-filter:blur(12px); }

    .card,.gallery-item,.article-card {
      background:rgba(255,255,255,.95);
      border:1px solid var(--line);
      border-radius:1.35rem;
      box-shadow:0 10px 30px rgba(124,45,18,.07);
    }

    .gallery-item {
      overflow:hidden;
      transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
    }

    .gallery-item:hover {
      transform:translateY(-4px);
      box-shadow:0 16px 38px rgba(124,45,18,.13);
      border-color:#fb923c;
    }

    .eyebrow {
      font-size:.76rem;
      font-weight:700;
      letter-spacing:.13em;
      text-transform:uppercase;
      color:#c2410c;
    }

    .section-title {
      font-size:clamp(1.8rem,4vw,2.8rem);
      line-height:1.2;
      color:var(--deep);
    }

    .button {
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.55rem;
      min-height:46px;
      padding:.68rem 1rem;
      border-radius:.85rem;
      border:1px solid var(--line);
      background:#fff;
      color:var(--deep);
      font-weight:700;
      transition:.2s;
    }

    .button:hover { background:#fff7ed; }
    .button.primary { background:var(--orange); border-color:var(--orange); color:#fff; }
    .button.primary:hover { background:var(--orange-dark); }
    .hero-secondary { color:#fff; background:rgba(255,255,255,.13); border-color:rgba(255,255,255,.34); }

    .tag-sentence {
      display:inline-block;
      margin-top:1rem;
      padding:.55rem 1rem;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.35);
      background:rgba(255,255,255,.14);
      color:#fff;
      font-size:1rem;
      font-weight:700;
      backdrop-filter:blur(6px);
    }

    .hero-desc { white-space:pre-line; }
    .gallery-grid { display:grid; grid-template-columns:1fr; gap:1.5rem; }
    .gallery-item a { display:block; }
    .gallery-item img { display:block; width:100%; height:auto; background:#fff; }

    .caption {
      padding:1rem 1.25rem 1.2rem;
      font-size:1rem;
      font-weight:700;
      color:var(--deep);
      line-height:1.5;
    }

    .article-wrap { margin-top:3rem; }
    .article-card { padding:1.75rem; }
    .article-content { color:#4b5563; font-size:1.05rem; line-height:1.85; overflow-wrap:anywhere; }
    .article-content h2 { color:#9a3412; font-size:2rem; line-height:1.2; margin-top:1.6em; margin-bottom:.7em; }
    .article-content h3 { color:#c2410c; font-size:1.5rem; line-height:1.25; margin-top:1.5em; margin-bottom:.6em; }
    .article-content h4 { color:#c2410c; font-size:1.2rem; margin-top:1.4em; margin-bottom:.5em; }
    .article-content p,.article-content ul,.article-content ol,.article-content table,.article-content blockquote { margin-top:1em; margin-bottom:1em; }
    .article-content ul,.article-content ol { padding-left:1.4rem; }
    .article-content a { color:#c2410c; text-decoration:underline; text-underline-offset:2px; }
    .article-content blockquote { border-left:4px solid #fb923c; background:#fff7ed; padding:1rem 1.2rem; border-radius:.75rem; color:#7c2d12; }
    .article-content table { width:100%; border-collapse:collapse; background:#fff; }
    .article-content th,.article-content td { border:1px solid var(--line); padding:.75rem; text-align:left; vertical-align:top; }
    .article-content th { background:#fff7ed; color:#9a3412; }

    @media(min-width:900px) { .gallery-grid { grid-template-columns:1fr 1fr; } }
    @media(max-width:760px) {
      .desktop-links { display:none; }
      .wrap { width:min(100% - 24px,1180px); }
      .hero-copy { text-align:center; }
      .hero-actions { justify-content:center; }
    }
  

/* Shraddha / Pitru Paksha library styles */
.site-brand-mark{width:40px;height:40px;border-radius:12px;background:#ffedd5;display:grid;place-items:center;font-size:1.25rem}
.hero-grid{display:grid;gap:2rem;align-items:center}.hero-copy{max-width:850px}
.topic-nav{display:flex;gap:.6rem;flex-wrap:wrap}.topic-nav a{font-size:.9rem;text-decoration:none}
.toc{columns:1;column-gap:2rem}.toc a{display:block;padding:.35rem 0;color:#9a3412;text-decoration:none;break-inside:avoid}.toc a:hover{text-decoration:underline}
.guide-topic{scroll-margin-top:90px;padding-top:.5rem}.guide-topic+ .guide-topic{border-top:1px solid var(--line);margin-top:2.2rem;padding-top:2.2rem}
.guide-topic>h2{font-size:1.8rem;color:#9a3412;line-height:1.25;margin:0 0 .8rem}.guide-topic h3{font-size:1.35rem}.guide-topic h4{font-size:1.1rem;color:#c2410c;margin-top:1.2rem}
.guide-topic p,.guide-topic li{color:#4b5563;line-height:1.8}.guide-topic ul,.guide-topic ol{padding-left:1.35rem;margin:1rem 0}.guide-topic table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.guide-topic th,.guide-topic td{border:1px solid var(--line);padding:.7rem;min-width:130px}.guide-topic th{background:#fff7ed;color:#9a3412}
.topic-meta{font-size:.9rem;color:#78716c!important;background:#fff7ed;border-left:3px solid #fb923c;padding:.7rem .85rem;border-radius:.45rem}
.reader-note{background:#fff7ed;border:1px solid var(--line);border-radius:1rem;padding:1rem 1.15rem;color:#7c2d12}
.breadcrumbs{font-size:.9rem;color:#7c2d12}.breadcrumbs a{color:#9a3412}
.related-grid{display:grid;grid-template-columns:1fr;gap:1rem}.related-card{display:block;padding:1rem 1.1rem;text-decoration:none}.related-card:hover{border-color:#fb923c}
.stats{display:flex;gap:.75rem;flex-wrap:wrap}.stat{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);padding:.55rem .8rem;border-radius:999px;font-size:.9rem;font-weight:700}
@media(min-width:800px){.toc{columns:2}.related-grid{grid-template-columns:1fr 1fr}.hero-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}}


.memory-app{--m-card:#fffaf3;--m-ink:#3f2619;--m-muted:#7d6657;--m-line:#e8d6c2;color:var(--m-ink)}
.memory-app .grid{display:grid;grid-template-columns:390px 1fr;gap:22px;align-items:start}
.memory-app .panel{background:rgba(255,250,243,.96);border:1px solid var(--m-line);border-radius:20px;padding:18px;box-shadow:0 12px 30px rgba(73,47,29,.08)}
.memory-app label{display:block;font-weight:700;margin:14px 0 7px}.memory-app input[type=file],.memory-app input[type=text],.memory-app textarea,.memory-app select{width:100%;border:1px solid #d8c3ad;border-radius:12px;padding:11px 12px;background:white;color:#34251d}.memory-app textarea{min-height:86px;resize:vertical}
.memory-app .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.memory-app .btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.memory-app button{border:0;border-radius:12px;padding:11px 15px;font-weight:800;cursor:pointer}.memory-app .primary{background:#c2410c;color:white}.memory-app .secondary{background:#ffedd5;color:#7c2d12}.memory-app .ghost{background:white;border:1px solid #d8c3ad;color:#7c2d12}
.memory-app .tip{font-size:13px;line-height:1.45;color:var(--m-muted);margin-top:10px}.memory-app .thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.memory-app .thumb{aspect-ratio:1;border:1px dashed #cdb79f;border-radius:12px;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;color:#9b8778;position:relative}.memory-app .thumb img{width:100%;height:100%;object-fit:cover}.memory-app .thumb button{position:absolute;right:4px;top:4px;padding:4px 7px;border-radius:999px;background:rgba(0,0,0,.66);color:white;font-size:11px}
.memory-app .stage{background:#2d2019;border-radius:20px;padding:10px;box-shadow:0 16px 38px rgba(43,31,23,.15);position:sticky;top:90px}.memory-app canvas{width:100%;height:auto;display:block;border-radius:14px;background:#ddd}.memory-app .small{font-size:12px;color:#eadacb}.memory-app .range{width:100%}
@media(max-width:900px){.memory-app .grid{grid-template-columns:1fr}.memory-app .stage{position:static}}

.tagline-callout{margin:2rem 0;padding:1.2rem 1.4rem;border-left:4px solid var(--orange);border-radius:1rem;background:linear-gradient(135deg,#fff7ed,#fffaf0);color:var(--deep);font-family:'Gotu',sans-serif;font-size:1.12rem;line-height:1.7;box-shadow:0 8px 24px rgba(124,45,18,.06)}
.tagline-callout:before{content:'“';font-size:1.8rem;line-height:0;vertical-align:-.22rem;margin-right:.2rem;color:var(--orange)}

/* Memory Maker helper text formerly inline. */
.stage-help{padding:8px 4px 0;color:#eadacb}

