:root {
    --krish-bg: #050412;
    --krish-surface: rgba(12, 10, 28, 0.65);
    --krish-surface-strong: rgba(12, 10, 28, 0.85);
    --krish-highlight: #58668c;
    --krish-highlight-soft: rgba(88, 102, 140, 0.25);
    --krish-text: #f6f5ff;
    --krish-text-muted: rgba(246, 245, 255, 0.72);
    --krish-border: rgba(255, 255, 255, 0.08);
    --krish-shadow: 0 35px 80px rgba(5, 8, 18, 0.45);
    --krish-ease-smooth: cubic-bezier(0.16, 1, 0.3, 1);
    --krish-ease-subtle: cubic-bezier(0.22, 1, 0.36, 1);
    --krish-transition-fast: 0.45s;
    --krish-transition-medium: 0.7s;
    --krish-transition-slow: 1.1s;
}

html,
body {
    margin: 0;
}

.krish-immersive {
    --krish-active-accent: var(--krish-highlight);
    --krish-active-accent-strong: #9aa7c8;
    --krish-btn-shadow: rgba(88, 102, 140, 0.32);
    --krish-btn-shadow-strong: rgba(88, 102, 140, 0.48);
    --krish-progress-shell: linear-gradient(180deg, rgba(10, 16, 28, 0.75) 0%, rgba(8, 14, 24, 0.32) 100%);
    --krish-progress-track: rgba(88, 102, 140, 0.2);
    --krish-progress-active-gradient: linear-gradient(135deg, var(--krish-active-accent) 0%, var(--krish-active-accent-strong) 100%);
    --krish-cta-gradient: linear-gradient(135deg, var(--krish-active-accent) 0%, var(--krish-active-accent-strong) 100%);
    --krish-gradient-background: var(--krish-bg);
    --krish-section-glow: rgba(88, 102, 140, 0.22);
    --krish-progress-fg: rgba(220, 228, 236, 0.88);
    --krish-nav-bg: rgba(8, 12, 20, 0.72);
    --krish-nav-border: rgba(255, 255, 255, 0.08);
}

html.krish-immersive-active,
body.krish-immersive-active {
    height: 100%;
    overflow: hidden;
    background: var(--krish-bg);
}

body.krish-immersive-active #footer,
body.krish-immersive-active .ct-header,
body.krish-immersive-active .site-header {
    display: none !important;
}

body.krish-immersive-active .entry-content > :not(.krish-immersive) {
    display: none !important;
}

body.krish-immersive-active .site-main {
    padding-top: 0;
    padding-bottom: 0;
}

body.krish-immersive-active .site-main > * {
    margin-top: 0 !important;
}

body.krish-immersive-active #page,
body.krish-immersive-active .site {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

html.krish-immersive-active {
    scroll-behavior: smooth;
}

/* Base immersive scaffold */
.krish-immersive {
    position: relative;
    min-height: 100vh;
    height: 100vh;
    background: var(--krish-gradient-background, var(--krish-bg));
    color: var(--krish-text);
    font-family: "Manrope", "Inter", "Helvetica Neue", Arial, sans-serif;
    transition: background var(--krish-transition-slow) var(--krish-ease-smooth),
                color var(--krish-transition-medium) linear;
    isolation: isolate;
    overflow: hidden;
}

.krish-immersive__scroller {
    scroll-snap-type: y mandatory;
    height: 100vh;
    overflow-y: auto;
    overflow-x: hidden;
    perspective: 1200px;
    scroll-behavior: smooth;
    overscroll-behavior-y: contain;
    width: 100%;
}

.krish-snap {
    position: relative;
    min-height: 100vh;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    display: grid;
    align-items: center;
    padding: clamp(4rem, 6vw, 8rem) clamp(3.5rem, 6vw, 7rem);
    isolation: isolate;
    background-color: rgba(6, 10, 22, 0.62);
    opacity: 0;
    transform: translate3d(0, 6vh, 0) scale(0.97);
    transition: opacity calc(var(--krish-transition-medium) + 0.15s) var(--krish-ease-smooth),
                transform calc(var(--krish-transition-slow) + 0.1s) cubic-bezier(0.2, 0.9, 0.2, 1),
                background-color calc(var(--krish-transition-medium) + 0.25s) var(--krish-ease-subtle);
    will-change: transform, opacity;
}

.krish-snap::before {
    content: '';
    position: absolute;
    inset: -8%;
    background: var(--krish-section-gradient, radial-gradient(circle at 18% 22%, rgba(88, 102, 140, 0.22), transparent 62%));
    border-radius: clamp(28px, 5vw, 68px);
    filter: saturate(1.1);
    opacity: 0;
    transform: scale(1.05);
    transition: opacity calc(var(--krish-transition-medium) + 0.1s) var(--krish-ease-smooth),
                transform calc(var(--krish-transition-slow) + 0.3s) cubic-bezier(0.2, 0.9, 0.2, 1),
                filter 0.9s ease;
    pointer-events: none;
    box-shadow: none;
    z-index: -2;
}

.krish-snap::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 50% 18%, rgba(255, 255, 255, 0.16), transparent 65%);
    opacity: 0;
    transition: opacity var(--krish-transition-medium) var(--krish-ease-subtle);
    pointer-events: none;
    mix-blend-mode: screen;
    z-index: -2;
}

.krish-icon-swarm {
    position: fixed;
    inset: 0;
    z-index: 60;
    pointer-events: none;
    overflow: visible;
    grid-area: 1 / 1 / -1 / -1;
}

.krish-icon-layer {
    position: fixed;
    inset: 0;
    pointer-events: none;
    overflow: visible;
    z-index: 60;
}

.krish-icon-layer .krish-icon-swarm__item {
    pointer-events: auto;
}

.krish-icon-swarm__item {
    position: absolute;
    left: calc(50% + var(--orbit-base-x, 0) * 1%);
    top: calc(50% + var(--orbit-base-y, 0) * 1%);
    --orbit-tilt-x: 0deg;
    --orbit-tilt-y: 0deg;
    --orbit-tilt-glow: 0;
    --orbit-bridge: 0px;
    transform: perspective(520px)
               translate3d(var(--orbit-offset-x, 0px), calc(var(--orbit-offset-y, 0px) + var(--orbit-bridge, 0px)), 0)
               rotateX(var(--orbit-tilt-x, 0deg))
               rotateY(var(--orbit-tilt-y, 0deg))
               rotate(var(--orbit-rotate, 0deg))
               scale(var(--orbit-scale, 1));
    transform-style: preserve-3d;
    font-size: clamp(2.75rem, 4.25vw, 5rem);
    color: rgba(255, 255, 255, 0.18);
    opacity: 0.35;
    filter: drop-shadow(0 12px 28px rgba(5, 4, 18, 0.55));
    mix-blend-mode: screen;
    will-change: transform, opacity, filter;
    pointer-events: auto;
    transition: transform calc(var(--krish-transition-medium) + 0.16s) var(--krish-ease-smooth),
                color calc(var(--krish-transition-medium) + 0.12s) var(--krish-ease-smooth),
                opacity calc(var(--krish-transition-medium) + 0.08s) var(--krish-ease-subtle),
                filter calc(var(--krish-transition-fast) + 0.14s) var(--krish-ease-smooth),
                text-shadow calc(var(--krish-transition-medium) + 0.14s) var(--krish-ease-smooth);
    text-shadow: 0 14px 36px rgba(7, 10, 24, 0.48);
}

.krish-icon-swarm__item::after {
    content: '';
    position: absolute;
    inset: -46%;
    background: radial-gradient(circle at 50% 50%,
        color-mix(in srgb, var(--krish-active-accent, #58668c) 65%, transparent) 0%,
        transparent 72%);
    opacity: calc(var(--orbit-tilt-glow, 0) * 0.7);
    transform: translateZ(-20px);
    transition: opacity calc(var(--krish-transition-medium) + 0.18s) var(--krish-ease-smooth);
    pointer-events: none;
}

.krish-snap.krish-in-view .krish-icon-swarm__item {
    color: var(--krish-active-accent);
    color: color-mix(in srgb, var(--krish-active-accent) 70%, #ffffff 30%);
}

.krish-icon-swarm__item.is-hovered {
    opacity: 0.92;
    color: var(--krish-active-accent);
    filter: drop-shadow(0 20px 36px rgba(12, 20, 42, 0.58));
    text-shadow: 0 20px 52px rgba(10, 16, 32, 0.62);
}

.krish-icon--spin.is-hovered {
    filter: drop-shadow(0 26px 44px rgba(12, 20, 42, 0.6)) hue-rotate(25deg);
}

.krish-icon--sway.is-hovered {
    filter: drop-shadow(0 26px 44px rgba(12, 20, 42, 0.55)) saturate(1.3);
}

.krish-icon--blink.is-hovered {
    filter: drop-shadow(0 28px 50px rgba(18, 28, 54, 0.65)) brightness(1.2);
}

.krish-icon--burst.is-hovered {
    color: color-mix(in srgb, var(--krish-active-accent) 60%, #ffffff 40%);
    filter: drop-shadow(0 30px 58px rgba(18, 32, 62, 0.7));
}

.krish-icon--stripe.is-hovered {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.16) 0%, transparent 45%);
    mix-blend-mode: screen;
    filter: drop-shadow(0 32px 60px rgba(20, 36, 68, 0.7));
}

.krish-snap__inner {
    position: relative;
    z-index: 1;
    width: min(1080px, 90vw);
    margin: 0 auto;
    display: grid;
    gap: clamp(1.75rem, 3vw, 3.25rem);
}

.krish-has-media-fallback .krish-snap__inner {
    gap: clamp(2rem, 4vw, 4rem);
}

@media (min-width: 960px) {
    .krish-has-media-fallback .krish-snap__inner {
        grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
        align-items: center;
    }
    .krish-has-media-fallback .krish-media-block {
        justify-self: end;
    }
}

/* Full-width breakout inside theme containers */
.entry-content > .krish-immersive,
.entry-content > .wp-block-group > .krish-immersive {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

.entry-content > .krish-immersive::before,
.entry-content > .wp-block-group > .krish-immersive::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
}

body.krish-immersive-active .ct-container-full[data-content="normal"] {
    padding-left: 0;
    padding-right: 0;
}

body.krish-immersive-active .entry-content.is-layout-constrained {
    max-width: none;
    padding: 0;
}

body.krish-immersive-active .entry-content.is-layout-constrained > * {
    max-width: none;
}

body.krish-immersive-active .hero-section,
body.krish-immersive-active .entry-header {
    display: none;
}

.search .site-main {
    background: var(--krish-gradient-background, var(--krish-bg));
    color: var(--krish-text);
    min-height: 100vh;
    padding: clamp(4rem, 8vw, 6rem) clamp(1.5rem, 6vw, 3.5rem);
    display: flex;
    justify-content: center;
}

.search .site-main .ct-container,
.search .site-main .ct-container-full {
    max-width: min(960px, 100%);
    background: rgba(6, 10, 22, 0.48);
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 34px 58px rgba(5, 8, 18, 0.5);
    padding: clamp(2.4rem, 4vw, 3.6rem);
}

.search .entry-header {
    margin-bottom: clamp(2rem, 4vw, 3rem);
}

.search .page-title {
    font-size: clamp(2.6rem, 5vw, 3.6rem);
    letter-spacing: -0.04em;
    margin: 0;
    text-transform: uppercase;
    opacity: 0.88;
}

.search .search-form {
    display: grid;
    gap: clamp(0.8rem, 2vw, 1.2rem);
    margin-bottom: clamp(2.4rem, 4vw, 3.6rem);
}

.search .search-form input[type="search"] {
    width: 100%;
    padding: clamp(1rem, 2.2vw, 1.35rem) clamp(1.2rem, 2.4vw, 1.8rem);
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(8, 16, 32, 0.65);
    color: var(--krish-text);
    font-size: 1rem;
}

.search .search-form input[type="search"]:focus {
    outline: none;
    border-color: var(--krish-active-accent);
    box-shadow: 0 0 0 3px rgba(88, 102, 140, 0.25);
}

.search .search-form input[type="submit"] {
    justify-self: start;
    padding: 0.75rem 1.8rem;
    border-radius: 999px;
    border: none;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-weight: 600;
    background: var(--krish-cta-gradient);
    color: #071018;
    cursor: pointer;
    transition: transform var(--krish-transition-fast) var(--krish-ease-smooth),
                box-shadow var(--krish-transition-fast) var(--krish-ease-smooth);
}

.search .search-form input[type="submit"]:hover,
.search .search-form input[type="submit"]:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 18px 28px var(--krish-btn-shadow, rgba(88, 102, 140, 0.32));
}

.search article {
    display: grid;
    gap: clamp(0.9rem, 2vw, 1.5rem);
    padding: clamp(1.6rem, 3vw, 2.2rem);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(8, 16, 32, 0.55);
    box-shadow: 0 26px 48px rgba(5, 8, 18, 0.38);
}

.search article + article {
    margin-top: clamp(1.4rem, 2.6vw, 2rem);
}

.search article h2 a,
.search article h3 a {
    color: var(--krish-text);
    text-decoration: none;
    transition: color var(--krish-transition-fast) var(--krish-ease-smooth);
}

.search article h2 a:hover,
.search article h2 a:focus-visible,
.search article h3 a:hover,
.search article h3 a:focus-visible {
    color: var(--krish-active-accent);
}

.search .navigation.pagination,
.search .navigation.posts-navigation {
    margin-top: clamp(2rem, 4vw, 3rem);
    display: flex;
    justify-content: center;
}

.search .navigation.pagination a,
.search .navigation.pagination span,
.search .navigation.posts-navigation a,
.search .navigation.posts-navigation span {
    padding: 0.45rem 1.1rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    margin: 0 0.35rem;
    background: rgba(8, 16, 32, 0.55);
    color: var(--krish-text);
    text-decoration: none;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-size: 0.72rem;
}

.search .navigation.pagination a:hover,
.search .navigation.pagination a:focus-visible,
.search .navigation.posts-navigation a:hover,
.search .navigation.posts-navigation a:focus-visible {
    background: var(--krish-progress-active-gradient);
    color: #071018;
}
.krish-search {
    background: var(--krish-gradient-background, var(--krish-bg));
    color: var(--krish-text);
    min-height: 100vh;
    padding: clamp(4rem, 8vw, 6rem) clamp(1.5rem, 6vw, 4rem);
}

.krish-search__wrap {
    width: min(960px, 100%);
    margin: 0 auto;
    display: grid;
    gap: clamp(1.5rem, 3vw, 2.8rem);
}

.krish-search__form {
    display: grid;
    gap: clamp(1rem, 2vw, 1.4rem);
    background: rgba(6, 10, 22, 0.6);
    padding: clamp(1.6rem, 3vw, 2.6rem);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 24px 48px rgba(5, 8, 18, 0.45);
}

.krish-search__form label {
    font-size: 0.82rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    opacity: 0.7;
}

.krish-search__form input[type="search"] {
    width: 100%;
    padding: clamp(0.9rem, 2vw, 1.2rem) clamp(1.1rem, 2vw, 1.6rem);
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(6, 12, 24, 0.55);
    color: var(--krish-text);
    font-size: 1rem;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.krish-search__form input[type="search"]:focus {
    outline: none;
    border-color: var(--krish-active-accent);
    box-shadow: 0 0 0 3px rgba(88, 102, 140, 0.25);
}

.krish-search__results {
    display: grid;
    gap: clamp(1.2rem, 2.4vw, 2rem);
}

.krish-search__item {
    display: grid;
    gap: clamp(0.7rem, 1.4vw, 1.2rem);
    padding: clamp(1.2rem, 2vw, 1.8rem);
    border-radius: 22px;
    background: rgba(6, 10, 22, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 20px 40px rgba(5, 8, 18, 0.4);
}

.krish-search__item h2,
.krish-search__item h3 {
    font-size: clamp(1.4rem, 3vw, 1.95rem);
    margin: 0;
}

.krish-search__item a {
    color: var(--krish-active-accent);
    text-decoration: none;
    transition: color 0.25s ease;
}

.krish-search__item a:hover,
.krish-search__item a:focus-visible {
    color: var(--krish-active-accent-strong);
}

.krish-search__meta {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-size: 0.78rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    opacity: 0.6;
}

.krish-immersive,
.krish-snap,
.krish-snap p,
.krish-snap li,
.krish-snap span,
.krish-snap label,
.krish-snap .wp-block-heading,
.krish-snap h1,
.krish-snap h2,
.krish-snap h3,
.krish-snap h4,
.krish-snap h5,
.krish-snap h6 {
    color: var(--krish-text);
}

.krish-snap p,
.krish-snap li,
.krish-snap label,
.krish-snap span {
    color: var(--krish-text-muted);
}

/* Progress navigation */
.krish-progress {
    position: fixed;
    top: 50%;
    right: clamp(0.8rem, 3vw, 2.6rem);
    transform: translateY(-50%);
    display: grid;
    gap: clamp(0.4rem, 1vw, 0.65rem);
    z-index: 160;
    width: clamp(160px, 22vw, 210px);
    pointer-events: none;
    color: var(--krish-progress-fg, rgba(223, 233, 248, 0.88));
    opacity: 0;
    transition: opacity var(--krish-transition-medium) var(--krish-ease-smooth),
                transform var(--krish-transition-medium) var(--krish-ease-smooth);
}

.krish-progress.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.krish-progress__dot {
    width: 100%;
    padding: clamp(0.55rem, 1.2vw, 0.85rem) clamp(0.85rem, 2vw, 1.2rem);
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(6, 12, 24, 0.58);
    display: inline-flex;
    align-items: center;
    gap: clamp(0.6rem, 1.5vw, 0.9rem);
    text-align: left;
    font-size: clamp(0.58rem, 1.3vw, 0.68rem);
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--krish-text);
    cursor: pointer;
    transition: background var(--krish-transition-medium) var(--krish-ease-smooth),
                border-color var(--krish-transition-medium) var(--krish-ease-smooth),
                color var(--krish-transition-medium) var(--krish-ease-smooth);
}

.krish-progress__label {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.krish-progress__dot:hover,
.krish-progress__dot:focus-visible {
    border-color: rgba(255, 255, 255, 0.24);
    background: rgba(12, 18, 34, 0.82);
    color: var(--krish-text);
}

.krish-progress__dot.is-active {
    background: linear-gradient(135deg, rgba(12, 24, 38, 0.92) 0%, rgba(18, 42, 62, 0.92) 100%);
    color: var(--krish-text);
    border-color: rgba(255, 255, 255, 0.2);
    box-shadow: 0 16px 36px var(--krish-btn-shadow, rgba(88, 102, 140, 0.32));
}

.krish-progress__dot.is-empty {
    display: none;
}

.krish-progress__dot:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.45);
    outline-offset: 2px;
}

/* Primary navigation overlay */
.krish-primary-nav {
    position: fixed;
    top: clamp(0rem, 1vh, 0.4rem);
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: clamp(1.1rem, 3vw, 2.6rem);
    padding: 0 clamp(0.8rem, 3vw, 1.6rem);
    background: none;
    border: none;
    box-shadow: none;
    backdrop-filter: none;
    color: var(--krish-progress-fg);
    z-index: 180;
    pointer-events: auto;
    text-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
    transition: color var(--krish-transition-medium) var(--krish-ease-smooth);
}

.krish-primary-nav::after {
    content: '';
    position: absolute;
    left: clamp(-2rem, -6vw, -1.8rem);
    right: clamp(-2rem, -6vw, -1.8rem);
    bottom: -0.35rem;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.2) 25%, rgba(255, 255, 255, 0.45) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 100%);
    opacity: 0.7;
}

.krish-primary-nav__brand {
    font-size: 0.78rem;
    letter-spacing: 0.26em;
    text-transform: uppercase;
    font-weight: 700;
    color: inherit;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.krish-primary-nav__links {
    display: flex;
    align-items: center;
    gap: clamp(0.9rem, 2.4vw, 2rem);
    position: relative;
    margin-left: clamp(0.8rem, 2.4vw, 1.8rem);
}

.krish-primary-nav__link {
    position: relative;
    font-size: 0.65rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-weight: 600;
    color: inherit;
    text-decoration: none;
    opacity: 0.78;
    transition: opacity var(--krish-transition-fast) var(--krish-ease-smooth),
                color var(--krish-transition-fast) var(--krish-ease-smooth);
}

.krish-primary-nav__link::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -0.35rem;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform var(--krish-transition-fast) var(--krish-ease-smooth);
}

.krish-primary-nav__link:hover,
.krish-primary-nav__link:focus-visible {
    opacity: 1;
}

.krish-primary-nav__link:hover::after,
.krish-primary-nav__link:focus-visible::after {
    transform: scaleX(1);
}

.krish-primary-nav__actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-left: clamp(0.8rem, 2vw, 1.6rem);
}

.krish-primary-nav__search,
.krish-primary-nav__toggle {
    appearance: none;
    border: 1px solid rgba(255, 255, 255, 0.28);
    background: rgba(6, 12, 24, 0.35);
    color: inherit;
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.25s ease, color 0.25s ease;
}

.krish-primary-nav__search:hover,
.krish-primary-nav__search:focus-visible,
.krish-primary-nav__toggle:hover,
.krish-primary-nav__toggle:focus-visible {
    background: rgba(255, 255, 255, 0.2);
    outline: none;
}

.krish-primary-nav__search svg {
    width: 1.05rem;
    height: 1.05rem;
}

.krish-primary-nav__toggle {
    display: none;
    flex-direction: column;
    gap: 0.35rem;
}

.krish-primary-nav__toggle span {
    display: block;
    width: 1rem;
    height: 2px;
    background: currentColor;
    border-radius: 999px;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.krish-primary-nav.is-open .krish-primary-nav__toggle span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}

.krish-primary-nav.is-open .krish-primary-nav__toggle span:nth-child(2) {
    opacity: 0;
}

.krish-primary-nav.is-open .krish-primary-nav__toggle span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}

.krish-primary-nav__links a[aria-current="page"] {
    opacity: 1;
}

.krish-primary-nav.is-hidden {
    opacity: 0;
    pointer-events: none;
}

/* Buttons */
.krish-btn,
.krish-btn:visited {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    padding: 0.95rem 2.4rem;
    border-radius: 999px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--krish-text);
    background-image: var(--krish-cta-gradient, linear-gradient(135deg, var(--krish-active-accent) 0%, var(--krish-active-accent-strong) 100%));
    background-size: 220% 220%;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 26px 48px var(--krish-btn-shadow, rgba(127, 91, 255, 0.35));
    transition: transform var(--krish-transition-medium) var(--krish-ease-smooth),
                box-shadow var(--krish-transition-medium) var(--krish-ease-subtle),
                background-position var(--krish-transition-slow) var(--krish-ease-subtle);
    text-decoration: none;
    overflow: hidden;
}

.krish-btn::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0) 65%);
    opacity: 0;
    transform: translate3d(-18%, 0, 0);
    transition: opacity var(--krish-transition-medium) var(--krish-ease-subtle),
                transform var(--krish-transition-medium) var(--krish-ease-smooth);
    pointer-events: none;
}

.krish-btn:hover,
.krish-btn:focus-visible {
    transform: translateY(-6px) scale(1.01);
    box-shadow: 0 32px 60px var(--krish-btn-shadow-strong, rgba(127, 91, 255, 0.48));
    background-position: 100% 0;
}

.krish-btn:hover::after,
.krish-btn:focus-visible::after {
    opacity: 0.85;
    transform: translate3d(0, 0, 0);
}

.krish-btn:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.45);
    outline-offset: 3px;
}

.krish-btn--youtube {
    background-image: linear-gradient(135deg, rgba(255, 82, 82, 0.92) 0%, rgba(255, 142, 162, 0.88) 100%);
    box-shadow: 0 28px 54px rgba(255, 82, 82, 0.4);
}

.krish-btn--youtube:hover,
.krish-btn--youtube:focus-visible {
    box-shadow: 0 32px 64px rgba(255, 82, 82, 0.5);
}

/* Animation states */
.krish-snap.krish-init::before {
    opacity: 0.32;
}

.krish-snap.krish-in-view {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

.krish-snap.krish-in-view::before {
    opacity: 0.78;
    transform: scale(1.08);
    filter: saturate(1.3);
}

.krish-snap.krish-in-view::after {
    opacity: 0.55;
}

.krish-snap.krish-in-view .krish-hero__eyebrow,
.krish-snap.krish-in-view .krish-hero__title,
.krish-snap.krish-in-view .krish-hero__lead,
.krish-snap.krish-in-view .krish-hero__cta,
.krish-snap.krish-in-view .krish-pane__title,
.krish-snap.krish-in-view .krish-pane__content > *,
.krish-snap.krish-in-view .krish-shows__item,
.krish-snap.krish-in-view .krish-press__card,
.krish-snap.krish-in-view .krish-social__item,
.krish-snap.krish-in-view .krish-pane__notice,
.krish-snap.krish-in-view .krish-pane__footer,
.krish-snap.krish-in-view .krish-contact__email {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.krish-hero__eyebrow,
.krish-hero__title,
.krish-hero__lead,
.krish-hero__cta,
.krish-pane__title,
.krish-pane__content > *,
.krish-shows__item,
.krish-press__card,
.krish-social__item,
.krish-pane__notice,
.krish-pane__footer,
.krish-contact__email {
    opacity: 0;
    transform: translate3d(0, 26px, 0);
    transition: opacity calc(var(--krish-transition-medium) + 0.05s) cubic-bezier(0.22, 1, 0.36, 1),
                transform calc(var(--krish-transition-medium) + 0.12s) cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--krish-stagger-delay, 0s);
    will-change: transform, opacity;
}

/* Hero typography */
.krish-hero__eyebrow {
    font-size: 0.82rem;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
}

.krish-hero__title {
    font-size: clamp(3.4rem, 6vw, 4.8rem);
    line-height: 0.98;
    letter-spacing: -0.035em;
    font-weight: 700;
    text-shadow: 0 20px 55px rgba(0, 0, 0, 0.5);
}

.krish-hero__lead {
    max-width: 52ch;
    font-size: clamp(1.08rem, 1.7vw, 1.28rem);
    line-height: 1.75;
    color: var(--krish-text-muted);
}

.krish-hero__cta {
    display: inline-flex;
    align-items: center;
}

/* Pane variants */
.krish-pane__content {
    display: grid;
    gap: 1.6rem;
    max-width: 60ch;
}

.krish-pane__eyebrow {
    text-transform: uppercase;
    letter-spacing: 0.24em;
    font-size: 0.82rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.62);
}

.krish-pane__title {
    font-size: clamp(2.35rem, 4vw, 3.6rem);
    line-height: 1.05;
    letter-spacing: -0.02em;
    text-shadow: 0 18px 48px rgba(0, 0, 0, 0.45);
}

.krish-pane__body {
    font-size: clamp(1.05rem, 1.6vw, 1.22rem);
    line-height: 1.7;
    color: var(--krish-text-muted);
}

/* Section transition variations */
.krish-transition-blur:not(.krish-in-view) .krish-snap__inner {
    filter: blur(18px);
    opacity: 0.35;
}

.krish-transition-blur.krish-in-view .krish-snap__inner {
    filter: blur(0);
    opacity: 1;
    transition: filter 1.1s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.9s ease;
}

.krish-transition-stripes::after {
    background:
        repeating-linear-gradient(115deg, rgba(255, 255, 255, 0.12) 0 16px, transparent 16px 36px),
        radial-gradient(circle at 50% 18%, rgba(255, 255, 255, 0.16), transparent 65%);
    opacity: 0.65;
    transform: translate3d(0, -120%, 0);
    transition: opacity 1s ease, transform 1s cubic-bezier(0.25, 1, 0.5, 1);
}

.krish-transition-stripes.krish-in-view::after {
    opacity: 0;
    transform: translate3d(0, 120%, 0);
}

.krish-transition-wipe:not(.krish-in-view) .krish-snap__inner {
    clip-path: inset(18% 16% 18% 16%);
    opacity: 0;
}

.krish-transition-wipe.krish-in-view .krish-snap__inner {
    clip-path: inset(0 0 0 0);
    opacity: 1;
    transition: clip-path 0.95s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.75s ease;
}

.krish-transition-zoom:not(.krish-in-view) .krish-snap__inner {
    transform: translate3d(0, 10vh, 0) scale(0.88);
    opacity: 0;
}

.krish-transition-zoom.krish-in-view .krish-snap__inner {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 1;
    transition: transform 1s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.7s ease;
}

.krish-transition-fade:not(.krish-in-view) .krish-snap__inner {
    opacity: 0;
    transform: translate3d(0, 8vh, 0);
}

.krish-transition-fade.krish-in-view .krish-snap__inner {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition: opacity 0.9s ease, transform 0.9s ease;
}

.krish-pane__body a {
    color: var(--krish-active-accent);
    text-decoration: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    transition: color 0.3s ease, border-color 0.3s ease;
}

.krish-pane__body a:hover,
.krish-pane__body a:focus-visible {
    color: var(--krish-active-accent-strong);
    border-color: currentColor;
}

.krish-pane__body a[href*="spotify.com"],
.krish-pane__body a[href*="youtube.com"],
.krish-pane__body a[href*="youtu.be"],
.krish-pane__body a[href*="music.apple.com"],
.krish-pane__body a[href*="instagram.com"],
.krish-pane__body a[href*="tiktok.com"] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.2rem 0.55rem 0.2rem 0.35rem;
    border-radius: 999px;
    border-bottom: none;
    font-weight: 600;
}

.krish-pane__body a[href*="spotify.com"] {
    color: #1db954;
    background: rgba(29, 185, 84, 0.12);
}

.krish-pane__body a[href*="spotify.com"]:hover,
.krish-pane__body a[href*="spotify.com"]:focus-visible {
    background: rgba(29, 185, 84, 0.2);
}

.krish-pane__body a[href*="youtube.com"],
.krish-pane__body a[href*="youtu.be"] {
    color: #ff4b4b;
    background: rgba(255, 75, 75, 0.12);
}

.krish-pane__body a[href*="youtube.com"]:hover,
.krish-pane__body a[href*="youtube.com"]:focus-visible,
.krish-pane__body a[href*="youtu.be"]:hover,
.krish-pane__body a[href*="youtu.be"]:focus-visible {
    background: rgba(255, 75, 75, 0.2);
}

.krish-pane__body a[href*="music.apple.com"] {
    color: #f56342;
    background: rgba(245, 99, 66, 0.12);
}

.krish-pane__body a[href*="music.apple.com"]:hover,
.krish-pane__body a[href*="music.apple.com"]:focus-visible {
    background: rgba(245, 99, 66, 0.22);
}

.krish-pane__body a[href*="instagram.com"] {
    color: #fca311;
    background: rgba(252, 163, 17, 0.12);
}

.krish-pane__body a[href*="instagram.com"]:hover,
.krish-pane__body a[href*="instagram.com"]:focus-visible {
    background: rgba(252, 163, 17, 0.22);
}

.krish-pane__body a[href*="tiktok.com"] {
    color: #4de2e2;
    background: rgba(77, 226, 226, 0.12);
}

.krish-pane__body a[href*="tiktok.com"]:hover,
.krish-pane__body a[href*="tiktok.com"]:focus-visible {
    background: rgba(77, 226, 226, 0.22);
}

.krish-pane__body a[href*="spotify.com"]::before,
.krish-pane__body a[href*="youtube.com"]::before,
.krish-pane__body a[href*="youtu.be"]::before,
.krish-pane__body a[href*="music.apple.com"]::before,
.krish-pane__body a[href*="instagram.com"]::before,
.krish-pane__body a[href*="tiktok.com"]::before {
    content: '';
    width: 0.65rem;
    height: 0.65rem;
    border-radius: 50%;
    background: currentColor;
    opacity: 0.8;
}

.krish-pane__media:not(.krish-media-block) {
    border-radius: 28px;
    overflow: hidden;
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 38px 90px rgba(5, 4, 18, 0.55);
}

.krish-pane__media--grid,
.krish-images-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: clamp(1rem, 2vw, 2rem);
    border-radius: 28px;
    overflow: hidden;
    background: rgba(6, 10, 22, 0.35);
    padding: clamp(0.75rem, 1.5vw, 1.5rem);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 26px 48px rgba(5, 8, 18, 0.45);
}

.krish-pane__media--grid figure,
.krish-images-grid figure,
.krish-pane__media--grid .wp-block-image,
.krish-images-grid .wp-block-image {
    margin: 0;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 16px 32px rgba(5, 8, 18, 0.45);
}

.krish-pane__media--grid img,
.krish-images-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.krish-pane__media--stack {
    position: relative;
    padding: clamp(1rem, 2vw, 2rem);
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 26px 48px rgba(5, 8, 18, 0.45);
    background: rgba(6, 10, 22, 0.4);
}

.krish-pane__media--stack figure {
    position: relative;
    margin: 0;
    border-radius: 24px;
    overflow: hidden;
}

.krish-pane__media--stack figure + figure {
    position: absolute;
    inset: clamp(0.9rem, 1.4vw, 1.6rem);
    transform: translate(8%, 10%);
    border-radius: 24px;
    box-shadow: 0 22px 48px rgba(5, 8, 18, 0.4);
    opacity: 0.92;
}

.krish-pane__content .wp-block-gallery,
.krish-pane__content .blocks-gallery-grid {
    margin: clamp(1.2rem, 2vw, 2rem) 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: clamp(0.9rem, 2vw, 1.6rem);
}

.krish-pane__content .wp-block-gallery img,
.krish-pane__content .blocks-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 20px 36px rgba(5, 8, 18, 0.45);
}

.krish-pane__content .wp-block-gallery figure {
    margin: 0;
}

.krish-hero__gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: clamp(1rem, 2vw, 1.8rem);
    margin-top: clamp(1.5rem, 2vw, 2.5rem);
}

.krish-hero__gallery img,
.krish-hero__gallery video {
    width: 100%;
    height: clamp(180px, 28vh, 320px);
    object-fit: cover;
    border-radius: 24px;
    box-shadow: 0 20px 44px rgba(5, 8, 18, 0.45);
}

.krish-pane--media-left .krish-snap__inner,
.krish-pane--media-right .krish-snap__inner {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: clamp(2rem, 4vw, 4rem);
}

/* Shows */
.krish-shows__list {
    display: grid;
    gap: clamp(1.4rem, 2vw, 2rem);
    padding: 0;
    list-style: none;
    margin: 0;
}

.krish-shows__item {
    display: flex;
    gap: 1.5rem;
    justify-content: space-between;
    align-items: center;
    padding: clamp(1.35rem, 2vw, 1.75rem) clamp(1.5rem, 2.5vw, 2.5rem);
    border-radius: 20px;
    background: var(--krish-surface);
    border: 1px solid var(--krish-border);
    box-shadow: 0 18px 40px rgba(5, 4, 18, 0.35);
}

.krish-shows__meta {
    display: grid;
    gap: 0.35rem;
}

.krish-shows__date {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: rgba(255, 255, 255, 0.7);
}

.krish-shows__title {
    font-weight: 600;
    font-size: 1.2rem;
}

.krish-shows__location {
    font-size: 0.95rem;
    color: var(--krish-text-muted);
}

/* Media surfaces */
.krish-media-block {
    position: relative;
    border-radius: clamp(18px, 4vw, 28px);
    overflow: hidden;
    display: block;
    width: 100%;
    --media-tilt-x: 0;
    --media-tilt-y: 0;
    --media-raise: 0;
    --media-scale: 1;
    --media-glow-intensity: 0;
    --media-shadow-strength: 0.45;
    opacity: 0;
    transform-style: preserve-3d;
    transform: translate3d(0, calc(var(--parallax-offset, 0px) + 26px), 0)
        rotateX(calc(var(--media-tilt-x, 0) * 1deg))
        rotateY(calc(var(--media-tilt-y, 0) * 1deg))
        translateZ(calc(var(--media-raise, 0) * 1px))
        scale(var(--media-scale, 1));
    transition: opacity calc(var(--krish-transition-medium) + 0.05s) cubic-bezier(0.22, 1, 0.36, 1),
                transform calc(var(--krish-transition-medium) + 0.18s) cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow calc(var(--krish-transition-medium) + 0.2s) var(--krish-ease-smooth),
                filter calc(var(--krish-transition-medium) + 0.22s) linear;
    box-shadow: 0 clamp(16px, 4vw, 40px) clamp(44px, 6vw, 64px) rgba(6, 10, 22, var(--media-shadow-strength));
    filter: saturate(1.02) brightness(calc(0.95 + var(--media-glow-intensity, 0) * 0.09));
    background: linear-gradient(140deg, rgba(10, 14, 24, 0.88) 0%, rgba(16, 22, 32, 0.92) 45%, rgba(20, 28, 38, 0.9) 100%);
}

.krish-media-fallback {
    min-height: clamp(240px, 42vw, 420px);
    max-width: min(540px, 62vw);
    margin-inline: auto;
    align-self: stretch;
}

.krish-snap--hero .krish-media-fallback {
    max-width: min(620px, 66vw);
    min-height: clamp(320px, 60vw, 520px);
}

@media (min-width: 960px) {
    .krish-media-fallback {
        justify-self: end;
        margin-inline: 0 0;
    }
}

@media (max-width: 720px) {
    .krish-media-fallback {
        margin-inline: 0;
    }
}

.krish-snap.krish-in-view .krish-media-block {
    opacity: 1;
    transform: translate3d(0, var(--parallax-offset, 0px), 0)
        rotateX(calc(var(--media-tilt-x, 0) * 1deg))
        rotateY(calc(var(--media-tilt-y, 0) * 1deg))
        translateZ(calc(var(--media-raise, 0) * 1px))
        scale(var(--media-scale, 1));
}

.krish-media-block::after {
    content: '';
    position: absolute;
    inset: -14%;
    background: radial-gradient(circle at 45% 25%, rgba(154, 167, 200, 0.32), transparent 65%);
    opacity: calc(0.2 + var(--media-glow-intensity, 0) * 0.45);
    transition: opacity 0.6s var(--krish-ease-smooth), transform 0.6s var(--krish-ease-smooth);
    transform: scale(1.08);
    pointer-events: none;
    z-index: 1;
}

.krish-media-block::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(140deg, rgba(8, 12, 20, 0.5) 0%, rgba(8, 12, 18, 0) 60%);
    mix-blend-mode: lighten;
    opacity: calc(0.12 + var(--media-glow-intensity, 0) * 0.25);
    pointer-events: none;
    z-index: 2;
    transition: opacity 0.6s var(--krish-ease-smooth);
}

.krish-media-block > :where(img, picture, video, iframe) {
    position: relative;
    z-index: 3;
    display: block;
    width: 100%;
    height: auto;
}

.krish-media-block picture > img,
.krish-media-block img {
    width: 100%;
    height: auto;
    display: block;
}

.krish-media-block__canvas {
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
        radial-gradient(circle at 65% 35%, rgba(154, 167, 200, 0.28), transparent 58%),
        linear-gradient(160deg, rgba(32, 46, 68, 0.92) 0%, rgba(16, 24, 34, 0.88) 40%, rgba(12, 18, 28, 0.8) 100%);
    overflow: hidden;
    pointer-events: none;
}

.krish-media-block__canvas::before,
.krish-media-block__canvas::after {
    content: '';
    position: absolute;
    inset: 12% 18%;
    border-radius: 28px;
    background: linear-gradient(135deg, rgba(220, 228, 236, 0.12) 0%, rgba(220, 228, 236, 0) 70%);
    transform: rotate(12deg);
    filter: blur(0) saturate(1.05);
}

.krish-media-block__canvas::after {
    inset: 26% 30%;
    border-radius: 32px;
    background:
        linear-gradient(145deg, rgba(88, 102, 140, 0.38), transparent 65%),
        linear-gradient(320deg, rgba(124, 140, 176, 0.24), transparent 55%);
    transform: rotate(-9deg);
}

.krish-media-fallback:not(.krish-media-block--empty) .krish-media-block__canvas,
.krish-media-fallback:not(.krish-media-block--empty) .krish-media-block__canvas::before,
.krish-media-fallback:not(.krish-media-block--empty) .krish-media-block__canvas::after {
    display: none;
}

.krish-media-block--glow::after {
    background: radial-gradient(circle at 40% 20%, color-mix(in srgb, var(--krish-active-accent, #58668c) 55%, transparent 45%), transparent 68%);
}

.krish-media-block--tilt::before {
    background: linear-gradient(120deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 55%);
}

.krish-media-block--flare::after {
    background: conic-gradient(from 180deg at 50% 50%, rgba(154, 167, 200, 0.18), rgba(255, 255, 255, 0.12), rgba(154, 167, 200, 0.18));
    opacity: calc(0.18 + var(--media-glow-intensity, 0) * 0.35);
}

.krish-media-block--frame {
    box-shadow: 0 clamp(14px, 3.6vw, 34px) clamp(38px, 5vw, 54px) rgba(6, 10, 22, calc(var(--media-shadow-strength) + 0.12));
}

.krish-media-block--frame::before {
    background: transparent;
    border: 1px solid rgba(220, 228, 236, 0.18);
    border-radius: inherit;
    inset: 0;
    mix-blend-mode: normal;
}

.krish-media-block--grain::before {
    background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 3px);
    mix-blend-mode: screen;
    opacity: calc(0.08 + var(--media-glow-intensity, 0) * 0.18);
}

.krish-media-block--halo::after {
    background: radial-gradient(circle at 50% 50%, rgba(154, 167, 200, 0.38), transparent 70%);
}

.krish-media-block.krish-media-block--active {
    --media-scale: 1.035;
    --media-shadow-strength: 0.6;
}

.krish-media-block--reduced {
    transition: opacity 0.4s ease, transform 0.4s ease, box-shadow 0.4s ease;
}

.krish-snap.krish-in-view .krish-media-block--reduced {
    transform: translate3d(0, var(--parallax-offset, 0px), 0);
}

.krish-media-block--empty::before,
.krish-media-block--empty::after {
    opacity: 0.18;
}

.krish-media__placeholder {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: grid;
    place-content: center;
    gap: clamp(0.6rem, 1.4vw, 1.2rem);
    padding: clamp(1.6rem, 4vw, 3rem);
    text-align: center;
    color: rgba(236, 240, 255, 0.92);
    background:
        radial-gradient(circle at 36% 18%, color-mix(in srgb, var(--krish-active-accent, #58668c) 55%, transparent 45%) 0%, transparent 60%),
        linear-gradient(150deg, rgba(10, 14, 24, 0.95) 0%, rgba(20, 26, 36, 0.92) 50%, rgba(16, 20, 30, 0.88) 100%);
    border: 1px dashed rgba(220, 228, 236, 0.25);
    border-radius: inherit;
    pointer-events: none;
}

.krish-media__placeholder-digit {
    font-size: clamp(3.2rem, 8vw, 6rem);
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    text-shadow: 0 18px 38px rgba(0, 0, 0, 0.55);
}

.krish-media__placeholder-label {
    font-size: clamp(0.78rem, 1.6vw, 1rem);
    letter-spacing: 0.18em;
    text-transform: uppercase;
    opacity: 0.72;
}

/* Gallery */
.krish-gallery {
    display: grid;
    gap: clamp(1.5rem, 3vw, 3rem);
}

.krish-gallery--masonry .krish-gallery {
    column-count: 3;
    column-gap: clamp(1rem, 2vw, 2rem);
}

.krish-gallery--masonry .krish-gallery__item {
    break-inside: avoid;
    margin-bottom: clamp(1rem, 2vw, 2rem);
}

.krish-gallery__item img {
    width: 100%;
    height: auto;
    border-radius: 22px;
    box-shadow: var(--krish-shadow);
    display: block;
}

.krish-gallery__placeholder {
    border-radius: 22px;
    padding: 2rem;
    border: 1px dashed rgba(255, 255, 255, 0.25);
    text-align: center;
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.6);
}

/* Press */
.krish-press__grid {
    display: grid;
    gap: clamp(1.4rem, 2.5vw, 2.5rem);
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.krish-press__card {
    padding: clamp(1.6rem, 2.6vw, 2.6rem);
    background: var(--krish-surface-strong);
    border-radius: 22px;
    border: 1px solid var(--krish-border);
    box-shadow: var(--krish-shadow);
    display: grid;
    gap: 1rem;
}

.krish-press__excerpt p {
    margin: 0 0 0.75rem;
    color: var(--krish-text-muted);
}

/* Social */
.krish-social__grid {
    display: grid;
    gap: clamp(1.6rem, 2.6vw, 3rem);
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.krish-social__item {
    position: relative;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid var(--krish-border);
    background: var(--krish-surface);
    min-height: 360px;
    box-shadow: var(--krish-shadow);
}

.krish-social__item iframe,
.krish-social__item blockquote {
    width: 100%;
    height: 100%;
}

.krish-pane__notice,
.krish-contact__email {
    font-size: 1rem;
    color: var(--krish-text-muted);
}

.krish-contact__email a {
    color: var(--krish-text);
}

@media (max-width: 960px) {
    .krish-gallery--masonry .krish-gallery {
        column-count: 2;
    }
    .krish-primary-nav {
        gap: 0.9rem;
        padding: 0.4rem 0.9rem;
    }
    .krish-primary-nav__links {
        position: absolute;
        top: calc(100% + 0.6rem);
        left: 0;
        right: 0;
        display: none;
        flex-direction: column;
        gap: 0.55rem;
        padding: 0.8rem 1rem;
        border-radius: 16px;
        background: color-mix(in srgb, rgba(6, 12, 24, 0.92) 70%, rgba(0, 0, 0, 0.22) 30%);
        border: 1px solid rgba(255, 255, 255, 0.08);
        box-shadow: 0 18px 32px rgba(4, 8, 18, 0.45);
        margin-left: 0;
    }
    .krish-primary-nav.is-open .krish-primary-nav__links {
        display: flex;
    }
    .krish-primary-nav__link {
        justify-content: center;
        text-align: center;
        letter-spacing: 0.18em;
    }
    .krish-primary-nav__actions {
        gap: 0.6rem;
    }
    .krish-primary-nav__toggle {
        display: inline-flex;
    }
    .krish-primary-nav__search {
        width: 2.2rem;
        height: 2.2rem;
    }
    .krish-progress {
        left: clamp(0.9rem, 6vw, 2.4rem);
        width: clamp(130px, 28vw, 170px);
        height: clamp(130px, 28vw, 170px);
    }
    .krish-progress::after {
        inset: clamp(0.35rem, 1vw, 0.65rem);
    }
    .krish-progress__dot {
        width: clamp(40px, 5vw, 54px);
        height: clamp(40px, 5vw, 54px);
        font-size: 0.52rem;
        letter-spacing: 0.12em;
    }
    .krish-progress__dot[data-role="current"] {
        width: clamp(48px, 6vw, 66px);
        height: clamp(48px, 6vw, 66px);
    }
}

@media (max-width: 720px) {
    .krish-primary-nav {
        top: clamp(0.8rem, 2vh, 1.2rem);
        width: min(92vw, 360px);
        padding: 0.45rem 0.75rem;
        gap: 0.75rem;
    }
    .krish-primary-nav__brand {
        font-size: 0.72rem;
        letter-spacing: 0.22em;
    }
    .krish-primary-nav__links {
        padding: 0.7rem 0.85rem;
        gap: 0.45rem;
    }
    .krish-primary-nav__link {
        font-size: 0.56rem;
        letter-spacing: 0.16em;
    }
    .krish-primary-nav__toggle {
        width: 2.1rem;
        height: 2.1rem;
    }
    .krish-immersive__scroller {
        scroll-snap-type: y mandatory;
        height: 100vh;
    }
    .krish-progress {
        display: none;
    }
    .krish-snap {
        min-height: 100vh;
        padding: clamp(2.4rem, 12vw, 3rem) clamp(1rem, 6vw, 1.8rem);
    }
    .krish-icon-swarm {
        inset: -4%;
        opacity: 0.65;
    }
    .krish-icon-swarm__item {
        font-size: clamp(1.8rem, 8vw, 2.6rem);
        opacity: 0.28;
    }
    .krish-snap.krish-in-view .krish-icon-swarm__item {
        opacity: 0.45;
    }
    .krish-hero__title {
        font-size: clamp(2.4rem, 11vw, 3.2rem);
    }
    .krish-hero__lead {
        font-size: clamp(0.98rem, 4.5vw, 1.1rem);
    }
    .krish-pane__title {
        font-size: clamp(1.9rem, 9vw, 2.4rem);
    }
    .krish-pane__body {
        font-size: clamp(0.98rem, 4.2vw, 1.08rem);
    }
    .krish-pane__media--grid,
    .krish-images-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        padding: clamp(0.5rem, 2vw, 0.9rem);
    }
}

@media (max-width: 600px) {
    .krish-gallery--masonry .krish-gallery {
        column-count: 1;
    }
    .krish-shows__item {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (prefers-reduced-motion: reduce) {
    .krish-immersive__scroller {
        scroll-behavior: auto;
    }
    .krish-snap,
    .krish-snap::before,
    .krish-snap::after,
    .krish-hero__eyebrow,
    .krish-hero__title,
    .krish-hero__lead,
    .krish-hero__cta,
    .krish-pane__title,
    .krish-pane__content > *,
    .krish-shows__item,
    .krish-gallery__item,
    .krish-media-block,
    .krish-press__card,
    .krish-social__item,
    .krish-pane__notice,
    .krish-pane__footer,
    .krish-contact__email,
    .krish-progress__dot,
    .krish-icon-swarm__item {
        transition-duration: 0s !important;
        transition-delay: 0s !important;
        transform: none !important;
    }
    .krish-hero__eyebrow,
    .krish-hero__title,
    .krish-hero__lead,
    .krish-hero__cta,
    .krish-pane__title,
    .krish-pane__content > *,
    .krish-shows__item,
    .krish-gallery__item,
    .krish-media-block,
    .krish-press__card,
    .krish-social__item,
    .krish-pane__notice,
    .krish-pane__footer,
    .krish-contact__email,
    .krish-icon-swarm__item {
        opacity: 1 !important;
    }
}

.krish-pane__media:not(.krish-media-block),
.krish-gallery__item:not(.krish-media-block),
.krish-social__item,
.krish-press__card {
    transform: translate3d(0, var(--parallax-offset, 0px), 0);
    will-change: transform;
}
