/* Homepage styles — extracted verbatim from index.html inline <style> (V2). */

  :root{
    --maroon:#6B0F1A;
    --maroon-deep:#5A0D16;
    --terracotta:#A83A24;
    --gold:#B8860B;
    --gold-soft:#CBA34A;
    --saffron:#CC7722;
    --parchment:#FCF7EE;
    --dark:#3E2A1C;
    --muted:#93826A;
    --light-bg:#FFFDF9;
    --line:#EAD9B6;
    --border-r:12px;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Noto Sans Devanagari', sans-serif;
    background:
      radial-gradient(1100px 420px at 50% -120px, rgba(204,119,34,0.12), transparent 70%),
      linear-gradient(180deg,#FCF7EE 0%, #F6ECDA 100%);
    background-attachment:fixed;
    color:var(--dark);
    line-height:1.9;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  .app{position:relative;z-index:1;}
  img{max-width:100%;height:auto;}
  h1,h2,h3,h4,.serif{font-family:'Noto Serif Devanagari', serif;letter-spacing:0.3px;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  button{font-family:inherit;cursor:pointer;}

  /* ---------- Layout shell ---------- */
  .app{display:flex;min-height:100vh;}
  .sidebar-nav .group-label{
    font-size:11px;text-transform:uppercase;letter-spacing:1px;
    color:#c9a97e;padding:16px 22px 6px;
  }

  /* Mobile "more" drawer */
  .drawer-overlay{
    display:none;position:fixed;inset:0;background:rgba(44,24,16,0.6);z-index:50;
  }
  .drawer{
    position:fixed;left:0;right:0;bottom:0;z-index:51;
    background:var(--light-bg);
    border-top:2px solid var(--gold);
    padding:18px 20px 24px;
    transform:translateY(100%);transition:transform .25s ease;
  }
  .drawer.open{transform:translateY(0);}
  .drawer-overlay.open{display:block;}
  .drawer h3{color:var(--maroon);margin-bottom:12px;font-size:16px;}
  .drawer a{display:block;padding:10px 0;border-bottom:1px solid #e6d6bf;color:var(--dark);}
  .drawer-close{display:block;margin-top:14px;text-align:center;color:var(--maroon);border:1px solid var(--maroon);padding:8px;border-radius:var(--border-r);}

  /* ---------- Main content ---------- */
  #main{flex:1;min-width:0;}
  .page-banner .sub{font-size:14.5px;color:#f0e0cb;margin-top:10px;position:relative;max-width:640px;}
  .arch-row{display:flex;gap:4px;margin-top:14px;}
  .arch-row svg{opacity:0.85;}

  .content-wrap{max-width:880px;margin:0 auto;padding:24px 24px 0;}

  .divider{
    text-align:center;color:var(--gold);font-size:18px;
    margin:30px 0;letter-spacing:6px;
  }

  .card{
    position:relative;
    background:var(--light-bg);
    border:1px solid var(--line);
    border-radius:var(--border-r);
    padding:28px 30px;
    margin-bottom:24px;
    box-shadow:0 6px 22px rgba(107,15,26,0.06);
  }
  .card::before{
    content:"";position:absolute;top:0;left:0;right:0;height:4px;
    background:linear-gradient(90deg,var(--gold-soft),var(--gold),var(--gold-soft));
    border-radius:var(--border-r) var(--border-r) 0 0;
  }
  .card h3{color:var(--maroon);font-size:20px;border-left:4px solid var(--gold);padding-left:14px;margin-bottom:16px;}
  .card .verse{
    white-space:pre-line;font-family:'Noto Serif Devanagari',serif;
    font-size:18px;line-height:2.25;color:#4a3320;text-align:center;
    background:linear-gradient(180deg,#FDF8EC,#FCF5E6);
    border:1px solid var(--line);border-radius:10px;
    padding:24px 24px;margin-top:4px;
  }
  .card .source-tag{
    display:inline-block;margin-top:14px;font-size:11.5px;color:var(--saffron);
    border:1px solid var(--saffron);padding:2px 10px;border-radius:var(--border-r);
  }
  .card .source-tag.pending{color:#999;border-color:#ccc;}

  .section-title{
    color:var(--maroon);font-size:24px;margin:38px 0 16px;
    border-bottom:2px solid var(--gold);padding-bottom:8px;
  }
  .section-title:first-child{margin-top:0;}

  p.lead{font-size:16.5px;margin-bottom:16px;}
  .cite{font-size:12px;color:var(--muted);margin-top:6px;}

  .guru-grid{display:grid;grid-template-columns:1fr;gap:10px;}

  .info-box{
    background:linear-gradient(180deg,#FFFDF8,#FBF3E2);
    border:1px solid var(--line);border-left:4px solid var(--saffron);border-radius:var(--border-r);
    padding:18px 22px;font-size:14px;color:#7a5a2f;margin:20px 0;
    box-shadow:0 3px 12px rgba(107,15,26,0.04);
  }

  .mandir-card{
    position:relative;
    background:var(--light-bg);border:1px solid var(--line);border-radius:var(--border-r);
    padding:22px 26px;margin-bottom:24px;
    box-shadow:0 6px 22px rgba(107,15,26,0.06);
  }
  .mandir-card h3{color:var(--maroon);font-size:20px;margin-bottom:8px;}
  .mandir-card .tag{font-size:12px;background:var(--gold);color:#fff;padding:2px 10px;border-radius:var(--border-r);margin-left:8px;}

  /* ---------- Temple decorative motifs ---------- */
  .temple-arch-motif{display:block;margin:0 auto 6px;opacity:0.9;}
  .motif-icon{display:inline-block;vertical-align:middle;}
  .motif-divider{
    display:flex;align-items:center;justify-content:center;gap:14px;
    color:var(--gold);margin:10px auto 0;
  }
  .motif-divider .line{height:1px;width:60px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}

  .home-hero{
    position:relative;overflow:hidden;
    background:
      radial-gradient(90% 80% at 50% 8%, #98282C 0%, var(--maroon) 50%, var(--maroon-deep) 100%);
    color:var(--parchment);padding:8px 24px 24px;text-align:center;
    border-bottom:3px solid var(--gold);
    box-shadow:inset 0 -1px 0 rgba(203,163,74,0.5);
  }
  .home-hero .om{font-size:30px;color:var(--gold);text-shadow:0 0 20px rgba(184,134,11,0.55);position:relative;line-height:1.2;}
  .home-hero .hero-figure{
    position:relative;width:172px;height:172px;margin:2px auto 8px;
    border-radius:18px;overflow:hidden;
    border:3px solid var(--gold);
    box-shadow:0 10px 28px rgba(0,0,0,0.4), 0 0 0 6px rgba(184,134,11,0.15);
  }
  .home-hero .hero-figure img{width:100%;height:100%;object-fit:cover;display:block;}
  .home-hero .jai{
    font-family:'Noto Serif Devanagari',serif;font-size:30px;color:var(--gold);
    margin-top:2px;letter-spacing:1.5px;position:relative;
    text-shadow:0 2px 12px rgba(0,0,0,0.3);
  }
  .home-hero h1{font-size:17px;color:#f4e8d6;font-weight:400;margin-top:8px;letter-spacing:0.5px;position:relative;}
  .home-hero .hero-actions{position:relative;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:16px;}
  .home-hero .hero-actions a{
    display:inline-flex;align-items:center;gap:7px;
    background:rgba(255,255,255,0.07);border:1px solid rgba(203,163,74,0.55);
    color:#f6e8cf;font-weight:600;font-size:14.5px;padding:11px 22px;border-radius:30px;
    transition:background .18s,border-color .18s,transform .18s,color .18s;
  }
  .home-hero .hero-actions a:hover{background:var(--gold);border-color:var(--gold);color:#3a1206;transform:translateY(-2px);}
  .home-hero .hero-actions a.primary{background:var(--gold);border-color:var(--gold);color:#3a1206;}
  .home-hero .hero-actions a.primary:hover{background:#cf9d2f;}
  .home-closing{
    position:relative;overflow:hidden;text-align:center;
    background:radial-gradient(90% 120% at 50% 0%, #7d1622 0%, var(--maroon) 52%, var(--maroon-deep) 100%);
    color:var(--parchment);
    padding:36px 24px 42px;margin-top:34px;
    border-top:3px solid var(--gold);
  }
  .home-closing-couplet{
    max-width:560px;margin:0 auto;
    font-family:'Noto Serif Devanagari',serif;font-size:19px;line-height:2;color:#F3D9A0;
    text-shadow:0 2px 10px rgba(0,0,0,0.25);
  }
  .home-closing-couplet .attrib{display:block;font-family:'Noto Sans Devanagari',sans-serif;font-size:12.5px;color:#e2c9a4;margin-top:12px;letter-spacing:0.5px;opacity:0.9;}
  .home-closing p{max-width:640px;margin:22px auto 0;color:#f0e2d0;font-size:15px;}

  .section-title-temple{
    display:flex;align-items:center;gap:14px;justify-content:center;
    color:var(--maroon);font-size:22px;margin:14px 0 4px;text-align:center;
  }
  .section-title-temple .line{
    flex:0 0 54px;height:14px;
    background:url("assets/art/lotus.svg") no-repeat center/contain;opacity:0.7;
  }
  .section-sub-temple{text-align:center;font-size:12.5px;color:var(--muted);margin-bottom:14px;letter-spacing:0.3px;}

  .timing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:16px;}
  .timing-card{background:var(--light-bg);border:1px solid var(--line);border-radius:var(--border-r);padding:20px 24px;box-shadow:0 4px 16px rgba(107,15,26,0.05);}
  .timing-card h4{color:var(--maroon);font-size:16px;margin-bottom:12px;border-bottom:1px solid var(--line);padding-bottom:10px;}
  .timing-card ul{display:flex;flex-direction:column;gap:10px;}
  .timing-card li{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;color:var(--dark);}
  .timing-card li .tbd{color:var(--muted);font-size:12px;font-style:italic;}

  .festival-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-top:16px;}
  .festival-card{
    background:var(--light-bg);border:1px solid var(--line);border-radius:var(--border-r);
    padding:18px 14px;text-align:center;box-shadow:0 4px 16px rgba(107,15,26,0.05);
    transition:transform .18s, box-shadow .18s;
  }
  .festival-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(107,15,26,0.1);}
  .festival-card .fdate{color:var(--saffron);font-family:'Noto Serif Devanagari',serif;font-size:15px;font-weight:700;}
  .festival-card .fname{color:var(--maroon);font-size:14px;margin-top:6px;font-weight:600;}
  .festival-card .tag{display:block;font-size:10.5px;color:var(--muted);font-weight:400;margin-top:4px;}
  .quick-links a .qicon{display:block;margin:0 auto 8px;}

  .doha-box{
    position:relative;max-width:660px;margin:22px auto 12px;text-align:center;
    background:linear-gradient(180deg,#FBF3E2,var(--light-bg));
    border:1px solid var(--line);border-radius:var(--border-r);padding:26px 30px;
    box-shadow:0 6px 22px rgba(107,15,26,0.06);
  }
  .doha-box::before{
    content:"";position:absolute;top:0;left:0;right:0;height:4px;
    background:linear-gradient(90deg,var(--gold-soft),var(--gold),var(--gold-soft));
    border-radius:var(--border-r) var(--border-r) 0 0;
  }
  /* darkened for AA: gold on parchment is 3.05:1 */
  .doha-box .label{
    display:inline-flex;align-items:center;gap:8px;justify-content:center;
    color:var(--ink-saffron);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:12px;
  }
  .doha-box .label::before,.doha-box .label::after{content:"";width:26px;height:1px;background:var(--gold);opacity:0.6;}

  footer{
    text-align:center;padding:28px 24px;font-size:12px;color:var(--muted);
    border-top:1px solid var(--line);position:relative;
  }
  footer::before{
    content:"";display:block;width:60px;height:14px;margin:0 auto 12px;
    background:url("assets/art/lotus.svg") no-repeat center/contain;opacity:0.7;
  }

  /* ---- Phase 1.1 homepage refinement ---- */
  .home-section{max-width:1080px;margin:0 auto;padding:26px 24px 0;}
  .home-divider{display:flex;align-items:center;justify-content:center;gap:16px;color:var(--gold-soft);font-size:14px;margin:30px auto 2px;max-width:1080px;}
  .home-divider span{height:1px;width:90px;background:linear-gradient(90deg,transparent,var(--gold-soft),transparent);}
  .tcard-media{display:flex;align-items:center;justify-content:center;height:120px;margin:-24px -24px 16px;border-radius:12px 12px 0 0;overflow:hidden;background:repeating-linear-gradient(135deg,#f4e7cf,#f4e7cf 13px,#efe0c2 13px,#efe0c2 26px);color:#b09256;font-size:11.5px;letter-spacing:1.5px;}
  .tcard-media img{width:100%;height:100%;object-fit:cover;}
  .heritage{background:linear-gradient(180deg,#F3E7CE,#F0E1C4);border-top:1px solid #e6d3ac;border-bottom:1px solid #e6d3ac;margin:34px 0 0;}
  .heritage-inner{max-width:1080px;margin:0 auto;padding:26px 24px;display:grid;grid-template-columns:1.15fr 1fr;gap:44px;}
  .heritage-block{position:relative;padding-left:20px;border-left:3px solid var(--gold-soft);}
  .heritage-primary{border-left-color:var(--gold);}
  .heritage-kicker{font-size:11.5px;letter-spacing:2px;text-transform:uppercase;color:var(--saffron);margin-bottom:6px;}
  .heritage-block h3{color:var(--maroon);font-size:23px;margin-bottom:8px;}
  .heritage-primary h3{font-size:27px;}
  .heritage-lead{font-size:15px;color:#5a4632;line-height:1.85;margin-bottom:12px;}
  .heritage-cta{color:var(--maroon);font-weight:600;font-size:14.5px;border-bottom:1px solid var(--gold);padding-bottom:1px;}
  .heritage-cta:hover{color:var(--saffron);}
  .featured{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:4px;}
  .feat{display:flex;flex-direction:column;gap:3px;background:var(--light-bg);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:10px;padding:16px 18px;box-shadow:0 3px 12px rgba(107,15,26,0.05);transition:transform .16s,box-shadow .16s,border-color .16s;}
  .feat:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(107,15,26,0.1);border-left-color:var(--saffron);}
  .feat-title{font-family:'Noto Serif Devanagari',serif;color:var(--maroon);font-size:18px;font-weight:700;}
  .feat-sub{font-size:13px;color:var(--muted);}
  .events{max-width:720px;margin:4px auto 0;display:flex;flex-direction:column;}
  .event-row{display:flex;align-items:center;gap:20px;padding:14px 6px;border-bottom:1px solid #ecdcbf;}
  .event-row:last-child{border-bottom:none;}
  .ev-date{flex:0 0 62px;text-align:center;font-family:'Noto Serif Devanagari',serif;color:var(--saffron);line-height:1.05;font-size:13px;}
  .ev-date b{display:block;font-size:23px;color:var(--maroon);}
  .ev-body{display:flex;flex-direction:column;}
  .ev-name{color:var(--maroon);font-weight:600;font-size:16px;}
  .ev-note{font-size:12.5px;color:var(--muted);margin-top:2px;}

  @media (max-width:880px){
    .app{display:block;}
    #main{width:100%;}
    .content-wrap{padding:26px 16px 0;}
    .home-hero{padding:12px 16px 28px;}
    .home-hero h1{font-size:13.5px;letter-spacing:0.3px;}
    .home-hero .om{font-size:26px;}
    .home-hero .jai{font-size:27px;}
    .home-hero .hero-figure{width:158px;height:158px;margin:6px auto 8px;}
    .home-hero .hero-actions{gap:9px;margin-top:16px;}
    .home-hero .hero-actions a{font-size:13.5px;padding:10px 16px;}
    .home-closing{padding:34px 16px 40px;margin-top:30px;}
    .home-closing-couplet{font-size:16.5px;max-width:420px;}
    .home-closing p{font-size:14.5px;}
    .mandir-card{padding:18px 18px;}
    .mandir-card .tag{display:inline-block;margin:6px 0 0;}
    .card{padding:20px 18px;}
    .card .verse{font-size:17px;line-height:2.05;padding:18px 16px;}
    .card h3{font-size:18px;}
    .doha-box{padding:18px 18px;}
    .timing-grid,.festival-grid{grid-template-columns:1fr;}
    .section-title-temple{font-size:18px;}
    .section-title-temple .line{flex:0 0 24px;}
    .home-section{max-width:100%;padding:20px 16px 0;}
    .home-divider{max-width:100%;}
    .heritage-inner{grid-template-columns:1fr;gap:22px;padding:22px 16px;max-width:100%;}
    .heritage-block h3{font-size:21px;} .heritage-primary h3{font-size:23px;}
    .event-row{gap:12px;} .ev-date{flex:0 0 52px;}
    /* two across on tablets, one on phones (was 1fr all the way from 880px) */
    .featured{grid-template-columns:repeat(2,1fr);}
    @media (max-width:559px){.featured{grid-template-columns:1fr;}}
  }

  @media (max-width:380px){
    .home-hero .jai{font-size:20px;}
    .card .verse{font-size:15.5px;}
  }

  @media (max-width:400px){
    .home-hero .jai{font-size:22px;}
  }

        

        

        .usnip-row{display:flex;gap:12px;align-items:flex-start;padding:9px 0 9px 10px;border-bottom:1px dashed #eee3d0;border-left:4px solid #d4a017;border-radius:0 6px 6px 0;margin:4px 0;}
        .usnip-row:last-child{border-bottom:none;}
        .usnip-row.is-past{opacity:.42;}
        .usnip-d{flex:0 0 42px;text-align:center;line-height:1.05;}
        .usnip-d b{display:block;font-family:'Noto Serif Devanagari',serif;font-size:19px;color:var(--maroon);}
        .usnip-d i{font-style:normal;font-size:10px;color:#b08948;}
        .usnip-n{font-size:14px;color:#3a2a1a;font-weight:600;line-height:1.4;text-align:left;}
        .usnip-c{display:block;font-size:10.5px;font-weight:500;color:var(--muted);margin-top:1px;}
        .usnip-n em{display:block;font-style:normal;font-size:11.5px;font-weight:400;color:var(--saffron);margin-top:2px;}
        .usnip-row.u-parv{border-left-color:#c0392b;background:linear-gradient(90deg,#fff7ed,#fff);}
        .usnip-row.u-ekadashi{border-left-color:#2e7d32;}
        .usnip-row.u-purnima{border-left-color:#e8a90c;}
        .usnip-row.u-amavasya{border-left-color:#5d4037;}
        .usnip-row.u-sankranti{border-left-color:#e07b00;}
        .usnip-row.u-pradosh{border-left-color:#6a4caf;}
        .usnip-row.u-sankashti{border-left-color:#0277bd;}
        .usnip-row.u-shivratri{border-left-color:#455a64;}

        

/* ---- V2 homepage additions: hero descriptor, quick-access, resume ---- */
.hero-desc{max-width:640px;margin:10px auto 2px;color:#f2e3d0;font-size:15.5px;line-height:1.8;}
.qa-grid{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:760px;margin:8px auto 0;}
.qa-grid a{background:#fff;border:1px solid #e6d4b0;border-radius:22px;padding:9px 18px;color:var(--maroon);font-size:14px;font-weight:600;box-shadow:0 2px 8px rgba(107,15,26,.05);transition:.15s;}
.qa-grid a:hover{background:var(--maroon);color:#fff;border-color:var(--maroon);}
.qa-grid a:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
/* width and placement now come from .home-daily's grid column */
.home-resume-wrap{min-width:0;}
.home-resume{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:linear-gradient(180deg,#fff7ea,#fdf1dc);border:1px solid #e8cf9f;border-left:4px solid var(--gold);border-radius:12px;padding:12px 16px;box-shadow:0 3px 12px rgba(107,15,26,.06);}
.home-resume .hr-ico{font-size:20px;}
.home-resume .hr-txt{flex:1 1 190px;min-width:0;display:flex;flex-direction:column;}
.home-resume .hr-lbl{font-size:11.5px;color:var(--saffron);font-weight:600;}
/* was nowrap+ellipsis: at 360px the label collapsed to a 53px sliver and
   its min-content width pushed the whole daily strip 87px past the viewport */
  .home-resume .hr-title{font-size:15px;color:var(--maroon);font-weight:600;font-family:'Noto Serif Devanagari',serif;line-height:1.5;overflow-wrap:anywhere;}
.home-resume .hr-go{background:var(--maroon);color:#fff;border-radius:20px;padding:8px 16px;font-size:13.5px;font-weight:600;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;}
.home-resume .hr-x{background:transparent;border:none;color:var(--muted);font-size:20px;cursor:pointer;line-height:1;padding:0 4px;min-width:44px;min-height:44px;}
