/* Radio Ki Pathshala landing page — expressive studio treatment on the core palette */
.landing { background: var(--color-dark); }
.rk-nav { position: sticky; top: 0; z-index: 1030; background: rgba(18, 16, 17, .88); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(255, 255, 255, .08); }
.rk-nav-inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 72px; }
.rk-nav-brand img { height: 46px; width: auto; background: #fff; border-radius: 10px; padding: 4px 8px; }
.rk-nav-links { display: flex; gap: 1.6rem; }
.rk-nav-links a { color: #d9d0c8; font-size: .76rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.rk-nav-links a:hover { color: var(--color-accent); }
@media (max-width: 767.98px) { .rk-nav-links { display: none; } }

.rk-hero { position: relative; overflow: hidden; padding: 70px 0 100px; color: #fff; background: radial-gradient(ellipse at 80% 20%, rgba(122, 14, 44, .55), transparent 55%), var(--color-dark); }
.rk-wave-bg { position: absolute; inset: auto 0 0 0; height: 220px; opacity: .18; background: repeating-linear-gradient(90deg, var(--color-secondary) 0 2px, transparent 2px 9px); mask-image: linear-gradient(180deg, transparent, #000 60%); -webkit-mask-image: linear-gradient(180deg, transparent, #000 60%); clip-path: polygon(0 70%, 5% 40%, 10% 65%, 15% 20%, 20% 55%, 25% 35%, 30% 70%, 35% 10%, 40% 50%, 45% 30%, 50% 60%, 55% 15%, 60% 45%, 65% 25%, 70% 65%, 75% 35%, 80% 55%, 85% 20%, 90% 50%, 95% 35%, 100% 60%, 100% 100%, 0 100%); }
.rk-badges { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 1.6rem; }
.free-badge { display: inline-flex; align-items: center; gap: .45rem; background: var(--color-secondary); color: #1a1208; font-weight: 700; font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; padding: .5rem 1rem; border-radius: 999px; box-shadow: 0 0 0 6px rgba(201, 162, 74, .18); }
.rk-chip { display: inline-flex; align-items: center; gap: .4rem; border: 1px solid rgba(255, 255, 255, .22); color: #e9e1d9; font-size: .74rem; letter-spacing: .1em; text-transform: uppercase; padding: .45rem .9rem; border-radius: 999px; }
.rk-title { font-size: clamp(2.8rem, 1.2rem + 6.6vw, 6rem); line-height: .95; font-weight: 700; color: #fff; text-transform: uppercase; letter-spacing: -.02em; margin-bottom: 1.2rem; }
.rk-title span { color: var(--color-accent); font-style: italic; text-transform: none; font-weight: 600; display: inline-block; }
.rk-headline { font-family: var(--font-display); font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem); color: #fff; line-height: 1.3; margin-bottom: 1rem; }
.rk-headline em { color: var(--color-accent); }
.rk-lead { color: #cfc5bc; font-size: 1.05rem; max-width: 620px; margin-bottom: 1.8rem; }
.rk-info { display: flex; flex-wrap: wrap; gap: 1rem; margin-bottom: 1.4rem; }
.rk-info-item { display: flex; gap: .8rem; align-items: center; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12); border-radius: 14px; padding: .8rem 1.1rem; flex: 1 1 240px; }
.rk-info-item > .bi { font-size: 1.4rem; color: var(--color-accent); }
.rk-info-item small { display: block; font-size: .66rem; letter-spacing: .16em; text-transform: uppercase; color: #a89e95; }
.rk-info-item strong { color: #fff; font-weight: 600; font-size: .95rem; }
.rk-info-item .sep { color: #a89e95; font-weight: 400; margin: 0 .2rem; }
.rk-note { color: #e3c27e; font-size: .9rem; }
.rk-portrait { position: relative; margin: 0; border-radius: 28px; overflow: hidden; aspect-ratio: 4 / 5; background: var(--color-dark-2); border: 1px solid rgba(227, 194, 126, .3); box-shadow: 0 40px 90px -40px rgba(122, 14, 44, .9); }
.rk-portrait > img { width: 100%; height: 100%; object-fit: cover; }
.rk-portrait::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(18, 10, 13, .9)); }
.rk-portrait .ph-corner { top: 14px; bottom: auto; }
.rk-portrait figcaption { position: absolute; left: 1.4rem; bottom: 4.4rem; z-index: 2; }
.rk-portrait figcaption strong { display: block; font-family: var(--font-display); font-size: 1.6rem; color: #fff; }
.rk-portrait figcaption span { font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--color-accent); }
.rk-eq { position: absolute; left: 1.4rem; right: 1.4rem; bottom: 1.4rem; z-index: 2; height: 36px; display: flex; align-items: flex-end; gap: 4px; }
.rk-eq span { flex: 1; border-radius: 2px; background: var(--color-accent); animation: eq 1.1s ease-in-out infinite; height: 30%; }
.rk-eq span:nth-child(odd) { animation-delay: -.35s; } .rk-eq span:nth-child(3n) { animation-delay: -.7s; }

.rk-section { padding: 100px 0; }
.rk-light { background: #fff; }
.rk-cream { background: var(--color-background); }
.rk-dark { background: var(--color-dark); color: #e9e4df; }
.rk-dark p { color: #b9b1aa; }
.rk-head { max-width: 760px; margin-bottom: 3rem; }
.rk-sub { font-size: 1.05rem; }
.rk-mentor-photo { position: relative; border-radius: 24px; overflow: hidden; aspect-ratio: 4 / 5; background: var(--color-surface-alt); box-shadow: var(--shadow); }
.rk-mentor-photo::before { content: ''; position: absolute; inset: 14px; border: 1px solid rgba(255, 255, 255, .55); border-radius: 16px; z-index: 1; pointer-events: none; }
.rk-mentor-photo img { width: 100%; height: 100%; object-fit: cover; }
.rk-role { font-weight: 600; color: var(--color-secondary-dark); font-size: .9rem; letter-spacing: .04em; }
.cred-list { list-style: none; padding: 0; margin: 1.2rem 0; display: grid; gap: .7rem; }
.cred-list li { display: flex; gap: .8rem; align-items: flex-start; padding: .8rem 1rem; border: 1px solid var(--color-border); border-radius: 12px; font-size: .94rem; }
.cred-list .bi { color: var(--color-primary); font-size: 1.1rem; margin-top: .1rem; }
.rk-quote { font-family: var(--font-display); font-style: italic; font-size: 1.2rem; color: var(--color-primary); border-left: 3px solid var(--color-secondary); padding-left: 1rem; margin: 1.4rem 0 1.6rem; }
.rk-ac-logo { width: 240px; height: auto; background: #fff; border-radius: 14px; padding: 8px 14px; margin-bottom: 1.6rem; }
.rk-wave-line { display: flex; align-items: center; gap: 3px; height: 50px; margin-top: 1.6rem; }
.rk-wave-line span { flex: 1; max-width: 6px; background: var(--color-secondary); border-radius: 3px; height: 25%; animation: eq 1.6s ease-in-out infinite; }
.rk-wave-line span:nth-child(2n) { animation-delay: -.5s; } .rk-wave-line span:nth-child(3n) { animation-delay: -1s; } .rk-wave-line span:nth-child(5n) { animation-duration: 1.1s; }
.rk-wave-center { justify-content: center; margin: 0 auto 1.6rem; max-width: 420px; }
.rk-qa { display: grid; gap: 1rem; }
.rk-qa-item { background: var(--color-dark-2); border: 1px solid rgba(255, 255, 255, .1); border-radius: 16px; padding: 1.3rem 1.4rem; }
.rk-qa-item h3 { color: #fff; font-size: 1.1rem; display: flex; gap: .6rem; align-items: center; }
.rk-qa-item h3 .bi { color: var(--color-accent); }
.rk-qa-item p { margin: 0; font-size: .93rem; }

.rk-program { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
.rk-module { position: relative; border-radius: 20px; padding: 1.8rem 1.4rem; background: var(--color-background); border: 1px solid var(--color-border); overflow: hidden; transition: transform .3s var(--ease), box-shadow .3s; }
.rk-module:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
.rk-module:nth-child(2) { background: var(--color-primary); border-color: var(--color-primary); }
.rk-module:nth-child(4) { background: var(--color-dark); border-color: var(--color-dark); }
.rk-module:nth-child(2) h3, .rk-module:nth-child(4) h3 { color: #fff; }
.rk-module:nth-child(2) p, .rk-module:nth-child(4) p { color: #e3d6d0; }
.rk-module-n { position: absolute; right: 1rem; top: .6rem; font-family: var(--font-display); font-size: 3rem; color: var(--color-secondary); opacity: .35; line-height: 1; }
.rk-module-ic { width: 52px; height: 52px; border-radius: 14px; background: var(--color-secondary); color: #1a1208; display: grid; place-items: center; font-size: 1.4rem; margin-bottom: 1.2rem; }
.rk-module h3 { font-size: 1.15rem; color: var(--color-primary); }
.rk-module p { font-size: .9rem; margin: 0; }
@media (max-width: 1199.98px) { .rk-program { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767.98px) { .rk-program { grid-template-columns: 1fr; } }

.rk-benefits { list-style: none; padding: 0; margin: 0; counter-reset: b; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.rk-benefits li { counter-increment: b; display: flex; align-items: center; gap: 1rem; background: #fff; border: 1px solid var(--color-border); border-radius: 14px; padding: 1.1rem 1.2rem; font-weight: 500; color: var(--color-text); }
.rk-benefits li::before { content: counter(b, decimal-leading-zero); font-family: var(--font-display); font-size: 1.4rem; color: var(--color-primary); min-width: 2.2rem; }
@media (max-width: 575.98px) { .rk-benefits { grid-template-columns: 1fr; } }
.rk-outcome { height: 100%; border: 1px solid rgba(255, 255, 255, .12); border-radius: 18px; padding: 1.8rem 1.5rem; background: var(--color-dark-2); }
.rk-outcome .bi { font-size: 1.8rem; color: var(--color-accent); }
.rk-outcome p { color: #fff; font-family: var(--font-display); font-size: 1.15rem; margin: 1rem 0 0; }
.rk-disclaimer { font-size: .8rem; color: #8c847d !important; margin-top: 1.6rem; }

.video-card { border: 1px solid var(--color-border); border-radius: 18px; overflow: hidden; background: #fff; height: 100%; }
.video-body { padding: 1rem 1.2rem 1.2rem; }
.video-body h3 { font-size: 1.05rem; margin: 0; color: var(--color-primary); }
.video-body p { margin: .2rem 0 0; font-size: .85rem; }
.video-ph { aspect-ratio: 16 / 9; display: grid; place-items: center; align-content: center; gap: .4rem; background: repeating-linear-gradient(45deg, var(--color-surface-alt) 0 12px, #fff 12px 24px); color: var(--color-muted); font-size: .85rem; }
.video-ph .bi { font-size: 2.6rem; color: var(--color-primary); opacity: .5; }

.rk-register { background: radial-gradient(ellipse at 10% 10%, rgba(122, 14, 44, .55), transparent 55%), var(--color-dark); color: #fff; }
.rk-register-aside { position: sticky; top: 100px; }
.rk-register-aside p { color: #cfc5bc; }
.rk-aside-list { list-style: none; padding: 0; margin: 1.4rem 0 0; display: grid; gap: .8rem; }
.rk-aside-list li { display: flex; gap: .7rem; align-items: flex-start; color: #e9e1d9; font-size: .92rem; }
.rk-aside-list .bi { color: var(--color-accent); margin-top: .15rem; }
.rk-form { border: 0; }
.req-note { font-size: .8rem; color: var(--color-muted); margin-bottom: 1rem; }
.session-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.session-opt { position: relative; cursor: pointer; }
.session-opt input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.session-opt span { display: flex; align-items: center; justify-content: center; gap: .5rem; min-height: 56px; border: 1.5px solid var(--color-border); border-radius: 14px; font-weight: 600; font-size: .95rem; color: var(--color-text); transition: background-color .2s, border-color .2s, color .2s; text-align: center; padding: .6rem; }
.session-opt input:checked + span { background: var(--color-primary); border-color: var(--color-primary); color: #fff; }
.session-opt input:focus-visible + span { outline: 3px solid var(--color-secondary); outline-offset: 2px; }
fieldset.is-invalid .session-opt span { border-color: #b42318; }
@media (max-width: 420px) { .session-options { grid-template-columns: 1fr; } }
.declaration { background: #fff8e5; border: 1.5px solid #e6c46a; border-radius: 14px; padding: 1.1rem 1.2rem; }
.decl-text { color: #5a3d00; font-weight: 600; margin-bottom: .8rem; display: flex; gap: .6rem; }
.decl-text .bi { color: #b45309; font-size: 1.2rem; }
.declaration .form-check-input { width: 1.25rem; height: 1.25rem; margin-top: .15rem; border: 1.5px solid #9a7424; }
.declaration .form-check-input:checked { background-color: var(--color-primary); border-color: var(--color-primary); }
.declaration .form-check-label { color: var(--color-text); font-size: .93rem; padding-left: .3rem; }
.declaration.is-invalid { border-color: #b42318; }
.rk-form .btn-submit { padding: 1.15rem; font-size: .92rem; }
.form-privacy { font-size: .78rem; color: var(--color-muted); text-align: center; margin: .8rem 0 0; }
.rk-success { background: #fff; color: var(--color-text); border-radius: 22px; padding: 2.6rem; text-align: center; box-shadow: var(--shadow); }
.rk-success[hidden] { display: none; }
.rk-success .bi { font-size: 3.2rem; color: #15803d; }
.rk-success h3 { font-size: 1.8rem; color: var(--color-primary); margin-top: .8rem; }
.rk-success p { font-size: 1.05rem; }

.rk-faq-wrap { max-width: 900px; }
.rk-accordion .accordion-item { border: 1px solid var(--color-border); border-radius: 14px !important; margin-bottom: .8rem; overflow: hidden; }
.rk-accordion .accordion-button { font-family: var(--font-display); font-weight: 600; font-size: 1.08rem; color: var(--color-text); padding: 1.2rem 1.4rem; }
.rk-accordion .accordion-button:not(.collapsed) { background: var(--color-background); color: var(--color-primary); box-shadow: none; }
.rk-accordion .accordion-button:focus { box-shadow: 0 0 0 3px rgba(201, 162, 74, .5); }
.rk-accordion .accordion-body { color: var(--color-muted); padding: 0 1.4rem 1.3rem; background: var(--color-background); }

.rk-final { background: var(--color-primary); color: #fff; padding: 100px 0; }
.rk-final .rk-wave-line span { background: var(--color-accent); }
.rk-final-title { font-size: clamp(2rem, 1.2rem + 3vw, 3.4rem); color: #fff; line-height: 1.12; max-width: 900px; margin: 0 auto 1rem; }
.rk-final-title em { color: var(--color-accent); }
.rk-final p { color: #f0d9df; max-width: 620px; margin: 0 auto 2rem; }
.rk-footer { background: #0b0a0a; padding: 40px 0 110px; text-align: center; color: #8c847d; font-size: .85rem; }
.rk-footer-brand { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .9rem; margin-bottom: 1rem; }
.rk-footer-brand img { height: 48px; width: auto; background: #fff; border-radius: 8px; padding: 4px 6px; }
.rk-footer a { color: #d6cec6; }
.rk-footer-links { margin-bottom: .4rem; }

.rk-sticky { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 1020; display: none; align-items: center; justify-content: space-between; gap: .8rem; background: var(--color-dark); border: 1px solid rgba(227, 194, 126, .4); border-radius: 16px; padding: .6rem .6rem .6rem 1rem; color: #fff; box-shadow: 0 20px 40px -12px rgba(0, 0, 0, .6); transform: translateY(150%); transition: transform .35s var(--ease); }
.rk-sticky strong { display: block; font-size: .85rem; color: #fff; }
.rk-sticky small { color: #b9b1aa; font-size: .72rem; }
.rk-sticky-btn { background: var(--color-secondary); color: #1a1208; font-weight: 700; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; padding: .75rem 1rem; border-radius: 12px; white-space: nowrap; }
.rk-sticky.is-visible { transform: none; }
@media (max-width: 991.98px) { .rk-sticky { display: flex; } .rk-register-aside { position: static; } }
.consent-bar { bottom: 84px; }
@media (min-width: 992px) { .consent-bar { bottom: 16px; } }
@media (max-width: 575.98px) {
  .rk-hero { padding: 40px 0 70px; }
  .rk-section { padding: 70px 0; }
  .rk-success { padding: 1.8rem 1.2rem; }
}
