:root{--pc-green:#1d4038;--pc-gold:#b58a45;--pc-paper:#f7f4ec;--pc-ink:#273a34}body{background:var(--pc-paper)}.topbar{background:#faf8f1}.brand{color:var(--pc-green)}.brand-mark{background:#eae2cb!important;color:var(--pc-green)!important}.brand small{font-size:9px;letter-spacing:1.2px}.pc-nav{display:flex;gap:23px;align-items:center;max-width:1160px;margin:auto;padding:17px 0;overflow-x:auto;white-space:nowrap;border-bottom:1px solid #ddd9cb;font-size:13px}.pc-nav a{text-decoration:none;color:#536159}.pc-nav a.active{color:var(--pc-green);font-weight:700;border-bottom:2px solid var(--pc-gold);padding-bottom:5px}.pc-nav a:last-child{margin-left:auto}body:has(.pc-hero) main{padding-top:24px}.pc-hero{display:grid;grid-template-columns:1.18fr 1fr;background:#ece8d9;border-radius:4px;overflow:hidden;min-height:555px}.pc-hero-copy{padding:50px 48px 24px;display:flex;flex-direction:column;align-items:flex-start}.pc-kicker{font-size:11px;letter-spacing:1.4px;color:#64715c;font-weight:700}.pc-hero h1{font-family:Georgia,'Nirmala UI',serif;font-size:72px;line-height:1.28;color:var(--pc-green);font-weight:500;letter-spacing:-2px;margin:25px 0 15px}.pc-hero h1 span{color:#9c713e}.pc-hero p{font-size:17px;line-height:1.95;color:#5d685d;max-width:460px}.pc-buttons{display:flex;gap:23px;align-items:center;flex-wrap:wrap;margin:15px 0 32px}.pc-quiet,.pc-more{color:var(--pc-green);font-size:13px;font-weight:700;text-decoration:none}.pc-hero .button,.pc-story-band .button,.pc-filter-row>.button,.pc-form .button{background:var(--pc-green);border-color:var(--pc-green);color:#fffaf0}.pc-hero-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #cec9b6;width:100%;padding-top:18px;margin-top:auto;font-size:10px;color:#7c8270;letter-spacing:.5px}.pc-hero-art{position:relative;min-width:0;display:flex;background:#1d3a33;align-items:center;justify-content:center}.pc-hero-art img{width:100%;height:100%;object-fit:cover;max-height:650px}.pc-hero-art>span{position:absolute;bottom:25px;left:0;width:100%;text-align:center;font-size:11px;color:#dbc58a;letter-spacing:.5px}.pc-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid #dad7c9;margin:24px 0 0;border-radius:4px;background:#fffdf8}.pc-link{display:flex;align-items:center;gap:13px;padding:25px 20px;border-right:1px solid #dedaca;text-decoration:none;color:var(--pc-green);font-size:14px}.pc-link:last-child{border-right:0}.pc-link>span{font-size:28px;color:#997741}.pc-link>b{margin-left:auto;font-weight:400}.pc-section{margin:58px 0}.pc-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 25px}.pc-section-head h1{color:var(--pc-green);font-size:40px;margin:15px 0}.pc-section-head h2,.pc-story-band h2,.pc-heritage-preview h2{color:var(--pc-green);font-size:28px;line-height:1.6;margin:12px 0}.pc-section-head p{color:#6b7367;max-width:700px}.pc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.pc-card{background:#fffdf8;border:1px solid #dfdbcf;border-radius:5px;overflow:hidden}.pc-card-body{padding:24px}.pc-card h3{font-size:20px;line-height:1.65;margin:14px 0}.pc-card h3 a{color:var(--pc-green);text-decoration:none}.pc-card h2{font-size:24px}.pc-card p{line-height:1.9;color:#667063}.pc-cover{width:100%;height:200px;object-fit:cover}.pc-tag{font-size:10px;letter-spacing:.5px;text-transform:uppercase;background:#eee9d9;color:#80663b;padding:5px 9px;border-radius:3px;display:inline-block}.pc-empty{border:1px dashed #c7c5b6;background:#eeede3;text-align:center;padding:30px;border-radius:4px;color:#576451}.pc-empty>span{font-size:28px;color:#aa884d}.pc-empty h3{font-size:20px;margin:10px}.pc-empty p{font-size:13px;color:#777c6a}.pc-story-band{background:#e5e8dc;border:1px solid #d4dbc9;display:flex;align-items:center;gap:28px;padding:35px;margin:48px 0;border-radius:4px}.pc-story-band>div{flex:1}.pc-story-band p{font-size:14px;line-height:1.9;color:#5c6c5b}.pc-seal{display:flex;align-items:center;justify-content:center;font-size:60px;border:1px solid #afba9b;border-radius:50%;width:100px;height:100px;flex-shrink:0;color:#6e805e}.pc-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pc-feature-grid>a{padding:30px 25px;border:1px solid #dcd7c8;background:#f1edde;border-radius:4px;color:var(--pc-green);text-decoration:none;position:relative}.pc-feature-grid>a:nth-child(2){background:#efe5df}.pc-feature-grid>a:nth-child(3){background:#e6e9df}.pc-feature-grid span{font-size:30px;color:#9d7b4a}.pc-feature-grid h3{font-size:21px;line-height:1.7}.pc-feature-grid p{font-size:14px;line-height:1.9;color:#6c7165}.pc-feature-grid b{font-size:23px}.pc-heritage-preview{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #d9d4c5;padding-top:40px}.pc-heritage-preview p{font-size:15px;line-height:2;color:#6d7366}.pc-heritage-preview blockquote{font-family:Georgia,'Nirmala UI',serif;font-size:25px;line-height:1.9;color:#a1834e;border-left:1px solid #c4b287;padding-left:30px;margin:25px 0}.pc-person-story{padding:30px}.pc-initial{display:flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:50%;background:#e6e8dd;color:var(--pc-green);font:22px Georgia,serif}.pc-filter-row{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:25px 0}.pc-filter-row form{display:flex;align-items:end;gap:10px}.pc-filter-row label{margin:0}.pc-submit-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:45px}.pc-form{max-width:none}.pc-form label,.pc-review label{margin-bottom:20px}.check{display:flex!important;align-items:start;gap:9px;font-size:13px;line-height:1.9}.check input{width:18px!important;height:18px;flex-shrink:0;margin-top:4px}.pc-form-aside{padding:30px;color:#65745e}.pc-form-aside>span{font:14px Georgia,serif;color:#a58b54;letter-spacing:7px}.pc-form-aside h2{font-size:40px;line-height:1.8;color:var(--pc-green)}.pc-form-aside p{font-size:14px;line-height:2}.pc-detail{max-width:950px;margin:auto}.pc-detail h1{font-size:38px;line-height:1.7;color:var(--pc-green);overflow-wrap:anywhere}.pc-prose{white-space:pre-wrap;line-height:2;overflow-wrap:anywhere}.pc-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:25px}.pc-gallery img{width:100%;height:300px;object-fit:contain;background:#e9e7df}.pc-submission{padding:22px;display:flex;justify-content:space-between;border-bottom:1px solid #ddd6c6;text-decoration:none;color:var(--pc-green)}.pc-response{border-top:1px solid #ddd6c6;padding:12px 0}.pc-review{margin:18px 0}.pc-footer{display:flex;justify-content:space-between;gap:20px}.pc-footer small{max-width:440px;line-height:1.9}body:has(.pc-hero) .main-nav{display:none}@media(max-width:1100px){.pc-nav{margin:0 25px}.pc-hero-copy{padding:35px 28px 22px}.pc-hero h1{font-size:60px}.pc-link{padding:20px 12px;font-size:12px;gap:9px}.pc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-story-band{flex-wrap:wrap}.pc-hero-bottom{font-size:8px}}@media(max-width:700px){.pc-nav{margin:0 18px;gap:22px;font-size:12px;padding:13px 0}.pc-hero{grid-template-columns:1fr}.pc-hero-copy{padding:30px 25px}.pc-hero h1{font-size:55px;margin-top:20px}.pc-hero p{font-size:15px}.pc-hero-art{height:300px}.pc-hero-art img{object-position:center 42%}.pc-hero-art>span{bottom:16px}.pc-shortcuts{grid-template-columns:1fr 1fr}.pc-link{padding:18px;border-bottom:1px solid #dedaca}.pc-link:nth-child(2){border-right:0}.pc-link:nth-child(n+3){border-bottom:0}.pc-section{margin:36px 0}.pc-section-head{align-items:start}.pc-section-head h1{font-size:30px}.pc-section-head h2,.pc-story-band h2,.pc-heritage-preview h2{font-size:23px}.pc-section-head>a{white-space:nowrap;font-size:11px;margin-top:18px}.pc-grid,.pc-feature-grid,.pc-heritage-preview,.pc-submit-layout{grid-template-columns:1fr;gap:18px}.pc-story-band{padding:24px;gap:18px}.pc-seal{width:65px;height:65px;font-size:40px}.pc-story-band>div{min-width:180px}.pc-story-band>.button{width:100%}.pc-heritage-preview blockquote{font-size:21px}.pc-filter-row{align-items:stretch;flex-direction:column}.pc-filter-row form{width:100%}.pc-filter-row label{flex:1;min-width:0}.pc-form-aside{display:none}.pc-detail h1{font-size:28px}.pc-gallery{grid-template-columns:1fr}.pc-gallery img{height:auto;max-height:380px}.pc-submission,.pc-footer{flex-direction:column}.pc-kicker{font-size:10px}.pc-hero-bottom{gap:10px;width:100%}.pc-hero-bottom span{font-size:8px}}@media print{.pc-nav,.pc-shortcuts,.pc-buttons{display:none}}
.pc-hero {
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
}
.pc-hero-art {
  flex-direction: column;
  gap: 8px;
  height: auto;
  padding: 10px;
  background: inherit;
}
.pc-hero-art img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 540px;
  object-fit: contain;
  border-radius: 6px;
}
.pc-hero-art > span {
  position: static;
  color: #554320;
  line-height: 1.5;
}
@media (max-width: 700px) {
  .pc-hero { grid-template-columns: minmax(0, 1fr); }
  .pc-hero-art img { max-height: 440px; }
}.pc-hero-art { position: relative; padding: 0; overflow: hidden; }
.pc-hero-art img { position: absolute; inset: 0; width: 100%; height: 100%; max-height: none; object-fit: cover; object-position: center; border-radius: 0; }
.pc-hero-art > span { position: absolute; inset: auto 0 0; padding: 20px 10px 10px; color: #fff8e4; background: linear-gradient(transparent, rgba(23, 34, 23, .8)); }
@media (max-width: 700px) { .pc-hero-art { aspect-ratio: 1; } .pc-hero-art img { max-height: none; } }
.portal-logo { display: block; width: 54px; height: 54px; flex: 0 0 54px; object-fit: contain; border-radius: 8px; }
img[src="assets/krishna-teaching-square.png"] { transform: scaleX(-1); }
@font-face {
  font-family: "Tiro Telugu";
  src: url("TiroTelugu-Regular.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
}
[lang="te"] .brand > span,
[lang="te"] .pc-hero h1 {
  font-family: "Tiro Telugu", "Nirmala UI", serif;
  font-weight: 400;
  letter-spacing: normal;
}
[lang="te"] .brand small {
  font-family: "Nirmala UI", sans-serif;
}

.member-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
}
.top-actions .member-actions .button {
    min-height: 40px;
    padding: .45rem .8rem;
    font-size: .875rem;
}
.member-login { margin-inline: auto; }
@media (max-width: 700px) {
    .top-inner, .top-actions { flex-wrap: wrap; }
}

.pc-nav {
    overflow: visible;
    white-space: normal;
    flex-wrap: wrap;
    gap: 12px 18px;
    padding-block: 12px;
}
.pc-nav-links {
    display: contents;
}
.pc-nav-links > a {
    padding-block: 6px;
    white-space: nowrap;
}
.pc-nav a:last-child {
    margin-left: 0;
}
.pc-nav-tools {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 16px;
    max-width: 100%;
    margin-inline-start: auto;
}
.pc-nav .pc-nav-dropdown {
    position: relative;
    margin: 0;
    padding: 0;
    border: 0;
}
.pc-nav .pc-nav-dropdown > summary {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 36px;
    margin: 0;
    padding: 0;
    list-style: none;
    color: #536159;
    font: inherit;
    white-space: nowrap;
}
.pc-nav .pc-nav-dropdown > summary::-webkit-details-marker {
    display: none;
}
.pc-nav .pc-nav-dropdown > summary:hover,
.pc-nav .pc-nav-dropdown > summary.is-active {
    color: var(--pc-green);
}
.pc-nav-menu {
    position: absolute;
    z-index: 30;
    inset-inline-end: 0;
    top: calc(100% + 8px);
    min-width: 215px;
    max-width: calc(100vw - 36px);
    padding: 8px;
    border: 1px solid #dfd6c4;
    border-radius: 12px;
    background: #fffdf8;
    box-shadow: 0 12px 30px #243e301a;
}
.pc-nav-menu > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 7px;
}
.pc-nav-menu > a:hover,
.pc-nav-menu > a:focus-visible {
    background: #f1eddf;
}
.pc-nav .pc-help-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid #d9ccb1;
    border-radius: 50%;
    color: var(--pc-green);
    background: #f5f0e3;
}
.pc-nav .pc-help-icon:hover,
.pc-nav .pc-help-icon.is-active {
    background: #e9e5d7;
    border-color: #b49359;
}
.pc-nav-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 19px;
    height: 19px;
    padding-inline: 4px;
    border-radius: 10px;
    background: #e9dfc8;
    color: #5c4928;
    font-size: 11px;
}
.pc-nav summary:focus-visible,
.pc-nav a:focus-visible {
    outline: 2px solid #ad8b4a;
    outline-offset: 4px;
}
@media (max-width: 700px) {
    .pc-nav-links {
        flex-basis: 100%;
        gap: 7px 16px;
    }
    .pc-nav-tools {
        gap: 10px 18px;
    }
}
@media print {
    .pc-nav { display: none; }
}

.top-actions {
    gap: 14px;
    margin-inline-start: auto;
}
.top-actions .languages {
    align-self: center;
    flex-shrink: 0;
    height: 42px;
    border-color: #d9d2c2;
    border-radius: 10px;
    background: #fffdf8;
}
.top-actions .languages a {
    min-width: 68px;
    min-height: 0;
    height: 40px;
    padding: 0 12px;
    font-size: 13px;
    line-height: 1;
    text-decoration: none;
    color: #55665c;
}
.top-actions .languages a.active {
    color: #fffdf8;
    background: var(--pc-green);
}
.header-account-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}
.top-actions .member-actions {
    margin: 0;
}
.top-actions .button,
.top-actions .member-actions .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 14px;
    border-radius: 10px;
    font-size: 13px;
    line-height: 1.4;
    white-space: nowrap;
}
.top-actions .header-account-button {
    color: #365348;
    background: #fffdf8;
    border: 1px solid #d9d2c2;
    box-shadow: 0 1px 2px #30443606;
}
.top-actions .header-account-button:hover {
    border-color: #b7aa8d;
    background: #eee9dc;
}
.header-account-button svg {
    flex-shrink: 0;
}
.top-actions a:focus-visible,
.top-actions button:focus-visible {
    outline: 2px solid #ad8b4a;
    outline-offset: 3px;
}
@media (max-width: 700px) {
    .top-actions {
        gap: 10px;
    }
}
@media (max-width: 480px) {
    .top-inner > .brand {
        flex-basis: 100%;
    }
    .top-actions {
        width: 100%;
        justify-content: space-between;
        gap: 10px;
    }
    .top-actions .button,
    .top-actions .member-actions .button {
        padding-inline: 11px;
        font-size: 12px;
    }
}

.registration-form input[aria-invalid="true"],
.registration-form select[aria-invalid="true"] {
    border-color: #b33b36;
    background: #fff6f3;
    box-shadow: 0 0 0 2px #b33b3617;
}
.registration-form input[aria-invalid="true"]:focus {
    outline-color: #b33b36;
    border-color: #b33b36;
}
.registration-field-error {
    margin: 4px 0 12px;
    color: #a72e2a;
    font-size: 13px;
    line-height: 1.5;
}
.registration-form > label {
    margin-top: 14px;
    margin-bottom: 6px;
}

#member-registration {
    max-width: 940px;
    margin-inline: auto;
    padding: clamp(22px, 4vw, 40px);
    background: #fffdf8;
    border-color: #e2d9c8;
    border-radius: 18px;
    box-shadow: 0 10px 35px #273d3008;
}
.registration-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 22px 26px;
}
.registration-field {
    min-width: 0;
}
.registration-wide {
    grid-column: 1 / -1;
}
#member-registration .registration-field label {
    margin: 0 0 8px;
    color: #2c4b3f;
    font-size: 14px;
    font-weight: 600;
}
#member-registration .registration-field input,
#member-registration .registration-field select,
#member-registration .registration-field textarea {
    display: block;
    width: 100%;
    min-height: 48px;
    padding: 11px 14px;
    border-color: #d7cdbb;
    border-radius: 9px;
    background: #fff;
    font-size: 15px;
}
#member-registration .registration-field textarea {
    min-height: 92px;
}
#member-registration .registration-field small {
    display: block;
    margin-top: 7px;
    color: #718074;
    font-size: 12px;
}
#member-registration .registration-field [aria-invalid="true"] {
    border-color: #b33b36;
    background: #fff6f3;
}
.registration-declaration {
    margin-top: 28px;
    padding: 18px;
    border: 1px solid #e3dccb;
    border-radius: 10px;
    background: #f3f1e7;
}
#member-registration .registration-declaration label {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
    color: #43594c;
}
#member-registration .registration-declaration input {
    width: 20px;
    height: 20px;
    margin-top: 3px;
    accent-color: #244d3f;
}
.registration-privacy {
    color: #778277;
    font-size: 12px;
    line-height: 1.7;
    margin: 14px 0 22px;
}
#member-registration .registration-submit {
    display: flex;
    justify-content: flex-end;
}
#member-registration .registration-submit button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    min-height: 48px;
    padding-inline: 24px;
    border-radius: 9px;
    background: #244d3f;
    border-color: #244d3f;
    font-size: 15px;
}
#member-registration .registration-submit button:hover {
    background: #193d31;
}
@media (max-width: 600px) {
    .registration-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }
    #member-registration .registration-submit button {
        width: 100%;
    }
}

.header-member-identity{display:flex;align-items:center;gap:9px;padding:5px 13px 5px 0;color:#2b4c3b;min-width:0}.header-member-avatar{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border:1px solid #d9d8c4;border-radius:50%;background:#edf0e4;color:#7d805d}.header-member-identity small{display:block;font-size:10px;line-height:1.6;color:#87806a}.header-member-identity strong{display:block;font-size:14px;line-height:1.6;font-weight:700;max-width:200px;overflow-wrap:anywhere}.header-account-actions{flex-wrap:wrap}.top-inner{gap:20px}.top-actions{flex-wrap:wrap}@media(max-width:700px){.header-member-identity{padding-right:5px}.header-member-identity strong{max-width:180px}.header-account-actions{justify-content:flex-start}}

.password-visibility{display:inline-block;cursor:pointer;border:0;background:transparent;color:#365b43;font-size:13px;text-decoration:underline;padding:6px 0;margin:0 0 14px}.password-visibility:focus-visible{outline:2px solid #a4884d;outline-offset:3px}
