/* Design tokens (including all --hi-* names) now live in tokens.css. */

html {
    scroll-padding-top: 110px;
}

body.site {
    margin: 0;
    color: var(--hi-body);
    background: var(--hi-cream);
    font-family: var(--font-body);
    text-rendering: optimizeLegibility;
    /* script-tuned font-size / line-height live in lang-<locale>.css */
}

body.site::before {
    display: none;
    background-image: none;
}

.site h1,
.site h2,
.site h3,
.site blockquote,
.site .site-title,
.site .footer-title {
    color: var(--hi-ink);
    font-family: var(--font-head);
    font-weight: 600;
}

.site h1,
.site h2,
.site h3,
.site p,
.site figure,
.site blockquote {
    margin-top: 0;
}

.site img {
    max-width: 100%;
}
.site .skip-link {
    position: fixed;
    z-index: 3000;
    top: 10px;
    left: 10px;
    padding: 10px 14px;
    color: #fffaf0;
    background: var(--hi-maroon);
    border-radius: 999px;
    transform: translateY(-160%);
    transition: transform .2s ease;
}

.site .skip-link:focus {
    transform: translateY(0);
}

.site .site-header {
    position: absolute;
    inset: 0 0 auto;
    z-index: 20;
    color: var(--hi-ink);
    background: rgba(255, 248, 237, .52);
    border-bottom: 1px solid rgba(121, 43, 42, .12);
    box-shadow: none;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    transition: background-color .24s ease, box-shadow .24s ease, backdrop-filter .24s ease, -webkit-backdrop-filter .24s ease;
}

.site .site-header.is-scrolled {
    position: fixed;
    background: rgba(255, 250, 243, .94);
    box-shadow: 0 10px 34px rgba(55, 31, 27, .1);
}
.site .header-row-bottom {
    padding-top: 0;
}

.site .header-row-bottom::before {
    display: none;
}
body.site.hi-home-page #header-placeholder {
    position: absolute;
    z-index: 1000;
    inset: 0 0 auto;
    height: 0;
    background:
        linear-gradient(90deg, rgba(247, 229, 201, .72) 0%, rgba(247, 229, 201, .34) 48%, rgba(247, 229, 201, 0) 78%),
        url("../images/hi-home-hero-background.webp") center top / cover no-repeat;
}

body.site.hi-home-page #header.site-header:not(.is-scrolled),
body.site.hi-home-page .site-header:not(.is-scrolled) {
    border-bottom-color: transparent;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

body.site.hi-home-page #header.site-header:not(.is-scrolled) .site-brand-logo,
body.site.hi-home-page .site-header:not(.is-scrolled) .site-brand-logo {
    background: transparent;
    box-shadow: none;
    filter: drop-shadow(0 4px 10px rgba(104, 53, 25, .18));
}

.site .site-title,
.site .hi-language-menu,
.site .nav-list,
.site .nav-submenu,
.site .footer {
    font-family: var(--font-body);
}

.site .nav-list {
    gap: clamp(.7rem, 1.4vw, 1.7rem);
}

.site .nav-item > a,
.site .nav-submenu-toggle {
    color: var(--hi-maroon);
    font-size: .98rem;
}

.site .nav-item > a:hover,
.site .nav-item > a:focus-visible,
.site .nav-submenu-toggle:hover,
.site .nav-submenu-toggle:focus-visible,
.site .nav-item > a.active,
.site .has-submenu.is-current > .nav-submenu-toggle {
    color: var(--hi-maroon);
}

.site .nav-chevron {
    border-color: currentColor;
}

.site .nav-item--language {
    display: flex;
    align-items: center;
}

.site .hi-language-menu {
    position: relative;
    z-index: 40;
    flex: 0 0 auto;
}


.site .hi-language-menu summary {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    min-height: 36px;
    padding: .34rem .68rem;
    color: var(--hi-maroon);
    border: 1px solid rgba(121, 43, 42, .18);
    border-radius: 999px;
    background: rgba(255, 250, 242, .68);
    box-shadow: 0 10px 24px rgba(79, 44, 31, .08);
    cursor: pointer;
    user-select: none;
    transition: color 180ms ease, border-color 180ms ease, background 180ms ease, transform 180ms ease;
}

.site .hi-language-menu summary::-webkit-details-marker {
    display: none;
}

.site .hi-language-menu summary:hover,
.site .hi-language-menu summary:focus-visible,
.site .hi-language-menu[open] summary {
    color: var(--hi-ink);
    border-color: rgba(121, 43, 42, .34);
    background: rgba(255, 246, 232, .9);
    transform: translateY(-1px);
}

.site .hi-language-menu__current {
    display: inline-grid;
    min-width: 30px;
    height: 24px;
    place-items: center;
    color: var(--hi-maroon);
    border-radius: 999px;
    /*background: var(--hi-maroon);*/
    font-size: .82rem;
    font-weight: 800;
    line-height: 1;
}

.site .hi-language-menu__list {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    display: grid;
    min-width: 118px;
    padding: 7px;
    border: 1px solid rgba(121, 43, 42, .16);
    border-radius: 14px;
    background: rgba(255, 250, 243, .96);
    box-shadow: 0 18px 42px rgba(55, 31, 27, .14);
}

.site .hi-language-menu__list a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 6px 12px;
    color: var(--hi-ink);
    border-radius: 10px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.site .hi-language-menu__list a::after {
    display: none;
}

.site .hi-language-menu__list a:hover,
.site .hi-language-menu__list a:focus-visible,
.site .hi-language-menu__list a.is-active {
    color: #fffaf3;
    background: var(--hi-maroon);
}

.hi-shell {
    width: min(1180px, calc(100% - 48px));
    margin-inline: auto;
}

.hi-section {
    position: relative;
    overflow: hidden;
    padding-block: clamp(84px, 9vw, 138px);
}

.hi-kicker {
    display: inline-block;
    margin-bottom: 18px;
    color: var(--hi-maroon);
    font-family: var(--hi-serif);
    font-size: .86rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.55;
    text-transform: none;
}

/* ---- canonical section heading -----------------------------------
   <header class="hi-section-heading">        (+ --center for full-width bands)
     <span class="hi-kicker">…</span>
     <h2 id="…">…</h2>
     <p>…</p>                                  optional standfirst
   </header>
   Always a full-width block directly in .hi-shell, ABOVE the content —
   never inside a two-column copy column (that cramps the h2). The
   two-column grid below carries only image + prose, align-items:start.
   Never white-space:nowrap on the h2; text-wrap:balance handles clean
   1–2 line wraps.
   ---------------------------------------------------------------- */
/* The heading block spans the full .hi-shell width so a medium-length h2
   sits on one line instead of wrapping early against empty space. The
   standfirst <p> below keeps its own 720px reading measure. */
.hi-section-heading {
    max-width: none;
    margin-bottom: clamp(28px, 4vw, 48px);
}

.hi-section-heading--center {
    max-width: 1000px;
    margin-inline: auto;
    text-align: center;
    text-wrap: balance;
}

.hi-lineage .hi-section-heading--center {
    max-width: 1120px;
    margin-bottom: clamp(24px, 3.2vw, 42px);
}

.hi-section-heading h2,
.hi-manidweep__copy h2,
.hi-yug__copy h2,
.hi-knowledge-panel__content h2 {
    margin: 0 0 clamp(14px, 2vw, 20px);
    color: var(--hi-ink);
    font-size: clamp(1.95rem, 3.2vw, 2.95rem);
    line-height: 1.18;
    letter-spacing: normal;
    text-wrap: balance;
    white-space: normal;
}

.hi-section-heading p,
.hi-lead {
    max-width: 720px;
    color: #765f52;
    font-size: clamp(1.15rem, 1.7vw, 1.42rem);
    line-height: 1.75;
}

/* Centred standfirsts span the full heading block (not the 720px measure
   cap that suits left-aligned body copy) and balance their wrap, so a
   short line sits on one row and a long one breaks into even halves
   instead of one long line + an orphan word. */
.hi-section-heading--center p,
.hi-section-heading--center .hi-lead {
    margin-inline: auto;
    max-width: none;
    text-wrap: balance;
}

.hi-feature-heading {
    width: 100%;
    
}

.hi-feature-heading h2 {
    margin-bottom: 12px;
    color: var(--hi-ink);
    font-size: clamp(2.25rem, 4.35vw, 4.65rem);
    line-height: 1.16;
    letter-spacing: normal;
}

.hi-feature-tagline {
    max-width: 900px;
    margin: 0;
    color: #765f52;
    font-family: var(--font-head);
    font-size: clamp(1.16rem, 1.7vw, 1.46rem);
    font-weight: 500;
    line-height: 1.65;
}

.hi-prose p {
    margin-bottom: 1.28em;
}

.hi-prose strong {
    color: var(--hi-ink);
    font-weight: 700;
}

.hi-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.hi-actions--center {
    justify-content: center;
}

.hi-btn {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    padding: 12px 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition: transform .3s ease, background-color .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.hi-btn:hover,
.hi-btn:focus-visible {
    transform: translateY(-3px);
}

.hi-btn--primary {
    color: #fffaf2;
    background: var(--hi-maroon);
    box-shadow: 0 12px 28px rgba(121, 43, 42, .2);
}

.hi-btn--primary:hover,
.hi-btn--primary:focus-visible {
    color: white;
    background: #63201f;
    box-shadow: 0 16px 34px rgba(121, 43, 42, .28);
}

.hi-btn--soft {
    color: var(--hi-ink);
    background: rgba(255, 252, 246, .68);
    border-color: rgba(121, 43, 42, .24);
}

.hi-btn--outline {
    color: var(--hi-maroon);
    border-color: rgba(121, 43, 42, .34);
}

.hi-text-link {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    color: var(--hi-maroon);
    font-weight: 700;
    text-decoration: none;
}

.hi-text-link span {
    transition: transform .25s ease;
}

.hi-text-link:hover span,
.hi-text-link:focus-visible span {
    transform: translateX(5px);
}

/* Hero */
.hi-hero {
    position: relative;
    min-height: max(760px, 100svh);
    display: grid;
    align-items: center;
    overflow: hidden;
    padding: clamp(150px, 17vh, 205px) 0 clamp(80px, 9vh, 110px);
    background-color: #f4dec0;
    background-image:
        linear-gradient(90deg, rgba(247, 229, 201, .74) 0%, rgba(247, 229, 201, .42) 44%, rgba(247, 229, 201, .1) 72%, rgba(247, 229, 201, 0) 100%),
        url("../images/hi-home-hero-background.webp");
    background-repeat: no-repeat;
    background-position: center, center top;
    background-size: cover, cover;
}

.hi-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(circle at 28% 42%, rgba(255, 248, 213, .78), transparent 34%);
}

.hi-hero__inner {
    position: relative;
    z-index: 1;
}

.hi-hero__copy {
    width: min(720px, 62%);
}


.hi-hero h1 {
    max-width: 720px;
    margin-bottom: 20px;
    color: #301b2d;
    font-size: clamp(3rem, 5.6vw, 6.35rem);
    line-height: 1.04;
    letter-spacing: normal;
    text-wrap: balance;
}

.hi-hero__motto {
    margin-bottom: 34px;
    color: var(--hi-maroon);
    font-family: var(--font-head);
    font-size: clamp(1.05rem, 1.65vw, 1.45rem);
    font-weight: 700;
    letter-spacing: .04em;
}

.hi-hero__motto span {
    margin-inline: .35em;
    color: var(--hi-gold);
}

.hi-hero__purpose {
    max-width: 690px;
    margin: 0;
    padding: 23px 26px;
    color: #4f423b;
    border: 1px solid rgba(121, 43, 42, .16);
    border-radius: 20px;
    background: rgba(255, 252, 246, .66);
    box-shadow: 0 16px 45px rgba(84, 47, 30, .09);
    backdrop-filter: blur(9px);
    -webkit-backdrop-filter: blur(9px);
    font-family: var(--font-head);
    font-size: clamp(1rem, 1.35vw, 1.14rem);
    line-height: 1.85;
}

/* ---- shared image hero (interior pages) ----------------------------
   <section class="page-hero">                    (add page-hero--plain when there is no photo)
     <img class="page-hero__bg" src="/assets/images/…" alt="" width height loading="eager">
     <div class="hi-shell page-hero__content">
       <span class="hi-kicker">…</span>
       <h1 id="…">…</h1>
       <p class="page-hero__lead">…</p>
       <div class="hi-actions">…</div>                              optional
       <ul class="page-hero__meta"> optional — <li><strong>…</strong><span>…</span></li> </ul>
     </div>
   </section>
   ------------------------------------------------------------------ */
.page-hero {
    position: relative;
    display: grid;
    align-items: center;
    overflow: hidden;
    min-height: clamp(320px, 42vh, 460px);
    padding: clamp(40px, 7vh, 72px) 0;
    background: var(--bg-wash);
}

.page-hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.page-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(248, 244, 236, .96) 0%, rgba(248, 244, 236, .88) 42%, rgba(248, 244, 236, .52) 74%, rgba(248, 244, 236, .16) 100%),
        linear-gradient(180deg, rgba(248, 244, 236, .28) 0%, transparent 44%);
}

.page-hero::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    z-index: 1;
    height: 120px;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(248, 244, 236, 0), var(--bg));
}

.page-hero__content {
    position: relative;
    z-index: 2;
    width: min(760px, 68%);
}

.page-hero h1 {
    margin: 10px 0 0;
    color: var(--ink);
    font-family: var(--font-head);
    font-size: clamp(2.3rem, 4.6vw, 4.2rem);
    line-height: 1.1;
    letter-spacing: 0;
    text-wrap: balance;
}

.page-hero__lead {
    max-width: 620px;
    margin: 18px 0 0;
    color: var(--ink-body);
    font-family: var(--font-head);
    font-size: clamp(1.06rem, 1.55vw, 1.36rem);
    line-height: 1.85;
}

.page-hero__lead a {
    color: var(--accent);
    text-underline-offset: 3px;
}

.page-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 32px;
    margin: 26px 0 0;
    padding: 0;
    list-style: none;
}

.page-hero__meta li {
    font-size: .9rem;
    line-height: 1.45;
    color: var(--ink-body);
}

.page-hero__meta strong {
    display: block;
    font-family: var(--font-head);
    font-size: 1.3rem;
    line-height: 1.15;
    color: var(--primary);
}

.page-hero__meta span {
    display: block;
    margin-top: 2px;
    color: var(--ink-body);
}

/* optional CTA row inside the hero */
.page-hero .hi-actions {
    margin-top: clamp(22px, 3vw, 30px);
}

/* text-only variant — no photo behind (page-hero--plain) */
.page-hero--plain {
    min-height: 0;
    padding: clamp(34px, 5vw, 60px) 0;
    background: var(--bg-wash);
    border-bottom: 1px solid var(--rule);
}

.page-hero--plain::before,
.page-hero--plain::after {
    display: none;
}

.page-hero--plain .page-hero__content {
    width: min(780px, 100%);
}

.page-hero--plain h1 {
    color: var(--primary);
    font-size: var(--step-h1);
}

@media (max-width: 700px) {
    .page-hero { min-height: auto; }
    .page-hero__content { width: 100%; }
}

/* Our Purpose */
.hi-purpose {
    position: relative;
    padding: clamp(76px, 9vw, 120px) 0;
    background: var(--color-parchment, #fbf7ef);
}

.hi-purpose__inner {
    max-width: 1180px;
}

.hi-purpose__heading {
    max-width: 850px;
    margin: 0 auto clamp(48px, 6vw, 72px);
    text-align: center;
}

.hi-purpose__heading h2 {
    margin: 14px 0 0;
    color: var(--color-ink, #2b1b2d);
    font-family: var(--font-head);
    font-size: clamp(2.2rem, 4.5vw, 4.2rem);
    font-weight: 800;
    line-height: 1.18;
}

.hi-purpose__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid rgba(152, 112, 32, .22);
    border-bottom: 1px solid rgba(152, 112, 32, .22);
}

.hi-purpose__item {
    padding: clamp(34px, 5vw, 58px) clamp(24px, 5vw, 64px);
}

.hi-purpose__item + .hi-purpose__item {
    border-left: 1px solid rgba(152, 112, 32, .22);
}

.hi-purpose__label {
    display: block;
    margin-bottom: 16px;
    color: var(--color-flame, #9c3b2e);
    font-family: var(--font-head);
    font-size: .9rem;
    font-weight: 800;
}

.hi-purpose__item h3 {
    max-width: 460px;
    margin: 0 0 18px;
    color: var(--color-ink, #2b1b2d);
    font-family: var(--font-head);
    font-size: clamp(1.45rem, 2.3vw, 2rem);
    font-weight: 800;
    line-height: 1.35;
}

.hi-purpose__item p {
    max-width: 520px;
    margin: 0;
    color: var(--color-muted-strong, #66574d);
    font-family: var(--font-head);
    font-size: 1.05rem;
    line-height: 1.85;
}

.hi-purpose__closing {
    padding-top: 34px;
    text-align: center;
}

.hi-purpose__closing span {
    color: var(--color-gold-dark, #9f7721);
    font-family: var(--font-head);
    font-size: 1.05rem;
    font-weight: 800;
}

@media (max-width: 700px) {
    .hi-purpose__grid {
        grid-template-columns: 1fr;
    }

    .hi-purpose__item + .hi-purpose__item {
        border-top: 1px solid rgba(152, 112, 32, .22);
        border-left: 0;
    }

    .hi-purpose__item {
        padding: 34px 0;
    }
}

/* Mission */
.hi-mission {
    background:
        radial-gradient(circle at 88% 12%, rgba(199, 151, 63, .15), transparent 28%),
        linear-gradient(145deg, #fffaf2 0%, #f7ead8 100%);
}

.hi-narrative {
    display: grid;
    grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr);
    column-gap: clamp(48px, 8vw, 110px);
    row-gap: clamp(24px, 4vw, 44px);
}

.hi-narrative .hi-section-heading {
    grid-column: 1 / -1;
    max-width: none;
    margin-bottom: 0;
}

.hi-mission__media {
    position: relative;
    align-self: start;
    margin: 0;
    padding: 12px;
    overflow: hidden;
    border: 1px solid rgba(121, 43, 42, .14);
    border-radius: 30px 30px 96px 30px;
    background: rgba(255, 252, 245, .68);
    box-shadow: 0 24px 64px rgba(83, 51, 35, .13);
}

.hi-mission__media img {
    display: block;
    width: 100%;
    min-height: 470px;
    max-height: 590px;
    object-fit: cover;
    object-position: 50% 30%;
    border-radius: 21px 21px 82px 21px;
}

.hi-mission__media figcaption {
    padding: 14px 12px 5px;
    color: #75675c;
    font-size: .86rem;
    line-height: 1.6;
    text-align: center;
}

.hi-narrative__body {
    font-size: 1.08rem;
}

.hi-inline-link {
    color: var(--color-flame, #9c3b2e);
    text-decoration: underline;
    text-decoration-color: rgba(156, 59, 46, .35);
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
    transition: color .2s ease, text-decoration-color .2s ease;
}

.hi-inline-link:hover,
.hi-inline-link:focus-visible {
    color: var(--color-gold-dark, #9f7721);
    text-decoration-color: currentColor;
}

.hi-mission__actions {
    margin-top: 22px;
}

.hi-callout {
    position: relative;
    grid-column: 1 / -1;
    isolation: isolate;
    margin-top: 10px;
    padding: clamp(42px, 6vw, 76px) clamp(30px, 8vw, 110px);
    overflow: hidden;
    color: var(--hi-quote-ink);
    text-align: center;
    border: 1px solid var(--hi-quote-border);
    border-radius: 32px;
    background:
        radial-gradient(circle at 48% -18%, rgba(255, 255, 255, .88), transparent 44%),
        radial-gradient(circle at 10% 0%, rgba(221, 236, 240, .7), transparent 28%),
        var(--hi-quote-bg);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .84),
        0 28px 72px rgba(121, 43, 42, .1);
}

.hi-callout::before {
    content: "“";
    position: absolute;
    z-index: -1;
    top: -54px;
    left: clamp(18px, 5vw, 72px);
    color: rgba(121, 43, 42, .08);
    font-family: var(--font-head);
    font-size: clamp(10rem, 18vw, 17rem);
    line-height: 1;
}

.hi-callout::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: min(520px, 54vw);
    aspect-ratio: 1;
    top: 50%;
    left: 50%;
    border: 1px solid rgba(198, 148, 53, .18);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0 0 0 70px rgba(255, 250, 241, .38);
}

.hi-callout blockquote {
    max-width: 1000px;
    margin: 0;
    color: var(--hi-quote-ink);
    font-family: var(--font-head);
    font-size: clamp(1.8rem, 3.35vw, 3.4rem);
    font-weight: 600;
    line-height: 1.55;
    text-wrap: balance;
    text-shadow: 0 1px 0 rgba(255, 255, 255, .72);
}

.hi-callout cite {
    display: block;
    margin-top: 22px;
    color: var(--hi-quote-muted);
    font-family: var(--font-head);
    font-size: clamp(.95rem, 1.4vw, 1.18rem);
    font-style: normal;
    font-weight: 600;
    letter-spacing: .025em;
}

/* Profiles */
.hi-bhaiyaji {
    background:
        radial-gradient(circle at 9% 75%, rgba(128, 149, 91, .16), transparent 29%),
        #f8f3e8;
}

.hi-profile {
    display: grid;
    grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr);
    gap: clamp(42px, 7vw, 94px);
    align-items: center;
}

.hi-profile__media {
    position: relative;
    margin: 0;
    padding: 14px;
    border: 1px solid rgba(121, 43, 42, .15);
    border-radius: 34px 34px 120px 34px;
    background: rgba(255, 252, 247, .82);
    box-shadow: var(--hi-shadow);
}

.hi-profile__media::after {
    content: "";
    position: absolute;
    right: -22px;
    bottom: -22px;
    width: 90px;
    aspect-ratio: 1;
    border: 1px solid rgba(198, 148, 53, .45);
    border-radius: 50%;
    z-index: -1;
}

.hi-profile__media img {
    display: block;
    width: 100%;
    min-height: 430px;
    max-height: 610px;
    object-fit: cover;
    object-position: center;
    border-radius: 24px 24px 106px 24px;
}

.hi-profile--bhaiyaji .hi-profile__media img {
    object-position: 50% 24%;
}

.hi-profile__media figcaption {
    padding: 13px 10px 4px;
    color: #75675c;
    font-size: .86rem;
    text-align: center;
}

.hi-profile__copy h2 small,
.hi-profile__copy h3 small {
    display: inline;
    color: var(--hi-maroon);
    font: inherit;
    font-size: .54em;
}

.hi-profile__copy h3 {
    margin-bottom: 22px;
    font-size: clamp(2rem, 3.5vw, 3.55rem);
    line-height: 1.2;
    letter-spacing: normal;
}

.hi-profile__actions {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    margin-top: 30px;
}

.hi-profile__actions-primary {
    width: 100%;
}



.hi-profile__actions-secondary {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
	  width: 100%;
}

.hi-profile__actions-label {
    margin: 0 0 12px;
    color: var(--color-muted-strong, #66574d);
    font-size: 0.92rem;
    font-weight: 700;
}

.hi-profile__actions .hi-text-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 46px;
    padding: 10px 4px;
    white-space: nowrap;
}

.hi-profile__actions .hi-btn {
    white-space: nowrap;
}


@media (max-width: 700px) {
    .hi-profile__actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .hi-profile__actions .hi-text-link,
    .hi-profile__actions .hi-btn {
        width: fit-content;
    }
}

@media (max-width: 600px) {
    .hi-profile__actions-secondary {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 480px) {
    .hi-profile__actions .hi-btn {
        width: 100%;
        justify-content: center;
    }
}

.hi-lineage {
    background:
        linear-gradient(rgba(255, 250, 242, .94), rgba(255, 250, 242, .94)),
        radial-gradient(circle at center, rgba(198, 148, 53, .22), transparent 44%);
}

.hi-lineage .hi-profile {
    padding: clamp(30px, 4vw, 54px);
    border: 1px solid rgba(121, 43, 42, .11);
    border-radius: 32px;
    background: rgba(255, 255, 255, .68);
    box-shadow: 0 20px 60px rgba(80, 48, 35, .08);
    scroll-margin-top: 110px;
}

.hi-lineage .hi-profile + .hi-profile {
    margin-top: clamp(36px, 5vw, 62px);
}

.hi-profile--reverse .hi-profile__media {
    order: 2;
}

.hi-profile__media--portrait img {
    object-fit: contain;
    background: #efe1d5;
}

/* Sacred book */
.hi-sacred {
    color: #344858;
    background:
        radial-gradient(circle at 17% 45%, rgba(255, 241, 164, .66), transparent 29%),
        linear-gradient(145deg, #d8eef2, #f2edcd 48%, #f9e0b9 100%);
}

.hi-sacred__layout {
    display: grid;
    grid-template-columns: minmax(260px, .62fr) minmax(0, 1.38fr);
    gap: clamp(52px, 9vw, 120px);
    align-items: center;
}

.hi-sacred__media {
    margin: 0;
    align-self: stretch;
}

.hi-sacred__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 650px;
    max-height: 760px;
    object-fit: contain;
    filter: drop-shadow(0 18px 25px rgba(37, 62, 75, .18));
}

.hi-sacred__copy h2 {
    color: #283e52;
}

.hi-book-legacy,
.hi-sadhna-lived {
    display: grid;
    align-items: stretch;
    margin-top: clamp(42px, 6vw, 76px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .58);
    border-radius: 26px;
    background: rgba(255, 252, 244, .38);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .72),
        0 26px 68px rgba(92, 60, 33, .13);
    -webkit-backdrop-filter: blur(18px) saturate(118%);
    backdrop-filter: blur(18px) saturate(118%);
}

.hi-book-legacy {
    grid-template-columns: minmax(0, .88fr) minmax(460px, 1.12fr);
}

.hi-book-legacy__copy,
.hi-sadhna-lived__copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 30px;
    padding: clamp(34px, 5vw, 70px);
    background: rgba(255, 250, 235, .58);
}

.hi-book-legacy__copy blockquote,
.hi-sadhna-lived__copy blockquote {
    position: relative;
    margin: 0;
    padding: 0 0 0 28px;
    color: var(--hi-ink);
    border-left: 3px solid var(--hi-gold);
    font-family: var(--hi-serif);
    font-size: clamp(1.35rem, 2.2vw, 2rem);
    font-weight: 600;
    line-height: 1.65;
}

.hi-book-legacy__figure,
.hi-sadhna-lived__figure {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    min-width: 0;
    margin: 0;
    background: #4a3a2e;
}

.hi-book-legacy__media {
    min-height: 390px;
    overflow: hidden;
}

.hi-book-legacy__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 390px;
    object-fit: cover;
    object-position: 49% 8%;
    transform: scale(1.015);
}

.hi-book-legacy__figure figcaption,
.hi-sadhna-lived__figure figcaption {
    padding: 14px 22px 16px;
    color: rgba(255, 250, 237, .9);
    background: #4a3a2e;
    font-size: .93rem;
    line-height: 1.55;
}

.hi-threefold {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-block: 30px;
}

.hi-threefold > div {
    padding: 20px 18px;
    border: 1px solid rgba(41, 77, 96, .14);
    border-radius: 18px;
    background: rgba(255, 255, 255, .5);
}

.hi-threefold strong,
.hi-threefold span {
    display: block;
}

.hi-threefold strong {
    margin-bottom: 6px;
    color: #76402f;
    font-family: var(--font-head);
    font-size: 1.2rem;
}

.hi-threefold span {
    font-size: .9rem;
    line-height: 1.65;
}

.hi-sacred blockquote,
.hi-sadhna blockquote {
    margin: 30px 0;
    padding: 18px 24px;
    color: #513730;
    border-left: 3px solid var(--hi-gold);
    font-size: 1.23rem;
    line-height: 1.7;
}

.hi-sadhna-feature-block {
    margin: 26px 0 0;
    padding: 22px 24px;
    border: 1px solid rgba(121, 43, 42, .14);
    border-left: 4px solid rgba(143, 40, 39, .78);
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(255, 252, 246, .82), rgba(250, 242, 226, .58));
}

.hi-sadhna-feature-title {
    margin: 0 0 14px;
    color: var(--hi-maroon);
    font-family: var(--hi-serif);
    font-size: 1.08rem;
    font-weight: 800;
}

.hi-sadhna-feature-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hi-sadhna-feature-list li {
    position: relative;
    padding: 2px 0 2px 20px;
    color: var(--hi-ink-soft);
    line-height: 1.55;
}

.hi-sadhna-feature-list li::before {
    content: "";
    position: absolute;
    top: .62em;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--hi-gold);
    box-shadow: 0 0 0 4px rgba(198, 148, 53, .13);
}

.hi-sadhna-feature-list strong {
    display: block;
    margin-bottom: 3px;
    color: var(--hi-ink);
    font-family: var(--hi-serif);
    font-size: 1.03rem;
    font-weight: 800;
}

.hi-sadhna-feature-list span {
    display: block;
    font-size: .95rem;
    font-weight: 500;
}

/* Full-width transition from divine knowledge to its lived practice */
.hi-wisdom-bridge {
    position: relative;
    overflow: hidden;
    padding-block: clamp(68px, 9vw, 118px);
    background:
        radial-gradient(circle at 82% 28%, rgba(168, 218, 238, .5), transparent 28%),
        radial-gradient(circle at 12% 8%, rgba(221, 236, 240, .72), transparent 30%),
        radial-gradient(circle at 88% 16%, rgba(198, 148, 53, .14), transparent 26%),
        linear-gradient(135deg, #fffaf1 0%, #eef7f7 48%, #ddecf3 100%);
}

.hi-wisdom-bridge::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 78% 46%, rgba(255, 255, 255, .78), transparent 30%),
        linear-gradient(180deg, rgba(255, 250, 241, .16), rgba(234, 245, 248, .5));
    pointer-events: none;
}

.hi-wisdom-quote {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(190px, 280px);
    gap: clamp(28px, 5vw, 64px);
    align-items: center;
    width: min(100%, 1120px);
    margin: 0 auto;
    padding: clamp(42px, 6vw, 76px) clamp(28px, 6vw, 82px);
    overflow: hidden;
    color: var(--hi-quote-ink);
    border: 1px solid rgba(121, 169, 188, .28);
    border-radius: 28px;
    background:
        radial-gradient(circle at 86% 44%, rgba(176, 222, 240, .38), transparent 34%),
        linear-gradient(135deg, rgba(255, 250, 239, .58), rgba(235, 247, 250, .62));
}

.hi-wisdom-quote::after {
    content: "";
    position: absolute;
    top: 0;
    left: 12%;
    width: min(240px, 34%);
    height: 3px;
    border-radius: 0 0 999px 999px;
    background: linear-gradient(90deg, transparent, var(--hi-gold), transparent);
}

.hi-wisdom-quote__content {
    position: relative;
    z-index: 1;
    text-align: left;
}

.hi-wisdom-quote__eyebrow {
    position: relative;
    display: block;
    margin-bottom: 18px;
    color: var(--hi-maroon);
    font-family: var(--hi-serif);
    font-size: .86rem;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
}

.hi-wisdom-quote strong {
    position: relative;
    display: block;
    max-width: 760px;
    color: var(--hi-quote-ink);
    text-shadow: 0 1px 0 rgba(255, 255, 255, .72);
    font-family: var(--font-head);
    font-size: clamp(2rem, 4.3vw, 4rem);
    font-weight: 600;
    line-height: 1.3;
    text-wrap: balance;
}

.hi-wisdom-quote strong > span {
    color: var(--hi-maroon);
}

.hi-wisdom-quote p {
    position: relative;
    max-width: 780px;
    margin: 26px 0 0;
    color: #5f4f47;
    text-shadow: none;
    font-family: var(--font-head);
    font-size: clamp(1.08rem, 1.45vw, 1.28rem);
    line-height: 1.85;
    text-wrap: pretty;
}

.hi-wisdom-quote__portrait {
    position: relative;
    z-index: 1;
    margin: 0;
    justify-self: center;
}

.hi-wisdom-quote__portrait::before {
    content: "";
    position: absolute;
    inset: 6% -10% -4%;
    border-radius: 46%;
    background: radial-gradient(circle, rgba(146, 209, 235, .36), transparent 70%);
    filter: blur(16px);
}

.hi-wisdom-quote__portrait img {
    position: relative;
    display: block;
    width: min(100%, 285px);
    height: auto;
    opacity: .9;
    mix-blend-mode: multiply;
    filter: saturate(.92) contrast(1.02) brightness(1.04) drop-shadow(0 18px 30px rgba(75, 43, 29, .1));
}
/* Sadhna */
.hi-sadhna {
    background:
        radial-gradient(circle at 76% 18%, rgba(251, 220, 110, .48), transparent 25%),
        linear-gradient(145deg, #e7f2ec 0%, #f7ebc9 48%, #d8edf3 100%);
}

.hi-sadhna__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
    gap: clamp(48px, 8vw, 108px);
    align-items: center;
}

.hi-sadhna__media {
    position: sticky;
    top: 130px;
    margin: 0;
    align-self: start;
}

.hi-sadhna__media img {
    display: block;
    width: 100%;
    min-height: 690px;
    max-height: 820px;
    object-fit: contain;
}

.hi-threefold--sadhna > div {
    border-color: rgba(121, 43, 42, .13);
}

.hi-sadhna__copy h3 {
    margin: 38px 0 15px;
    font-size: clamp(1.6rem, 2.5vw, 2.25rem);
}

.hi-sadhna-lived {
    grid-template-columns: minmax(460px, 1.12fr) minmax(0, .88fr);
}

.hi-sadhna-lived__copy {
    background:
        radial-gradient(circle at 88% 14%, rgba(230, 188, 79, .2), transparent 36%),
        rgba(247, 251, 242, .55);
}

.hi-sadhna-lived__figure {
    background: #344c45;
}

.hi-sadhna-lived__media {
    min-height: 410px;
    overflow: hidden;
}

.hi-sadhna-lived__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 410px;
    object-fit: cover;
    object-position: 48% center;
    transition: transform .7s ease;
}

.hi-sadhna-lived:hover .hi-sadhna-lived__media img {
    transform: scale(1.025);
}

.hi-sadhna-lived__figure figcaption {
    background: #344c45;
}

/* Yug transition */
.hi-yug {
    color: #53656b;
    background:
        radial-gradient(circle at 18% 36%, rgba(255, 255, 255, .8), transparent 26%),
        linear-gradient(145deg, #d8eff4 0%, #edf7f5 46%, #f2dfc4 100%);
}

.hi-yug__layout {
    display: grid;
    grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr);
    gap: clamp(48px, 8vw, 108px);
    align-items: start;
}

.hi-yug__media {
    margin: 0;
    padding: 14px;
    overflow: hidden;
    border: 1px solid rgba(68, 114, 126, .18);
    border-radius: 180px 180px 28px 28px;
    background: rgba(255, 255, 255, .48);
    box-shadow: 0 28px 70px rgba(68, 92, 98, .16);
}

.hi-yug__media img {
    display: block;
    width: 100%;
    max-height: 720px;
    object-fit: contain;
    border-radius: 166px 166px 18px 18px;
}

.hi-yug__media figcaption {
    padding: 14px 8px 2px;
    color: #5e7075;
    font-size: .86rem;
    text-align: center;
}

.hi-yug .hi-kicker {
    color: #8f422f;
}

.hi-yug .hi-section-heading h2 {
    color: #2d3441;
}

.hi-yug__quote {
    margin-bottom: 30px;
    padding: 20px 24px;
    color: var(--hi-maroon);
    border-left: 3px solid var(--hi-gold);
    border-radius: 0 18px 18px 0;
    background: rgba(255, 251, 242, .58);
    font-family: var(--font-head);
    font-size: clamp(1.85rem, 3.4vw, 3.5rem);
    line-height: 1.35;
}

.hi-yug__text {
    color: #59676b;
}

/* Manidweep */
.hi-manidweep {
    background:
        radial-gradient(circle at 12% 13%, rgba(191, 141, 54, .16), transparent 29%),
        linear-gradient(145deg, #fbf6e9, #e5ebdc);
}

.hi-manidweep__layout {
    display: grid;
    grid-template-columns: minmax(340px, .9fr) minmax(0, 1.1fr);
    gap: clamp(48px, 8vw, 104px);
    align-items: start;
}

.hi-manidweep__media {
    margin: 0;
    overflow: hidden;
    border-radius: 180px 180px 28px 28px;
    background: #fffaf1;
    box-shadow: var(--hi-shadow);
}

.hi-manidweep__media img {
    display: block;
    width: 100%;
    min-height: 540px;
    object-fit: cover;
    object-position: 58% center;
}

.hi-manidweep__media figcaption {
    padding: 16px 20px;
    color: #6d6259;
    font-size: .88rem;
    text-align: center;
}

.hi-manidweep__essence {
    margin: 30px 0;
    padding: 26px 28px;
    color: #fff8ec;
    border-radius: 22px;
    background: #73312e;
}

.hi-manidweep__essence strong {
    display: block;
    margin-bottom: 8px;
    color: #ffdda0;
    font-family: var(--font-head);
    font-size: 1.35rem;
}

.hi-manidweep__essence p {
    margin: 0;
}

/* Karma Sadhna */
.hi-karma {
    background:
        radial-gradient(circle at 92% 7%, rgba(198, 148, 53, .18), transparent 26%),
        radial-gradient(circle at 8% 42%, rgba(119, 153, 141, .13), transparent 25%),
        linear-gradient(180deg, #f8f3e8 0%, #eef2e8 48%, #f7efe3 100%);
}

.hi-karma::before {
    position: absolute;
    inset: 0;
    pointer-events: none;
    content: "";
    background-image:
        linear-gradient(rgba(121, 43, 42, .035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(121, 43, 42, .035) 1px, transparent 1px);
    background-size: 74px 74px;
    mask-image: linear-gradient(to bottom, transparent, #000 15%, #000 88%, transparent);
}

.hi-karma .hi-shell {
    position: relative;
    z-index: 1;
}

.hi-karma__intro {
    max-width: 940px;
    margin: 0 auto clamp(52px, 7vw, 88px);
    text-align: center;
}

.hi-karma__intro h2 {
    margin-bottom: 18px;
    color: #473047;
    font-size: clamp(3.2rem, 7vw, 6rem);
    line-height: 1.05;
}

.hi-karma__intro p {
    margin: 0 auto;
    max-width: 900px;
    color: #5d6259;
    font-size: clamp(1.05rem, 1.65vw, 1.3rem);
    line-height: 1.9;
}

/* Sewa activities — unified elegant card grid */
.hi-seva-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(20px, 2.4vw, 30px);
}

.hi-seva-grid--pillars {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.hi-seva-grid--pillars .hi-seva-card--scholarship {
    grid-column: auto;
    display: flex;
}

.hi-seva-grid--pillars .hi-seva-card--scholarship .hi-seva-card__media {
    aspect-ratio: 4 / 3;
    min-height: 0;
}

.hi-seva-card {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(121, 43, 42, .14);
    border-radius: 26px;
    background: rgba(255, 252, 246, .88);
    box-shadow: 0 16px 42px rgba(63, 45, 37, .08);
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}


.hi-seva-card--scholarship {
    grid-column: span 3;
    display: grid;
    grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
}

.hi-seva-card--scholarship .hi-seva-card__media {
    aspect-ratio: auto;
    min-height: 100%;
}

@media (max-width: 1100px) {
    .hi-seva-card--scholarship {
        grid-column: span 2;
    }
}

@media (max-width: 760px) {
    .hi-seva-card--scholarship {
        grid-column: span 1;
        display: flex;
    }

    .hi-seva-card--scholarship .hi-seva-card__media {
        aspect-ratio: 4 / 3;
        min-height: 0;
    }
}
.hi-seva-card:hover,
.hi-seva-card:focus-within {
    border-color: rgba(185, 135, 45, .42);
    box-shadow: 0 26px 58px rgba(63, 45, 37, .16);
    transform: translateY(-6px);
}

.hi-seva-card__media {
    position: relative;
    margin: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #e2ddce;
}

.hi-seva-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .8s ease;
}

.hi-seva-card:hover .hi-seva-card__media img {
    transform: scale(1.045);
}

.hi-seva-card__media::after {
    position: absolute;
    inset: auto 0 0;
    height: 58%;
    content: "";
    pointer-events: none;
    background: linear-gradient(to top, rgba(26, 19, 24, .82), rgba(26, 19, 24, .08) 62%, transparent);
}

.hi-seva-card__badge {
    position: absolute;
    right: 16px;
    bottom: 14px;
    left: 16px;
    color: #ffe9be;
    font-family: var(--font-body);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1.4;
    text-shadow: 0 1px 6px rgba(0, 0, 0, .4);
}

.hi-seva-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 26px 26px 28px;
}

.hi-seva-card__mark {
    display: block;
    margin-bottom: 11px;
    color: var(--hi-gold);
    font-size: 1.05rem;
    line-height: 1;
}

.hi-seva-card__body h3 {
    margin-bottom: 12px;
    color: #38283a;
    font-family: var(--font-head);
    font-size: clamp(1.24rem, 1.5vw, 1.46rem);
    font-weight: 600;
    line-height: 1.32;
}

.hi-seva-card__body p {
    flex: 1;
    margin: 0;
    color: #5c554d;
    font-size: .95rem;
    line-height: 1.78;
}

.hi-seva-card__meta {
    display: inline-flex;
    width: fit-content;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid rgba(121, 43, 42, .13);
    color: #8b483b;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .02em;
}

.site .footer {
    line-height: 1.65;
}

@media (max-width: 1100px) {
    .site .site-title {
        display: none;
    }

    .hi-hero {
        background-position: center, center top;
    }

    .hi-hero__copy {
        width: min(680px, 68%);
    }

    .hi-profile,
    .hi-sacred__layout,
    .hi-sadhna__layout,
    .hi-manidweep__layout {
        gap: 44px;
    }
}

@media (max-width: 900px) {
    html {
        scroll-padding-top: 82px;
    }

    .site .site-header {
        background: rgba(255, 249, 239, .9);
    }

    body.site.hi-home-page #header.site-header:not(.is-scrolled),
    body.site.hi-home-page .site-header:not(.is-scrolled) {
        background: transparent;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .hi-shell {
        width: min(100% - 32px, 720px);
    }

    .hi-hero {
        min-height: auto;
        padding-top: 130px;
        background-image:
            linear-gradient(180deg, rgba(247, 229, 201, .08) 0%, rgba(247, 229, 201, .5) 46%, rgba(247, 229, 201, .98) 72%, #f4dec0 100%),
            url("../images/hi-home-hero-background.webp");
        background-position: center, 58% top;
        background-size: cover, cover;
    }

    .hi-hero__copy {
        width: 100%;
        padding-top: min(48vw, 420px);
    }

    .hi-hero h1 {
        font-size: clamp(2.7rem, 10vw, 4.8rem);
    }

    .hi-narrative,
    .hi-profile,
    .hi-sacred__layout,
    .hi-sadhna__layout,
    .hi-yug__layout,
    .hi-manidweep__layout {
        grid-template-columns: 1fr;
    }


    .hi-seva-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hi-seva-grid--pillars {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }



    .hi-book-legacy,
    .hi-sadhna-lived {
        grid-template-columns: 1fr;
    }

    .hi-book-legacy__figure {
        order: -1;
    }

    .hi-book-legacy__media,
    .hi-book-legacy__media img,
    .hi-sadhna-lived__media,
    .hi-sadhna-lived__media img {
        min-height: 430px;
    }

    .hi-wisdom-quote {
        padding: 42px 24px;
        border-radius: 24px;
    }
}

@media (max-width: 640px) {
    .hi-seva-grid {
        grid-template-columns: 1fr;
    }

    .hi-sadhna-feature-list {
        grid-template-columns: 1fr;
    }

    .hi-shell {
        width: min(100% - 24px, 560px);
    }

    .hi-section {
        padding-block: 72px;
    }

    .hi-kicker {
        font-size: .78rem;
    }

    .hi-section-heading h2,
    .hi-profile__copy h2,
    .hi-sacred__copy h2,
    .hi-sadhna__copy h2,
    .hi-manidweep__copy h2 {
        font-size: clamp(1.9rem, 6.4vw, 2.3rem);
    }

    .hi-feature-heading h2 {
        font-size: clamp(2rem, 10.5vw, 3rem);
    }

    .hi-hero {
        padding-bottom: 64px;
        background-position: center, 58% top;
        background-size: cover, cover;
    }

    .hi-hero__copy {
        padding-top: min(72vw, 390px);
    }

    .hi-threefold {
        grid-template-columns: 1fr;
    }

    .hi-hero__purpose {
        padding: 20px;
        font-size: .98rem;
    }

    .hi-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .hi-btn {
        width: 100%;
    }

    .hi-callout,
    .hi-lineage .hi-profile {
        padding: 26px 22px;
        border-radius: 22px;
    }

    .hi-profile__media {
        padding: 10px;
        border-radius: 24px 24px 72px 24px;
    }

    .hi-mission__media {
        padding: 10px;
        border-radius: 24px 24px 72px 24px;
    }

    .hi-profile__media img,
    .hi-mission__media img {
        border-radius: 17px 17px 62px 17px;
    }

    .hi-profile__copy h3 {
        font-size: clamp(1.9rem, 9vw, 2.65rem);
    }

    .hi-sacred__media img,
    .hi-sadhna__media img {
        max-height: 620px;
    }

    .hi-book-legacy,
    .hi-sadhna-lived {
        border-radius: 20px;
    }

    .hi-book-legacy__copy,
    .hi-sadhna-lived__copy {
        gap: 24px;
        padding: 28px 22px 32px;
    }

    .hi-book-legacy__copy blockquote,
    .hi-sadhna-lived__copy blockquote {
        padding-left: 20px;
        font-size: 1.25rem;
    }

    .hi-book-legacy__media,
    .hi-book-legacy__media img,
    .hi-sadhna-lived__media,
    .hi-sadhna-lived__media img {
        min-height: 290px;
    }

    .hi-wisdom-quote {
        padding: 36px 20px;
        border-radius: 20px;
    }
}


@media (prefers-reduced-motion: reduce) {
    .hi-btn,
    .hi-text-link span {
        transition: none;
    }
}


/* Testimonials, impact, gallery, and closing sections */
.hi-testimonials {
    background:
        radial-gradient(circle at 50% 15%, rgba(198, 148, 53, .14), transparent 38%),
        linear-gradient(180deg, #fffaf1 0%, #f5ead6 100%);
}

.hi-testimonial-slider {
    max-width: 980px;
    margin-inline: auto;
}

.hi-testimonial-track {
    position: relative;
}

.hi-testimonial-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .45s ease, visibility .45s ease;
}

.hi-testimonial-slide.active {
    position: relative;
    opacity: 1;
    visibility: visible;
}

.hi-testimonial-card {
    position: relative;
    min-height: 100%;
    padding: clamp(32px, 5vw, 56px);
    overflow: hidden;
    border: 1px solid rgba(121, 169, 188, .28);
    border-radius: 28px;
    background: rgba(255, 252, 246, .86);
    box-shadow: 0 22px 58px rgba(75, 43, 29, .09);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.hi-testimonial-card::before {
    content: "“";
    position: absolute;
    top: -34px;
    left: 24px;
    color: rgba(198, 148, 53, .18);
    font-family: var(--hi-serif);
    font-size: clamp(7rem, 13vw, 11rem);
    line-height: 1;
    pointer-events: none;
}

.hi-testimonial-quote-mark {
    display: none;
}

.hi-testimonial-body {
    position: relative;
    margin: 0 0 30px;
    color: #40313f;
    font-family: var(--hi-serif);
    font-size: clamp(1.04rem, 1.45vw, 1.24rem);
    font-style: normal;
    line-height: 1.9;
}

.hi-testimonial-author {
    display: flex;
    gap: 16px;
    align-items: center;
    padding-top: 22px;
    border-top: 1px solid rgba(121, 43, 42, .12);
}

.hi-testimonial-avatar {
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    margin: 0;
    overflow: hidden;
    border: 2px solid rgba(198, 148, 53, .72);
    border-radius: 50%;
    background: #efe2d0;
}

.hi-testimonial-avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hi-testimonial-info h3 {
    margin: 0 0 2px;
    color: var(--hi-maroon);
    font-size: 1.12rem;
    line-height: 1.35;
}

.hi-testimonial-info p {
    margin: 0;
    color: #70645b;
    font-size: .92rem;
    line-height: 1.55;
}

.hi-slider-controls {
    display: flex;
    gap: 18px;
    align-items: center;
    justify-content: center;
    margin-top: 28px;
}

.hi-slider-btn {
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0;
    place-items: center;
    color: var(--hi-maroon);
    border: 1px solid rgba(121, 43, 42, .2);
    border-radius: 50%;
    background: rgba(255, 252, 246, .9);
    box-shadow: 0 10px 24px rgba(75, 43, 29, .08);
    cursor: pointer;
    transition: transform .25s ease, color .25s ease, background-color .25s ease, box-shadow .25s ease;
}

.hi-slider-btn:hover,
.hi-slider-btn:focus-visible {
    color: #fffaf2;
    background: var(--hi-maroon);
    box-shadow: 0 14px 30px rgba(121, 43, 42, .2);
    transform: translateY(-2px);
}

.hi-slider-dots {
    display: flex;
    gap: 8px;
    align-items: center;
}

.hi-slider-dot {
    width: 10px;
    height: 10px;
    border: 0;
    border-radius: 999px;
    background: rgba(121, 43, 42, .28);
    cursor: pointer;
    transition: width .25s ease, background-color .25s ease;
}

.hi-slider-dot.active {
    width: 26px;
    background: var(--hi-maroon);
}

.hi-impact {
    position: relative;
    overflow: hidden;
    padding-block: clamp(84px, 9vw, 138px);
    background:
        radial-gradient(circle at 12% 18%, rgba(198, 148, 53, .14), transparent 30%),
        radial-gradient(circle at 88% 78%, rgba(119, 153, 141, .12), transparent 30%),
        linear-gradient(145deg, #fffaf1 0%, #f3ead8 56%, #edf2e8 100%);
    border-block: 1px solid rgba(121, 43, 42, .08);
}

.hi-impact::before {
    content: "";
    position: absolute;
    left: -180px;
    bottom: -230px;
    width: 390px;
    aspect-ratio: 1;
    border: 1px solid rgba(198, 148, 53, .16);
    border-radius: 50%;
    box-shadow: 0 0 0 58px rgba(255, 255, 255, .1);
    pointer-events: none;
}

.hi-impact .hi-shell {
    position: relative;
    z-index: 1;
}

.hi-impact .hi-section-heading {
    max-width: 980px;
    margin-inline: auto;
    text-align: center;
}


.hi-impact .hi-section-heading h2,
.hi-gallery .hi-section-heading h2 {
    margin: 0;
    color: var(--hi-ink);
    font-family: var(--hi-serif);
    font-size: clamp(2.25rem, 4.35vw, 4.65rem);
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: normal;
    text-wrap: balance;
}

.impact-intro {
    max-width: 820px;
    margin: 18px auto 0;
    color: #705f52;
    font-size: clamp(1.05rem, 1.45vw, 1.23rem);
    line-height: 1.85;
}

.impact-stage {
    position: relative;
    min-height: clamp(560px, 63vw, 700px);
    margin-top: clamp(36px, 5vw, 56px);
    overflow: hidden;
    isolation: isolate;
    border: 1px solid rgba(255, 255, 255, .52);
    border-radius: 28px;
    background: #2f2430;
    box-shadow: 0 26px 68px rgba(45, 29, 27, .16);
}

.impact-tabs {
    position: absolute;
    z-index: 5;
    top: 24px;
    left: 50%;
    display: flex;
    gap: 10px;
    width: max-content;
    max-width: calc(100% - 44px);
    padding: 4px;
    overflow-x: auto;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
    transform: translateX(-50%);
}

.impact-tabs::-webkit-scrollbar {
    display: none;
}

.impact-tab {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 10px 17px;
    color: #3c2c3d;
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 999px;
    background: rgba(255, 252, 246, .92);
    box-shadow: 0 6px 20px rgba(21, 16, 22, .14);
    cursor: pointer;
    font-family: var(--font-body);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .02em;
    line-height: 1.25;
    white-space: nowrap;
    scroll-snap-align: center;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    transition: transform .25s ease, color .25s ease, background-color .25s ease, border-color .25s ease;
}

.impact-tab:hover,
.impact-tab:focus-visible {
    background: #fffdf8;
    transform: translateY(-2px);
}

.impact-tab:focus-visible {
    outline: 3px solid rgba(255, 221, 139, .95);
    outline-offset: 3px;
}

.impact-tab[aria-selected="true"] {
    color: #2d1c2d;
    border-color: rgba(255, 232, 169, .95);
    background: linear-gradient(135deg, #f4d889 0%, #d5a342 100%);
}

.impact-slide {
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .55s ease, visibility .55s ease;
}

.impact-slide.is-active {
    z-index: 1;
    opacity: 1;
    visibility: visible;
}

.impact-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(35, 24, 34, .88) 0%, rgba(46, 31, 35, .62) 42%, rgba(46, 31, 35, .1) 78%),
        linear-gradient(0deg, rgba(22, 16, 20, .8) 0%, rgba(22, 16, 20, .08) 58%, rgba(22, 16, 20, .26) 100%);
    pointer-events: none;
}

.impact-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(.9) contrast(1.03);
    transform: scale(1.025);
    transition: transform 1.1s cubic-bezier(.2, .7, .2, 1);
}

.impact-slide.is-active img {
    transform: scale(1);
}

.impact-slide--girls img,
.impact-slide--family img {
    object-position: center 42%;
}

.impact-slide--wellness img,
.impact-slide--self-reliance img {
    object-position: center 46%;
}

.impact-slide--archive img {
    object-position: center;
    filter: sepia(.08) saturate(.78) contrast(1.05);
}

.impact-slide-content {
    position: absolute;
    z-index: 2;
    bottom: clamp(34px, 6vw, 70px);
    left: clamp(28px, 5vw, 72px);
    width: min(760px, calc(100% - 56px));
    color: #fffdf8;
    text-shadow: 0 2px 16px rgba(15, 10, 14, .28);
}

.impact-number {
    display: block;
    color: #f3d783;
    font-family: var(--hi-serif);
    font-size: clamp(3.6rem, 8vw, 6.35rem);
    font-weight: 600;
    letter-spacing: normal;
    line-height: .98;
}

.impact-metrics {
    display: flex;
    gap: clamp(24px, 4vw, 52px);
    align-items: flex-end;
}

.impact-metric + .impact-metric {
    padding-left: clamp(24px, 4vw, 52px);
    border-left: 1px solid rgba(255, 255, 255, .34);
}

.impact-metric .impact-number {
    font-size: clamp(3rem, 6.4vw, 5.2rem);
    white-space: nowrap;
}

.impact-metric-label,
.impact-micro-note {
    color: #f8ebc7;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .05em;
    line-height: 1.45;
}

.impact-metric-label {
    display: block;
    margin-top: 10px;
}

.impact-slide-content h3 {
    max-width: 650px;
    margin: 18px 0 0;
    color: #fffdf8;
    font-size: clamp(1.7rem, 3.35vw, 2.7rem);
    line-height: 1.18;
}

.impact-slide-content p {
    max-width: 610px;
    margin: 14px 0 0;
    color: rgba(255, 253, 248, .9);
    font-size: clamp(1.04rem, 1.75vw, 1.2rem);
    line-height: 1.65;
}

.impact-micro-note {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    margin-top: 20px;
}

.impact-micro-note::before {
    content: "";
    flex: 0 0 28px;
    width: 28px;
    height: 1px;
    background: #e8c66b;
}

.impact-note {
    max-width: 920px;
    margin: 24px auto 0;
    color: #74685f;
    font-size: .92rem;
    font-style: italic;
    line-height: 1.65;
}

.hi-gallery {
    padding-block: clamp(76px, 8vw, 118px);
    background:
        radial-gradient(circle at 84% 12%, rgba(198, 148, 53, .12), transparent 30%),
        #f8f3e8;
}


.hi-gallery .hi-section-heading--center {
    max-width: 920px;
    margin-inline: auto;
    text-align: center;
}

.hi-gallery__grid {
    display: grid;
    grid-template-columns: 1.2fr .9fr .9fr;
    grid-template-rows: repeat(2, minmax(220px, 250px));
    gap: 14px;
    margin-top: clamp(34px, 5vw, 54px);
}

.hi-gallery__item {
    position: relative;
    overflow: hidden;
    min-height: 220px;
    border-radius: 22px;
    background: #ddd3c2;
    box-shadow: 0 16px 42px rgba(63, 45, 37, .08);
}

.hi-gallery__item:first-child {
    grid-row: 1 / 3;
}

.hi-gallery__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .55s ease;
}

.hi-gallery__item:hover img,
.hi-gallery__item:focus-visible img {
    transform: scale(1.035);
}

.hi-gallery__item span {
    position: absolute;
    inset: auto 0 0;
    padding: 56px 20px 18px;
    color: #fffaf2;
    background: linear-gradient(transparent, rgba(26, 20, 27, .8));
    font-family: var(--hi-serif);
    font-size: 1.18rem;
    font-weight: 600;
    line-height: 1.35;
}


#tradition-continuation {
    background:
        radial-gradient(circle at 50% 0%, rgba(198, 148, 53, .14), transparent 32%),
        linear-gradient(180deg, #fffaf2 0%, #f4ead7 100%);
}

#tradition-continuation .hi-prose {
    max-width: 960px !important;
    margin-inline: auto !important;
    color: #5f554e;
    font-size: clamp(1.02rem, 1.35vw, 1.12rem);
    line-height: 1.9;
    text-align: left !important;
}

#tradition-continuation .hi-prose p {
    text-align: left;
}

#tradition-continuation .hi-callout {
    position: relative;
    grid-column: 1 / -1;
    isolation: isolate;
    margin-top: 10px;
    padding: clamp(42px, 6vw, 76px) clamp(30px, 8vw, 110px);
    overflow: hidden;
    color: var(--hi-quote-ink);
    text-align: center;
    border: 1px solid var(--hi-quote-border);
    border-radius: 32px;
    background:
        radial-gradient(circle at 48% -18%, rgba(255, 255, 255, .88), transparent 44%),
        radial-gradient(circle at 10% 0%, rgba(221, 236, 240, .7), transparent 28%),
        var(--hi-quote-bg);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .84),
        0 28px 72px rgba(121, 43, 42, .1);
}

#tradition-continuation .hi-callout blockquote {
    font-size: clamp(1.55rem, 3vw, 2.75rem);
}

@media (max-width: 940px) {
    .impact-tabs {
        right: 22px;
        left: 22px;
        width: auto;
        max-width: none;
        transform: none;
    }

    .hi-gallery__grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 320px repeat(2, 220px);
    }

    .hi-gallery__item:first-child {
        grid-column: 1 / -1;
        grid-row: auto;
    }
}

@media (max-width: 640px) {
    .hi-testimonial-card {
        padding: 30px 22px;
        border-radius: 22px;
    }

    .hi-testimonial-body {
        font-size: 1rem;
        line-height: 1.78;
    }

    .hi-testimonial-author {
        align-items: flex-start;
    }

    .hi-impact,
    .hi-gallery {
        padding-block: 72px;
    }

    .hi-impact .hi-section-heading {
        text-align: left;
    }

    .hi-impact .hi-section-heading h2,
    .hi-gallery .hi-section-heading h2 {
        font-size: clamp(2rem, 10.5vw, 3rem);
    }

    .impact-intro {
        font-size: 1rem;
        line-height: 1.7;
    }

    .impact-stage {
        min-height: 700px;
        margin-top: 34px;
        border-radius: 20px;
        background: #2f2430;
    }

    .impact-tabs {
        top: 14px;
        right: 10px;
        left: 10px;
        gap: 7px;
        padding: 3px 10px 8px 2px;
    }

    .impact-tab {
        min-height: 40px;
        padding: 9px 13px;
        font-size: .68rem;
    }

    .impact-slide img {
        height: 47%;
        filter: saturate(.9) contrast(1.03) brightness(.92);
    }

    .impact-slide::after {
        background:
            linear-gradient(180deg, rgba(18, 13, 20, .18) 0%, rgba(20, 15, 22, .06) 32%, #2f2430 48%, #2f2430 100%),
            linear-gradient(90deg, rgba(18, 13, 20, .28) 0%, rgba(22, 16, 22, .04) 74%);
    }

    .impact-slide-content {
        top: calc(47% + 22px);
        bottom: auto;
        left: 22px;
        width: calc(100% - 44px);
        text-shadow: none;
    }

    .impact-number {
        font-size: clamp(3.2rem, 16vw, 4.4rem);
    }

    .impact-metrics {
        display: grid;
        grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
        gap: 12px;
    }

    .impact-metric + .impact-metric {
        padding-left: 12px;
    }

    .impact-metric .impact-number {
        font-size: clamp(2rem, 9.4vw, 2.85rem);
    }

    .impact-metric-label,
    .impact-micro-note {
        font-size: .66rem;
        letter-spacing: .03em;
    }

    .impact-slide-content h3 {
        font-size: clamp(1.5rem, 7vw, 1.95rem);
        line-height: 1.18;
    }

    .impact-slide-content p {
        font-size: 1rem;
        line-height: 1.55;
    }

    .impact-micro-note {
        align-items: flex-start;
        line-height: 1.45;
    }

    .impact-micro-note::before {
        flex-basis: 22px;
        width: 22px;
        margin-top: 7px;
    }

    .impact-note {
        font-size: .86rem;
        line-height: 1.58;
    }

    .hi-gallery .hi-section-heading--center {
        text-align: left;
    }

    .hi-gallery__grid {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(5, 250px);
        gap: 12px;
    }

    .hi-gallery__item:first-child {
        grid-column: auto;
    }

    #tradition-continuation .hi-prose,
    #tradition-continuation .hi-prose p {
        text-align: left !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hi-testimonial-slide,
    .hi-slider-btn,
    .hi-slider-dot,
    .impact-slide,
    .impact-slide img,
    .impact-tab,
    .hi-gallery__item img {
        transition: none;
    }
}


/* ==========================================================
   PHASE 2 — VISUAL CONSOLIDATION
   Supersedes the per-section gradient backgrounds, the heavy
   drop shadows and the asymmetric "leaf" image corners defined
   earlier in this file. One warm ground, one wash for three
   chapter breaks, one card recipe, one radius (+ a single
   signature leaf on the founder portrait).
   ========================================================== */

body.site {
    background: var(--bg);
}

/* one ground for every narrative section */
.hi-purpose,
.hi-mission,
.hi-bhaiyaji,
.hi-lineage,
.hi-wisdom-bridge,
.hi-yug,
.hi-karma,
.hi-gallery,
#tradition-continuation {
    background: var(--bg);
}

/* the wash — used only as a chapter break: the book, the place, the evidence */
.hi-sacred,
.hi-manidweep,
.hi-impact {
    background: var(--bg-wash);
}

/* retire the decorative blobs / graph-paper overlays */
.hi-hero::before,
.hi-karma::before,
.hi-impact::before,
.hi-profile__media::after {
    display: none !important;
}

/* one card recipe */
.hi-seva-card,
.hi-lineage .hi-profile,
.hi-testimonial-card,
.hi-mission__media,
.hi-profile__media,
.hi-yug__media,
.hi-manidweep__media {
    border-color: var(--rule);
    box-shadow: var(--shadow-md);
}

/* one radius everywhere… */
.hi-mission__media,
.hi-mission__media img,
.hi-profile__media,
.hi-profile__media img,
.hi-yug__media,
.hi-yug__media img,
.hi-manidweep__media,
.hi-manidweep__media img,
.hi-lineage .hi-profile,
.hi-callout,
.hi-seva-card,
.hi-gallery__item,
.hi-testimonial-card,
.hi-wisdom-quote,
.impact-stage,
.hi-knowledge-panel,
.hi-sadhna-focus,
.hi-hero__purpose {
    border-radius: var(--radius);
}

/* …except one signature: the founder portrait keeps a soft leaf */
.hi-profile--bhaiyaji .hi-profile__media {
    border-radius: var(--radius-leaf);
}
.hi-profile--bhaiyaji .hi-profile__media img {
    border-radius: 14px 14px 82px 14px;
}

/* softer hover — no lift, just a warm border */
.hi-seva-card:hover,
.hi-seva-card:focus-within {
    box-shadow: var(--shadow-md);
    border-color: var(--rule-strong);
    transform: none;
}

/* ---- trust-page: registration & transparency strip ---- */
.trust-docs {
    padding: clamp(44px, 6vw, 72px) 0;
    background: var(--bg-wash);
    border-top: 1px solid var(--rule);
}
.trust-docs .hi-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    column-gap: clamp(28px, 5vw, 64px);
    row-gap: 10px;
}
.trust-docs h2 {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    font-family: var(--font-head);
    font-size: clamp(1.4rem, 2.4vw, 1.85rem);
    color: var(--primary);
}
.trust-docs p {
    grid-column: 1;
    grid-row: 2;
    margin: 0;
    max-width: 68ch;
    font-size: 1rem;
    line-height: 1.75;
    color: var(--ink-body);
}
.trust-docs .hi-btn {
    grid-column: 2;
    grid-row: 1 / 3;
    align-self: center;
    justify-self: end;
    white-space: nowrap;
}
@media (max-width: 720px) {
    .trust-docs .hi-shell { grid-template-columns: 1fr; }
    .trust-docs .hi-btn {
        grid-column: 1;
        grid-row: auto;
        justify-self: start;
        margin-top: 8px;
    }
}

/* ---- in-page section nav (overview / chapter pages) ---------------- */
.page-nav {
    padding: 20px 0;
    border-block: 1px solid var(--rule);
    background: var(--bg-wash);
}
.page-nav__links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 10px;
}
.page-nav__label {
    width: 100%;
    margin: 0;
    text-align: center;
    font-size: .82rem;
    font-weight: 700;
    color: var(--ink-muted);
}
.page-nav__label::after { content: " \2193"; }
.page-nav__links a {
    flex: 0 0 auto;
    padding: 8px 15px;
    border: 1px solid var(--accent);
    border-radius: 999px;
    color: var(--accent);
    background: transparent;
    font-weight: 700;
    font-size: .92rem;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color .15s ease, color .15s ease;
}
.page-nav__links a:hover,
.page-nav__links a:focus-visible {
    background: var(--accent);
    color: #fff;
}
