  /* ── Nav ── */
  .navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}
  .collapse:not(.show){display:none}
  @media(max-width:1199px){
    #mainNav .navbar-collapse{position:absolute;top:100%;left:0;right:0;width:100%;background:linear-gradient(180deg,#cc4e00,#b04600);z-index:9999;justify-content:flex-start!important}
    #mainNav .navbar-collapse .navbar-nav{justify-content:flex-start!important;align-items:flex-start;padding-left:52px}
  }
  @media(max-width:767px){#mainNav .navbar-collapse .navbar-nav{padding-left:12px!important}}
  @media(max-width:820px){#mainNav .navbar-collapse .navbar-nav{padding-left:32px!important}}
  @media(min-width:1200px){.navbar-toggler{display:none!important}.navbar-collapse{display:flex!important;flex-basis:auto}}

  /* ══ DESIGN TOKENS ══ */
  :root {
    --cream:      	#fdf8ef;
    --cream-dk:   	#f5ead6;
    --gold:       	#b8861a;
	--gold-text:  	#7a5a0a;
    --gold-lt:    	#d4a832;
    --gold-pale:  	#f0e0a8;
    --gold-bg:    	#faf3dc;
    --saffron:    	#c8580a;
	--saffron-text: #8a3a06;
    --maroon:     	#7a1a1a;
    --maroon-lt:  	#9a3232;
    --green:      	#1e6622;
    --green-lt:   	#2d8a33;
    --ink:        	#1a0a00;
    --ink-mid:    	#2e1800;
    --ink-lt:     	#4a2e10;
    --border:     	#e0c878;
    --border-lt:  	#eedda0;
    --white:      	#ffffff;
    --shadow:     	rgba(100,60,0,.1);
  }

  body { background: var(--cream); }

  /* ══ PAGE HEADER ══ */
  .rm-header {
    background: var(--cream-dk);
    border-bottom: 2px solid var(--border);
    padding: 1.8rem 1.5rem 1.5rem;
    text-align: center;
  }
  .rm-header-eyebrow {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .82rem;
    font-weight: 600;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--gold-text);
    margin-bottom: .5rem;
  }
  .rm-header h1 {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: clamp(1.5rem, 3.5vw, 2.4rem);
    font-weight: 700;
    color: var(--ink);
    line-height: 1.2;
    margin-bottom: .5rem;
  }
  .rm-header-sub {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .95rem;
    font-weight: 400;
    color: var(--ink-mid);
    max-width: 560px;
    margin: 0 auto 1.2rem;
    line-height: 1.65;
  }

  /* ── Progress bar ── */
  .rm-progress {
    max-width: 680px;
    margin: 0 auto;
  }
  .rm-progress-track {
    display: flex;
    align-items: center;
    gap: 0;
    background: rgba(184,134,26,.1);
    border-radius: 50px;
    padding: .35rem .5rem;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .rm-progress-track::-webkit-scrollbar { display: none; }
  .rm-prog-node {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .18rem;
    flex: 1;
    min-width: 50px;
  }
  .rm-prog-dot {
    width: 10px; height: 10px;
    border-radius: 50%;
    background: var(--border-lt);
    border: 2px solid var(--border);
    flex-shrink: 0;
  }
  .rm-prog-dot.done  { background: var(--green); border-color: var(--green-lt); }
  .rm-prog-dot.now   { background: var(--saffron); border-color: var(--gold); box-shadow: 0 0 0 3px rgba(200,88,10,.2); }
  .rm-prog-year {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .58rem;
    font-weight: 600;
    color: var(--ink-mid);
    letter-spacing: .04em;
    white-space: nowrap;
  }
  .rm-prog-node.done  .rm-prog-year { color: var(--green); }
  .rm-prog-node.now   .rm-prog-year { color: var(--saffron-text); }
  .rm-prog-line {
    flex: 1;
    height: 2px;
    background: var(--border-lt);
    margin-bottom: 1rem;
    min-width: 8px;
  }
  .rm-prog-line.done { background: var(--green-lt); }

  /* ══ BODY ══ */
  .rm-body {
    max-width: 820px;
    margin: 0 auto;
    padding: 2rem 1.25rem 3rem;
  }

  /* ══ TIMELINE VERTICAL ══ */
  .rm-timeline {
    position: relative;
    padding-left: 2.8rem;
  }
  /* Gold vertical line */
  .rm-timeline::before {
    content: '';
    position: absolute;
    left: .75rem;
    top: 0; bottom: 0;
    width: 2px;
    background: linear-gradient(180deg,
      var(--green-lt) 0%,
      var(--green-lt) 25%,
      var(--gold) 40%,
      var(--gold-lt) 100%
    );
    border-radius: 2px;
  }

  /* ── Single milestone ── */
  .rm-step {
    position: relative;
    margin-bottom: 2rem;
    opacity: 0;
    transform: translateX(-16px);
    transition: opacity .5s ease, transform .5s ease;
  }
  .rm-step.visible { opacity: 1; transform: translateX(0); }

  /* Dot on line */
  .rm-step::before {
    content: '';
    position: absolute;
    left: -2.12rem;
    top: 1.4rem;
    width: 14px; height: 14px;
    border-radius: 50%;
    background: var(--gold-lt);
    border: 3px solid var(--cream);
    box-shadow: 0 0 0 2px var(--gold);
    z-index: 2;
  }
  .rm-step.done::before  { background: var(--green); box-shadow: 0 0 0 2px var(--green-lt); }
  .rm-step.active::before { background: var(--saffron); box-shadow: 0 0 0 2px var(--gold); animation: dotPulse 2.5s infinite; will-change: transform, opacity;}
  .rm-step.finale::before { width: 18px; height: 18px; left: -2.26rem; top: 1.25rem; background: var(--gold); box-shadow: 0 0 0 3px var(--gold-lt); }
   @keyframes dotPulse {
	  0%,100% { transform: scale(1);   opacity: 1; }
	  50%      { transform: scale(1.5); opacity: .6; }
   }

  /* Card */
  .rm-card {
    background: var(--white);
    border: 1px solid var(--border-lt);
    border-radius: 12px;
    padding: 1.4rem 1.6rem;
    box-shadow: 0 2px 16px var(--shadow);
    transition: box-shadow .25s, transform .25s;
  }
  .rm-card:hover {
    box-shadow: 0 6px 28px rgba(100,60,0,.14);
    transform: translateX(4px);
  }
  .rm-card.done-card {
    background: #f4faf4;
    border-color: #b8d8b8;
  }
  .rm-card.finale-card {
    background: linear-gradient(135deg, #fffbf0, #fff8e0);
    border: 1.5px solid var(--gold);
    box-shadow: 0 4px 24px rgba(184,134,26,.18);
  }

  /* Card top accent line */
  .rm-card::before {
    content: '';
    display: block;
    height: 3px;
    border-radius: 12px 12px 0 0;
    background: linear-gradient(90deg, var(--gold), var(--gold-lt));
    margin: -1.4rem -1.6rem 1rem;
    border-radius: 12px 12px 0 0;
  }
  .rm-card.done-card::before { background: linear-gradient(90deg, var(--green), var(--green-lt)); }
  .rm-card.finale-card::before { background: linear-gradient(90deg, var(--gold), #f0d060, var(--gold)); }

  /* Header row inside card */
  .rm-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .65rem;
  }
  .rm-card-icon {
    font-size: 2rem;
    line-height: 1;
    flex-shrink: 0;
    margin-top: .1rem;
  }
  .rm-card-meta { flex: 1; }

  /* Year tag */
  .rm-year-tag {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .65rem;
    font-weight: 600;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--gold-text);
    margin-bottom: .25rem;
    display: flex;
    align-items: center;
    gap: .5rem;
  }
  .rm-year-tag.done-tag  { color: var(--green); }
  .rm-year-tag.finale-tag { color: var(--saffron); }

  /* Status badge */
  .rm-badge {
    display: inline-block;
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .58rem;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    padding: .12rem .55rem;
    border-radius: 50px;
  }
  .rm-badge-done   { background: rgba(30,102,34,.1); color: var(--green); }
  .rm-badge-active { background: rgba(200,88,10,.1); color: var(--saffron); }
  .rm-badge-plan   { background: rgba(184,134,26,.12); color: var(--gold-text); }
  .rm-badge-grand  { background: rgba(184,134,26,.18); color: var(--saffron); }

  /* Heading */
  .rm-card h2 {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: clamp(1.05rem, 2vw, 1.3rem);
    font-weight: 700;
    color: var(--ink);
    line-height: 1.25;
    margin: 0;
  }
  .rm-card.done-card  h2 { color: var(--green); }
  .rm-card.finale-card h2 { color: var(--maroon); }

  /* Lead */
  .rm-lead {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .95rem;
    font-style: italic;
    color: var(--ink-mid);
    line-height: 1.65;
    margin: .6rem 0 .75rem;
  }

  /* Bullet list */
  .rm-list {
    list-style: none;
    padding: 0; margin: 0;
    border-top: 1px solid var(--border-lt);
    padding-top: .7rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .28rem .75rem;
  }
  .rm-list li {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .84rem;
    font-weight: 400;
    color: var(--ink-mid);
    line-height: 1.5;
    display: flex;
    align-items: flex-start;
    gap: .38rem;
  }
  .rm-list li::before {
    content: '◆';
    font-size: .32rem;
    color: var(--gold-lt);
    margin-top: .5rem;
    flex-shrink: 0;
  }
  .rm-card.done-card .rm-list li::before {
    content: '✓';
    font-size: .68rem;
    color: var(--green-lt);
    margin-top: .25rem;
    font-weight: 700;
  }

  /* Progress bar */
  .rm-bar {
    margin-top: .85rem;
    height: 4px;
    background: var(--cream-dk);
    border-radius: 4px;
    overflow: hidden;
  }
  .rm-fill {
    height: 100%;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--gold), var(--gold-lt));
    transition: width 1.4s ease;
  }
  .rm-fill.done  { background: linear-gradient(90deg, var(--green), var(--green-lt)); }
  .rm-fill.grand { background: linear-gradient(90deg, var(--saffron), var(--gold-lt)); }

  /* Achieved note */
  .rm-done-note {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .72rem;
    font-weight: 600;
    color: var(--green);
    margin-top: .5rem;
    display: flex;
    align-items: center;
    gap: .35rem;
    letter-spacing: .04em;
  }

  /* ══ VASTU INLINE ══ */
  .rm-vastu-inline {
    display: grid;
    grid-template-columns: 1fr 220px;
    gap: 1.2rem;
    align-items: start;
  }
  .rm-vastu-svg-wrap {
    background: var(--gold-bg);
    border: 1px solid var(--border-lt);
    border-radius: 10px;
    padding: .85rem;
  }
  .rm-vastu-svg-label {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .6rem;
    font-weight: 600;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--gold);
    text-align: center;
    margin-bottom: .5rem;
  }

  /* ══ FINALE ══ */
  .rm-finale-inner {
    display: grid;
    grid-template-columns: 1fr 200px;
    gap: 1.5rem;
    align-items: start;
  }
  .rm-finale-img img {
    width: 100%;
    border-radius: 8px;
    border: 1px solid var(--border);
    filter: sepia(15%) brightness(.95);
  }
  .rm-finale-img p {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .6rem;
    color: var(--ink-lt);
    font-style: italic;
    text-align: center;
    margin: .4rem 0 0;
  }

  /* ══ PILLARS ══ */
  .rm-pillars-section {
    background: var(--cream-dk);
    border-top: 2px solid var(--border-lt);
    border-bottom: 2px solid var(--border-lt);
    padding: 2.2rem 1.25rem;
    margin: 0 -1.25rem 2rem;
  }
  .rm-section-title {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: clamp(1.2rem, 2.5vw, 1.7rem);
    font-weight: 700;
    color: var(--ink);
    text-align: center;
    margin-bottom: .3rem;
  }
  .rm-section-title::after {
    content: '';
    display: block;
    width: 48px; height: 2px;
    background: var(--gold);
    margin: .5rem auto 0;
    border-radius: 2px;
  }
  .rm-section-sub {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .86rem;
    font-weight: 400;
    color: var(--ink-mid);
    text-align: center;
    margin: .5rem auto 1.5rem;
    max-width: 500px;
  }
  .rm-pillars-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    max-width: 760px;
    margin: 0 auto;
  }
  .rm-pillar {
    background: var(--white);
    border: 1px solid var(--border-lt);
    border-top: 3px solid var(--gold);
    border-radius: 10px;
    padding: 1.2rem .9rem;
    text-align: center;
    box-shadow: 0 2px 10px var(--shadow);
    transition: transform .25s, box-shadow .25s;
  }
  .rm-pillar:hover { transform: translateY(-3px); box-shadow: 0 6px 20px var(--shadow); }
  .rm-pillar-icon { font-size: 1.75rem; margin-bottom: .5rem; display: block; }
  .rm-pillar h3 {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: .35rem;
  }
  .rm-pillar p {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .78rem;
    font-weight: 400;
    color: var(--ink-mid);
    line-height: 1.55;
    margin: 0;
  }

  /* ══ FUNDING ══ */
  .rm-funding-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .85rem;
    margin-bottom: 1.2rem;
  }
  .rm-fund {
    background: var(--white);
    border: 1px solid var(--border-lt);
    border-radius: 10px;
    padding: 1.1rem 1rem;
    position: relative;
    overflow: hidden;
    box-shadow: 0 2px 10px var(--shadow);
  }
  .rm-fund::after {
    content: '';
    position: absolute; top: 0; left: 0; right: 0; height: 3px;
    background: linear-gradient(90deg, var(--gold), var(--gold-lt));
    border-radius: 10px 10px 0 0;
  }
  .rm-fund.achieved::after { background: linear-gradient(90deg, var(--green), var(--green-lt)); }
  .rm-fund-phase {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--ink-lt);
    margin-bottom: .28rem;
  }
  .rm-fund-amount {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: 1.45rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1;
    margin-bottom: .28rem;
  }
  .rm-fund.achieved .rm-fund-amount { color: var(--green); }
  .rm-fund-desc {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .76rem;
    font-weight: 400;
    color: var(--ink-mid);
    line-height: 1.4;
    margin-bottom: .65rem;
  }
  .rm-fund-track {
    height: 3px;
    background: var(--cream-dk);
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: .3rem;
  }
  .rm-fund-fill { height: 100%; border-radius: 3px; background: linear-gradient(90deg, var(--gold), var(--gold-lt)); }
  .rm-fund-fill.done { background: linear-gradient(90deg, var(--green), var(--green-lt)); }
  .rm-fund-note {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .62rem;
    font-weight: 600;
    color: var(--green);
    letter-spacing: .05em;
  }
  .rm-fund-note.planned { color: var(--ink-lt); font-weight: 300; }

  /* Total box */
  .rm-fund-total {
    text-align: center;
    background: var(--gold-bg);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 1.2rem;
  }
  .rm-fund-total-label {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .82rem;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--ink-lt);
    margin-bottom: .25rem;
  }
  .rm-fund-total-num {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: clamp(1.8rem, 3.5vw, 2.5rem);
    font-weight: 700;
    color: var(--saffron);
    line-height: 1;
    margin-bottom: .25rem;
  }
  .rm-fund-total-note {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .88rem;
    font-weight: 300;
    color: var(--ink-lt);
    font-style: italic;
  }

  /* ══ CTA ══ */
  .rm-cta {
    background: var(--gold-bg);
    border: 1.5px solid var(--border);
    border-radius: 14px;
    padding: 2rem 1.5rem;
    text-align: center;
    margin-bottom: .5rem;
  }
  .rm-cta h2 {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: clamp(1.2rem, 2.5vw, 1.7rem);
    font-weight: 700;
    color: var(--ink);
    margin-bottom: .35rem;
  }
  .rm-cta p {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .88rem;
    font-weight: 400;
    color: var(--ink-mid);
    margin-bottom: 1.1rem;
  }
  .rm-cta-btns { display: flex; gap: .7rem; justify-content: center; flex-wrap: wrap; }
  .rm-btn {
    font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: .65rem 1.6rem;
    border-radius: 50px;
    text-decoration: none;
    border: none; cursor: pointer;
    transition: transform .2s, box-shadow .2s;
    display: inline-flex; align-items: center; gap: .4rem;
  }
  .rm-btn:hover { transform: translateY(-2px); box-shadow: 0 5px 16px rgba(0,0,0,.15); }
  .rm-btn-primary   { background: var(--maroon); color: #fff; }
  .rm-btn-secondary { background: var(--white); color: var(--maroon); border: 1.5px solid var(--maroon); }

  /* ══ MOBILE ══ */
  @media(max-width:768px) {
    .rm-timeline { padding-left: 2rem; }
    .rm-timeline::before { left: .5rem; }
    .rm-step::before { left: -1.75rem; }
    .rm-step.finale::before { left: -1.88rem; }

    .rm-list { grid-template-columns: 1fr; }
    .rm-vastu-inline { grid-template-columns: 1fr; }
    .rm-vastu-svg-wrap { display: none; }
    .rm-finale-inner { grid-template-columns: 1fr; }
    .rm-finale-img { display: none; }

    .rm-pillars-grid { grid-template-columns: 1fr 1fr; }
    .rm-funding-grid { grid-template-columns: 1fr; }
    .rm-cta-btns { flex-direction: column; align-items: center; }
    .rm-btn { width: 100%; max-width: 240px; justify-content: center; }
    .rm-pillars-section { margin: 0 -.75rem 1.5rem; }
    .rm-card { padding: 1.1rem 1.1rem; }
    .rm-card::before { margin: -1.1rem -1.1rem .85rem; }
  }
  @media(max-width:420px) {
    .rm-pillars-grid { grid-template-columns: 1fr; }
    .rm-header h1 { font-size: 1.4rem; }
  }