/** SKIF UI catalog composition — one Skin, shared editor/front components. */
:is(.skif-public-dojos, .skif-public-board, .skif-public-events) {
    --skif-catalog-gap: var(--vl-skin-grid-gap, 1.25rem);
    color: var(--vl-text-primary);
}
:is(.skif-public-dojos, .skif-public-board) .skif-ui-list {
    gap: var(--skif-catalog-gap);
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
}
:is(.skif-public-dojos, .skif-public-board) .skif-ui-list--list,
:is(.skif-public-dojos, .skif-public-board) .skif-ui-list--spotlight {
    grid-template-columns: 1fr;
}
:is(.skif-public-dojos, .skif-public-board, .skif-public-events) .skif-ui-card {
    padding: var(--vl-space-lg, 1.5rem);
    border-radius: var(--vl-radius-md);
    box-shadow: none;
    border-color: var(--vl-border-subtle);
    background: var(--vl-bg-surface);
    min-width: 0;
}
.skif-ui-card--dojo {
    display: flex;
    flex-direction: column;
    align-items: start;
    position: relative;
    border-top: 3px solid var(--vl-color-primary) !important;
}
.skif-ui-card--dojo .skif-ui-media {
    display: grid;
    place-items: center;
    width: 100%;
    min-height: 9rem;
    margin-bottom: var(--vl-space-lg);
    background: var(--vl-bg-inset);
}
.skif-ui-emblem {
    width: 6rem;
    height: 6rem;
    object-fit: contain;
    padding: 0.5rem;
    display: block;
}
.skif-ui-card--dojo .skif-ui-kicker {
    font-size: 0.7rem;
    margin: 0 0 0.5rem;
}
:is(.skif-public-dojos, .skif-public-board) .skif-ui-card__title {
    font-family: var(--vl-font-family-display);
    font-size: clamp(1.4rem, 2vw, 1.8rem);
    line-height: 1.15;
    margin: 0.25rem 0 0.75rem;
    color: var(--vl-text-primary);
}
.skif-ui-card--person .skif-ui-media {
    margin: calc(-1 * var(--vl-space-lg)) calc(-1 * var(--vl-space-lg)) var(--vl-space-lg);
    border-radius: var(--vl-radius-md) var(--vl-radius-md) 0 0;
    background: var(--vl-bg-inset);
}
.skif-ui-card--person .skif-public-photo {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    object-position: center top;
    border-radius: 0;
    filter: var(--vl-skin-media-filter);
}
.skif-ui-card--person .skif-ui-meta {
    font-size: 0.9rem;
    line-height: 1.55;
    color: var(--vl-text-muted);
}
.skif-ui-carousel__toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: var(--vl-space-lg);
}
.skif-ui-carousel__toolbar p { margin: 0; }
.skif-ui-carousel__controls:not([hidden]) { display: flex; gap: 0.5rem; }
.skif-ui-carousel__controls button {
    width: 3rem;
    height: 3rem;
    padding: 0;
    font-size: 1.5rem;
    border: 1px solid var(--vl-border-subtle);
    background: var(--vl-bg-surface);
    color: var(--vl-text-primary);
    border-radius: var(--vl-radius-md);
    cursor: pointer;
}
.skif-ui-carousel__controls button:disabled { opacity: 0.4; cursor: default; }
.skif-ui-carousel .skif-ui-list--carousel {
    display: flex;
    gap: var(--skif-catalog-gap);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
    scrollbar-color: var(--vl-color-primary) var(--vl-bg-inset);
    padding: 0.25rem 0 1rem;
}
.skif-ui-carousel .skif-ui-card {
    flex: 0 0 clamp(15rem, 26vw, 19rem);
    scroll-snap-align: start;
}
.skif-ui-carousel :is(button, [tabindex]):focus-visible {
    outline: 3px solid var(--vl-color-primary);
    outline-offset: 3px;
}
.skif-public-events .skif-ui-list {
    grid-template-columns: 1fr;
    gap: 0;
    border-top: 1px solid var(--vl-border-subtle);
}
.skif-public-events .skif-public-event {
    display: grid;
    grid-template-columns: 5.5rem minmax(0, 1fr);
    align-items: start;
    gap: clamp(1rem, 3vw, 3rem);
    padding: clamp(1.5rem, 3vw, 2.5rem) 0;
    border: 0;
    border-bottom: 1px solid var(--vl-border-subtle);
    border-radius: 0;
    background: transparent;
}
.skif-public-event__date {
    display: grid;
    justify-items: center;
    gap: 0.25rem;
    margin: 0;
    padding: 1rem 0.25rem;
    background: var(--vl-bg-surface);
    border: 1px solid var(--vl-border-subtle);
    border-top: 3px solid var(--vl-color-primary);
    border-radius: var(--vl-radius-md);
}
.skif-public-events .skif-public-event__day {
    font-family: var(--vl-font-family-display);
    font-size: 2.75rem;
    line-height: 1;
    color: var(--vl-color-primary);
}
.skif-public-event__month { font-family: var(--vl-font-family-display); }
.skif-public-event__year { font-size: 0.75rem; color: var(--vl-text-muted); }
.skif-public-event__body .skif-ui-kicker { font-size: 0.7rem; margin: 0 0 0.5rem; }
.skif-public-event__body .skif-ui-card__title {
    font-family: var(--vl-font-family-display);
    font-size: clamp(1.4rem, 2.5vw, 2.2rem);
    font-weight: var(--vl-font-weight-semibold);
    line-height: 1.2;
    color: var(--vl-text-primary);
    margin: 0 0 0.75rem;
}
.skif-public-event__schedule { display: block; margin-top: 0.25rem; color: var(--vl-text-muted); }
.skif-public-more a {
    font-family: var(--vl-font-family-display);
    text-transform: uppercase;
    color: var(--vl-color-primary);
    text-underline-offset: 0.3em;
}
@media (prefers-reduced-motion: no-preference) {
    .skif-ui-carousel .skif-ui-list--carousel { scroll-behavior: smooth; }
}
@media (max-width: 600px) {
    .skif-ui-carousel .skif-ui-card { flex-basis: 82%; }
    .skif-public-events .skif-public-event { grid-template-columns: 4.5rem minmax(0, 1fr); }
}
/* Section surfaces share the Skin hierarchy, including their nested components. */
.skif-section--dark,
.skif-ui-section--dark {
    --vl-bg-main: var(--wp--preset--color--contrast);
    --vl-bg-surface: color-mix(in srgb, var(--wp--preset--color--contrast) 94%, var(--wp--preset--color--base));
    --vl-bg-inset: color-mix(in srgb, var(--wp--preset--color--contrast) 88%, var(--wp--preset--color--base));
    --vl-text-primary: var(--wp--preset--color--base);
    --vl-text-secondary: color-mix(in srgb, var(--wp--preset--color--base) 88%, var(--wp--preset--color--contrast));
    --vl-text-muted: color-mix(in srgb, var(--wp--preset--color--base) 72%, var(--wp--preset--color--contrast));
    --vl-border-subtle: color-mix(in srgb, var(--wp--preset--color--base) 22%, transparent);
    background: var(--vl-bg-main);
    color: var(--vl-text-primary);
}
.skif-section--dark .skif-public-summary__stats strong {
    color: var(--vl-text-primary);
}
.skif-section--dark .skif-public-summary__stats .skif-ui-card {
    background: var(--vl-bg-surface);
    color: var(--vl-text-secondary);
    border-color: var(--vl-border-subtle);
}
.skif-section__head h2 {
    font-family: var(--vl-font-family-display);
    font-size: clamp(2rem, 4vw, 3.5rem);
    line-height: 1.05;
    letter-spacing: -0.025em;
}
.skif-promo-rail {
    background: var(--wp--preset--color--contrast);
    color: var(--wp--preset--color--base);
    padding-block: var(--vl-space-lg);
    border-bottom: 3px solid var(--vl-color-primary);
}
/* SKIF compositions: different rhythms for network, lineage and current affairs. */
.skif-ui-composition--network > .wp-block-group.alignwide:not(.skif-section__head) {
    display: grid;
    grid-template-columns: minmax(0, 0.3fr) minmax(0, 1fr);
    gap: clamp(2rem, 5vw, 5rem);
    align-items: start;
}
.skif-ui-composition--network .skif-public-summary__spotlight {
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    font-family: var(--vl-font-family-display);
    text-transform: uppercase;
    line-height: 1.3;
}
.skif-ui-composition--network .skif-public-summary__spotlight-value {
    display: block;
    font-size: clamp(6rem, 14vw, 13rem);
    font-weight: var(--vl-font-weight-semibold);
    line-height: 0.85;
    letter-spacing: -0.06em;
    margin-bottom: 1.5rem;
}
.skif-ui-composition--network .skif-public-dojos .skif-ui-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.skif-ui-composition--network .skif-ui-card--dojo {
    align-items: center;
    text-align: center;
    border: 0;
    border-top: 0 !important;
    border-bottom: 1px solid var(--vl-border-subtle);
    background: transparent;
    padding: 1.5rem 0;
}
.skif-ui-composition--network .skif-ui-card--dojo .skif-ui-media {
    background: transparent;
    min-height: 7rem;
    margin-bottom: 1rem;
}
.skif-ui-composition--network .skif-ui-emblem { width: 7rem; height: 7rem; padding: 0; }
.skif-ui-composition--network .skif-ui-card--dojo .skif-ui-kicker { display: none; }
.skif-ui-composition--network .skif-ui-card__title { font-size: 1.5rem; }
.skif-ui-composition--agenda .skif-section__head h2 {
    max-width: 10ch;
    font-size: clamp(3rem, 7vw, 6rem);
    color: var(--vl-text-primary);
}
.skif-ui-composition--agenda .skif-public-event {
    grid-template-columns: 7rem minmax(0, 1fr);
}
.skif-ui-composition--agenda .skif-public-event__date {
    background: transparent;
    border: 0;
    padding: 0;
    justify-items: start;
}
.skif-ui-composition--agenda .skif-public-event__day { font-size: 4rem; }
.skif-ui-composition--agenda .skif-public-event__body .skif-ui-kicker { display: none; }
.skif-ui-composition--lineage .skif-hero__title {
    font-size: clamp(3.5rem, 6vw, 6rem);
    letter-spacing: -0.035em;
    color: var(--vl-text-primary);
}
.skif-ui-composition--lineage .wp-block-columns { gap: clamp(2rem, 5vw, 5rem); }
.skif-ui-composition--lineage .skif-history-excerpts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
}
.skif-ui-composition--lineage .skif-history-excerpt {
    border-top: 1px solid var(--vl-border-subtle);
    padding-top: 1.5rem;
}
.skif-ui-composition--lineage .skif-history-excerpt__title {
    color: var(--vl-text-primary);
    font-size: 1.5rem;
    line-height: 1.15;
}
.skif-ui-composition--lineage .skif-history-excerpt__excerpt { color: var(--vl-text-muted); font-size: 0.95rem; }
.skif-ui-composition--people .skif-ui-card--person {
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--vl-border-subtle);
    border-radius: 0;
    padding: 0 0 1.5rem;
}
.skif-ui-composition--people .skif-ui-card--person .skif-ui-media {
    margin: 0 0 1.5rem;
    border-radius: 0;
}
.skif-ui-composition--people .skif-ui-card--person .skif-public-photo {
    filter: grayscale(0.85) var(--vl-skin-media-filter);
}
.skif-ui-composition--journal .wp-block-post-template {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    gap: clamp(2rem, 4vw, 4rem);
}
.skif-ui-composition--journal .wp-block-post-template > li:first-child { grid-row: span 2; }
.skif-ui-composition--journal .wp-block-post-template > li:not(:first-child) {
    border-top: 1px solid var(--vl-border-subtle);
    padding-top: 1.5rem;
}
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-title {
    font-size: clamp(2.5rem, 4vw, 4rem);
    line-height: 1;
}
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-featured-image img {
    aspect-ratio: 4 / 3;
    filter: var(--vl-skin-media-filter);
}
.skif-ui-composition--journal .wp-block-post-excerpt { max-width: 42ch; }
@media (max-width: 900px) {
    .skif-ui-composition--network > .wp-block-group.alignwide:not(.skif-section__head) {
        grid-template-columns: 1fr;
    }
    .skif-ui-composition--network .skif-public-summary__spotlight-value {
        display: inline-block;
        margin: 0 1.5rem 0 0;
        vertical-align: middle;
        font-size: 6rem;
    }
}
@media (max-width: 600px) {
    .skif-ui-composition--network .skif-public-dojos .skif-ui-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .skif-ui-composition--agenda .skif-public-event { grid-template-columns: 4rem minmax(0, 1fr); }
    .skif-ui-composition--agenda .skif-public-event__day { font-size: 3rem; }
    .skif-ui-composition--lineage .skif-history-excerpts,
    .skif-ui-composition--journal .wp-block-post-template { grid-template-columns: 1fr; }
    .skif-ui-composition--journal .wp-block-post-template > li:first-child { grid-row: auto; }
}
.skif-ui-composition--journal .wp-block-post-template > li:only-child { grid-column: 1 / -1; }

/* The image belongs to the entire Group surface, below its readable content. */
.skif-ui-reveal-surface { position: relative; isolation: isolate; }
.skif-ui-reveal-surface::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background-image: var(--skif-reveal-image); background-size: cover; background-position: center; opacity: 0; transition: opacity 600ms var(--vl-ease-smooth, ease); border-radius: inherit; }
@media (hover: hover) { .skif-ui-reveal-surface:hover::before { opacity: var(--skif-reveal-opacity, .35); } }
.skif-ui-reveal-surface:focus-within::before { opacity: var(--skif-reveal-opacity, .35); }
@media (hover: none) { .skif-ui-reveal-surface::before { opacity: var(--skif-reveal-opacity, .35); } }
@media (prefers-reduced-motion: reduce) { .skif-ui-reveal-surface::before { transition: none; } }

/* Shared institutional chrome. Content stacking cannot cover the navigation. */
:root { --skif-header-layer: 100000; }
body:not(.wp-admin) .wp-site-blocks > main { position: relative; z-index: 0; isolation: isolate; }
body:not(.wp-admin) .wp-site-blocks > .skif-site-header { position: sticky; top: 0; z-index: var(--skif-header-layer); margin-block: 0; overflow: visible; }
body.admin-bar:not(.wp-admin) .wp-site-blocks > .skif-site-header { top: 32px; }
.skif-header-glass { background: rgba(243,237,226,.93); border-bottom: 1px solid var(--vl-border-subtle); box-shadow: 0 8px 32px rgba(20,18,15,.06); color: var(--wp--preset--color--contrast); }
@supports (backdrop-filter: blur(1px)) { .skif-header-glass { background: rgba(243,237,226,.78); backdrop-filter: blur(20px) saturate(140%); -webkit-backdrop-filter: blur(20px) saturate(140%); } }
.skif-header-glass .wp-block-site-title { font-family: var(--vl-font-family-display); font-size: 1.3rem; letter-spacing: .035em; white-space: nowrap; }
.skif-header-glass .wp-block-site-logo img { max-height: 48px; width: auto; }
.skif-header-glass .wp-block-navigation { font-family: var(--wp--preset--font-family--source-sans-3); font-size: .95rem; font-weight: 600; }
.skif-header-glass .wp-block-navigation__container { gap: clamp(.9rem, 1.6vw, 1.7rem); }
.skif-header-glass .wp-block-navigation-item__content { padding-block: .5rem; text-decoration: none; text-underline-offset: .45em; }
.skif-header-glass .wp-block-navigation-item__content:hover,
.skif-header-glass .wp-block-navigation-item__content:focus-visible { color: var(--vl-color-primary); text-decoration: underline; }
.skif-header-glass .wp-block-navigation .wp-block-navigation__submenu-container { border: 1px solid var(--vl-border-subtle); padding: .65rem; background: var(--wp--preset--color--base); box-shadow: 0 16px 40px rgba(20,18,15,.14); min-width: 13rem; z-index: 2; }
.skif-header-glass .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: .6rem .75rem; }
.skif-header-glass .wp-block-navigation__responsive-container.is-menu-open { z-index: 10; background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); padding: clamp(1.5rem, 5vw, 4rem); }
.skif-header-glass .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { font-family: var(--vl-font-family-display); font-size: clamp(1.6rem, 5vw, 2.8rem); gap: 1rem; }
:where(body:not(.wp-admin)) { scroll-padding-top: 7rem; }
@media (max-width: 1100px) {
 .skif-header-glass .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
 .skif-header-glass .wp-block-navigation__responsive-container-open { display: flex !important; }
}
@media (max-width: 782px) { body.admin-bar:not(.wp-admin) .wp-site-blocks > .skif-site-header { top: 46px; } }
@media (max-width: 600px) { body.admin-bar:not(.wp-admin) .wp-site-blocks > .skif-site-header { top: 0; } }

/* Two editorial stories with generous imagery and a quiet typographic hierarchy. */
.skif-ui-composition--journal { background: var(--wp--preset--color--base); }
.skif-ui-composition--journal .wp-block-post-template { grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); align-items: start; counter-reset: skif-story; }
.skif-ui-composition--journal .wp-block-post-template > li { counter-increment: skif-story; min-width: 0; }
.skif-ui-composition--journal .wp-block-post-template > li:first-child { grid-row: auto; }
.skif-ui-composition--journal .wp-block-post-template > li:not(:first-child) { border: 0; padding-top: 3rem; }
.skif-ui-composition--journal .skif-news-card { border: 0; border-radius: 0; background: transparent; box-shadow: none; padding: 0; }
.skif-ui-composition--journal .wp-block-post-featured-image { margin: 0 0 1.4rem; overflow: hidden; background: var(--vl-border-subtle); }
.skif-ui-composition--journal .wp-block-post-featured-image img { aspect-ratio: 3 / 2; object-fit: cover; border-radius: 0; filter: var(--vl-skin-media-filter); }
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-featured-image img { aspect-ratio: 3 / 2; }
.skif-ui-composition--journal .wp-block-post-title { font-size: clamp(2rem, 3vw, 3.2rem); line-height: 1.05; margin-block: 1rem; }
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-title { font-size: clamp(2.4rem, 3.6vw, 3.8rem); line-height: 1.05; }
.skif-ui-composition--journal .wp-block-post-title a { text-decoration: none; }
.skif-ui-composition--journal .wp-block-post-title a:hover { color: var(--vl-color-primary); }
.skif-ui-composition--journal .skif-news-card__cat { font-size: .75rem; text-transform: uppercase; letter-spacing: .1em; color: var(--vl-color-primary); }
.skif-ui-composition--journal .wp-block-post-date { font-size: .8rem; opacity: .7; }
.skif-ui-composition--journal .wp-block-read-more { display: inline-block; margin-top: 1rem; padding-block: .5rem; border-bottom: 1px solid currentColor; text-decoration: none; }
.skif-ui-composition--journal .wp-block-read-more::after { content: ' ↗'; }
@media (max-width: 700px) { .skif-ui-composition--journal .wp-block-post-template { grid-template-columns: 1fr; } .skif-ui-composition--journal .wp-block-post-template > li:not(:first-child) { padding-top: 1.5rem; border-top: 1px solid var(--vl-border-subtle); } }

.skif-footer-editorial { position: relative; background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); padding-block: clamp(3rem, 7vw, 7rem) 2rem; }
.skif-footer-editorial::before { content: ''; position: absolute; inset: 0 0 auto; height: 3px; background: var(--vl-color-primary); transform-origin: left center; pointer-events: none; }
@keyframes skif-footer-rule-in { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@supports (view-timeline-name: --skif-footer-scene) {
  @media (prefers-reduced-motion: no-preference) {
    .skif-footer-editorial { view-timeline-name: --skif-footer-scene; view-timeline-axis: block; }
    .skif-footer-editorial::before { animation: skif-footer-rule-in 1ms linear both; animation-timeline: --skif-footer-scene; animation-range: entry 0% cover 20%; }
  }
}
.skif-footer-editorial .skif-footer-prologue { margin-bottom: clamp(2.5rem, 5vw, 5rem); }
.skif-footer-editorial .skif-footer-prologue .skif-footer-heading { margin-bottom: 0; }
.skif-footer-editorial a { color: inherit; text-underline-offset: .3em; }
.skif-footer-editorial a:hover { color: var(--vl-color-primary); }
.skif-footer-editorial .skif-footer-heading { font-family: var(--vl-font-family-display); font-size: clamp(3.4rem, 7vw, 7rem); line-height: .95; text-transform: uppercase; max-width: 14ch; margin: 0 0 3rem; }
.skif-footer-editorial .wp-block-columns { gap: clamp(2rem, 5vw, 5rem); }
.skif-footer-editorial .wp-block-site-title { font-size: 1.6rem; }
.skif-footer-editorial .wp-block-site-tagline { font-size: 1rem; max-width: 32ch; opacity: .7; }
.skif-footer-editorial .wp-block-heading:not(.skif-footer-heading) { font-family: var(--wp--preset--font-family--source-sans-3); font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--vl-color-primary); }
.skif-footer-editorial .wp-block-navigation { font-size: 1rem; }
.skif-footer-editorial .wp-block-navigation__container { gap: .7rem; }
.skif-footer-editorial .wp-block-search__label { font-size: .9rem; }
.skif-footer-editorial .wp-block-search__inside-wrapper { border-color: rgba(243,237,226,.3); padding: .35rem; margin-top: .65rem; }
.skif-footer-editorial .wp-block-search__input { min-width: 0; background: transparent; color: inherit; border: 0; }
.skif-footer-editorial .wp-block-search__button { background: var(--vl-color-primary); color: var(--wp--preset--color--base); font-size: .85rem; border: 0; padding: .7rem; }
.skif-footer-colophon { margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid rgba(243,237,226,.2); font-size: .8rem; opacity: .7; }
/* Keep blur on a separate plane so fixed mobile overlays use the viewport. */
.skif-header-glass { position: relative; isolation: isolate; background: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; }
.skif-header-glass::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: rgba(243,237,226,.93); }
@supports (backdrop-filter: blur(1px)) { .skif-header-glass::before { background: rgba(243,237,226,.78); backdrop-filter: blur(20px) saturate(140%); -webkit-backdrop-filter: blur(20px) saturate(140%); } }
.skif-footer-editorial .wp-block-site-tagline { color: var(--wp--preset--color--base); opacity: .72; }
.skif-footer-editorial .wp-block-search__input { border-bottom: 1px solid rgba(243,237,226,.4); border-radius: 0; }
html { scroll-padding-top: 7rem; }
.skif-ui-composition--journal .wp-block-post-excerpt { text-align: left; margin-inline: 0; }

/* News as an expressive four-story composition, using Skin and motion tokens. */
.skif-ui-composition--journal .wp-block-post-template { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem; align-items: stretch; }
.skif-ui-composition--journal .wp-block-post-template > li:not(:first-child) { padding: 0; border: 0; }
.skif-ui-composition--journal .skif-news-card { height: 100%; box-sizing: border-box; padding: 1.25rem 1.25rem 1.75rem; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-lg, 1rem); background: var(--wp--preset--color--base); overflow: hidden; box-shadow: 0 8px 24px rgba(20,18,15,.04); transition: box-shadow var(--vl-transition-normal), border-color var(--vl-transition-normal); }
.skif-ui-composition--journal .skif-news-card:hover,
.skif-ui-composition--journal .skif-news-card:focus-within { border-color: var(--vl-color-primary); box-shadow: 0 20px 48px rgba(20,18,15,.12); }
.skif-ui-composition--journal .wp-block-post-featured-image { border-radius: var(--vl-radius-md, .65rem); margin-bottom: 1.5rem; }
.skif-ui-composition--journal .wp-block-post-featured-image img { transition: scale var(--vl-transition-slow); }
@media (hover:hover) { .skif-ui-composition--journal .skif-news-card:hover .wp-block-post-featured-image img { scale: 1.04; } }
.skif-ui-composition--journal .skif-news-card__cat { display: inline-block; padding: .4rem .7rem; background: var(--vl-color-primary); color: var(--wp--preset--color--base); border-radius: 100px; line-height: 1.2; }
.skif-ui-composition--journal .skif-news-card__cat a { color: inherit; text-decoration: none; }
.skif-ui-composition--journal .wp-block-post-title,
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-title { font-size: clamp(1.8rem, 2.8vw, 3rem); line-height: 1.08; }
.skif-ui-composition--journal .wp-block-post-template > li:first-child .skif-news-card { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); }
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-title a,
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-excerpt,
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-excerpt p { color: var(--wp--preset--color--base); }
.skif-ui-composition--journal .wp-block-post-template > li:nth-child(4) .skif-news-card { background: color-mix(in srgb,var(--vl-color-primary) 7%,var(--wp--preset--color--base)); }
.skif-ui-composition--journal .wp-block-post-excerpt { margin-inline: 0; }
.skif-ui-composition--learning { background: var(--wp--preset--color--accent-6, #e8dfd0); }
.skif-ui-composition--learning .skif-course-stats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem; border-block: 1px solid var(--vl-border-subtle); padding-block: 1.5rem; margin-block: 2rem 1rem; }
.skif-course-stats p { margin: 0; }
.skif-course-stats strong { display: block; font-family: var(--vl-font-family-display); font-size: clamp(4rem,7vw,7rem); line-height: 1; color: var(--vl-color-primary); }
.skif-course-stats small { font-size: .4em; }
.skif-course-stats p > span { display: block; font-size: .85rem; margin-top: .75rem; }
.skif-course-note { max-width: 65ch; font-size: .85rem; }
.skif-ui-composition--learning .skif-public-courses .skif-ui-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin-top: 2rem; }
.skif-ui-composition--learning .skif-public-courses .skif-ui-card { background: var(--wp--preset--color--base); padding: 1.5rem; border-radius: var(--vl-radius-md,.65rem); border-top: 3px solid var(--vl-color-primary); }
@media(max-width:700px) { .skif-ui-composition--journal .wp-block-post-template, .skif-ui-composition--learning .skif-public-courses .skif-ui-list { grid-template-columns: 1fr; } }
@media(prefers-reduced-motion:reduce) { .skif-ui-composition--journal .skif-news-card,.skif-ui-composition--journal .wp-block-post-featured-image img { transition: none; } .skif-ui-composition--journal .skif-news-card:hover .wp-block-post-featured-image img { scale: 1; } }
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-post-date,
.skif-ui-composition--journal .wp-block-post-template > li:first-child .wp-block-read-more { color: var(--wp--preset--color--base); }
.skif-ui-composition--learning > .wp-block-group > .wp-block-heading { font-family: var(--vl-font-family-display); font-size: clamp(2.5rem,5vw,5rem); line-height: 1.05; }

/* Mobile overlay has its own hierarchy; desktop dropdown styles stop here. */
.skif-header-glass .wp-block-navigation__responsive-container.is-menu-open { padding: 0; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; }
.skif-header-glass .is-menu-open .wp-block-navigation__responsive-close { width: 100%; max-width: 44rem; margin-inline: auto; }
.skif-header-glass .is-menu-open .wp-block-navigation__responsive-dialog { margin: 0; padding: 0 1.5rem max(2rem, env(safe-area-inset-bottom)); }
.skif-header-glass .is-menu-open .wp-block-navigation__responsive-dialog::before { content: 'SKIF BRASIL'; display: block; padding-block: 1.5rem; font-family: var(--vl-font-family-display); font-size: 1.2rem; letter-spacing: .08em; border-bottom: 1px solid var(--vl-border-subtle); }
.skif-header-glass .is-menu-open .wp-block-navigation__responsive-container-close { position: fixed; top: max(1rem, env(safe-area-inset-top)); right: max(1rem, env(safe-area-inset-right)); width: 44px; height: 44px; display: grid; place-items: center; z-index: 20; background: var(--wp--preset--color--base); border: 1px solid var(--vl-border-subtle); border-radius: 50%; }
.skif-header-glass .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 1rem; align-items: stretch; gap: 1.5rem; }
.skif-header-glass .is-menu-open .wp-block-navigation__responsive-container-content > .wp-block-navigation__container { width: 100%; align-items: stretch !important; gap: 0; font-size: 1.4rem; line-height: 1.25; }
.skif-header-glass .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item { display: block; width: 100%; border-bottom: 1px solid var(--vl-border-subtle); text-align: left; }
.skif-header-glass .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { display: flex; align-items: center; min-height: 48px; padding: .5rem 0; width: 100%; box-sizing: border-box; }
.skif-header-glass .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container { position: static; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; padding: 0 0 .75rem 1rem !important; margin: 0 0 .5rem; border: 0; border-left: 2px solid var(--vl-color-primary); border-radius: 0; box-shadow: none; background: transparent; align-items: stretch !important; gap: 0; font-family: var(--wp--preset--font-family--source-sans-3); font-size: 1rem; font-weight: 400; line-height: 1.4; text-transform: none; letter-spacing: 0; }
.skif-header-glass .is-menu-open .wp-block-navigation__submenu-container > .wp-block-navigation-item { width: 100%; text-align: left; }
.skif-header-glass .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container .wp-block-navigation-item__content { display: flex; align-items: center; min-height: 44px; padding: .4rem 0; width: 100%; box-sizing: border-box; white-space: normal; overflow-wrap: anywhere; }
.skif-header-glass .is-menu-open .wp-block-buttons { width: 100%; }
.skif-header-glass .is-menu-open .wp-block-button { width: 100%; }
.skif-header-glass .is-menu-open .wp-block-button__link { display: block; text-align: center; padding: 1rem; }
.skif-header-glass .is-menu-open a:focus-visible,
.skif-header-glass .is-menu-open button:focus-visible { outline: 2px solid var(--vl-color-primary); outline-offset: 3px; }
/* Core's opening transform must not capture the fixed close control. */
.skif-header-glass .wp-block-navigation__responsive-container.is-menu-open { animation: none; transform: none; }

/* Explicit mobile disclosures; without JS the native submenu stays available. */
.skif-mobile-submenu-toggle { display: none; }
.skif-header-glass .is-menu-open .wp-block-navigation__container > .skif-mobile-disclosure { display: grid; grid-template-columns: minmax(0,1fr) 44px; align-items: start; }
.skif-header-glass .is-menu-open .skif-mobile-disclosure > .skif-mobile-submenu-toggle { display: grid; place-items: center; width: 44px; height: 48px; border: 0; background: transparent; color: inherit; cursor: pointer; padding: 0; }
.skif-header-glass .is-menu-open .skif-mobile-submenu-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.skif-header-glass .is-menu-open .skif-mobile-disclosure > .wp-block-navigation__submenu-container { grid-column: 1 / -1; }
.skif-header-glass .is-menu-open .skif-mobile-disclosure:not(.skif-mobile-submenu-expanded) > .wp-block-navigation__submenu-container { display: none !important; }
.skif-header-glass .is-menu-open .skif-mobile-disclosure > .wp-block-navigation__submenu-icon { display: none !important; }

/* One editorial frame for pages, articles, archives and searches. */
.skif-editorial-shell { margin-block: 0; padding-block: clamp(3rem,7vw,7rem); background: var(--wp--preset--color--base); }
.skif-editorial-masthead { padding-block: 0 clamp(2rem,5vw,4rem); margin-bottom: clamp(2rem,4vw,4rem); border-bottom: 1px solid var(--vl-border-subtle); }
.skif-editorial-eyebrow { font-family: var(--wp--preset--font-family--source-sans-3); font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; margin: 0 0 1.5rem; }
.skif-editorial-eyebrow a { color: var(--vl-color-primary); text-decoration: none; }
.skif-editorial-masthead :is(h1,.wp-block-post-title,.wp-block-query-title) { font-family: var(--vl-font-family-display); font-size: clamp(3rem,7vw,7rem); line-height: 1.03; letter-spacing: -.025em; max-width: 18ch; text-wrap: balance; margin-block: 0 1.5rem; overflow-wrap: anywhere; }
.skif-editorial-masthead .wp-block-term-description { max-width: 60ch; font-size: 1.1rem; }
.skif-editorial-feature { margin-block: 0 3rem; }
.skif-editorial-feature img { border-radius: var(--vl-radius-md,.65rem); }
.skif-editorial-content { font-size: 1.1rem; line-height: 1.75; color: var(--wp--preset--color--contrast); }
.skif-editorial-content > :not(.alignwide):not(.alignfull) { max-width: 76ch; margin-inline: auto; }
.skif-editorial-content > p:first-child { font-size: clamp(1.2rem,2vw,1.5rem); line-height: 1.6; margin-bottom: 2.5rem; }
.skif-editorial-content :is(h2,h3,h4) { font-family: var(--vl-font-family-display); line-height: 1.15; margin-block: 2.5rem 1rem; text-wrap: balance; }
.skif-editorial-content h2 { font-size: clamp(1.8rem,3vw,3rem); }
.skif-editorial-content h3 { font-size: clamp(1.5rem,2.5vw,2.2rem); }
.skif-editorial-content a { text-underline-offset: .25em; overflow-wrap: anywhere; }
.skif-editorial-content img { max-width: 100%; height: auto; }
.skif-editorial-content figure { max-width: 100%; }
.skif-editorial-content blockquote { padding: 1.5rem 2rem; border-left: 3px solid var(--vl-color-primary); background: var(--wp--preset--color--accent-6); margin-inline: 0; }
.skif-editorial-content :is(ul,ol) { padding-inline-start: 1.5rem; }
.skif-editorial-content li { margin-bottom: .6rem; }
.skif-editorial-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; font-size: .95rem; }
.skif-editorial-content :is(td,th) { padding: .85rem; border-bottom: 1px solid var(--vl-border-subtle); }
.skif-editorial-content th { text-align: left; background: var(--wp--preset--color--accent-6); }
.skif-editorial-content .row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 3rem; }
.skif-editorial-content .row > div { min-width: 0; }
.skif-editorial-content .wpcf7 :is(input:not([type=submit]):not([type=checkbox]):not([type=radio]),select,textarea) { width: 100%; box-sizing: border-box; padding: .85rem; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-sm,.25rem); background: var(--wp--preset--color--base); color: inherit; font: inherit; }
.skif-editorial-content .wpcf7 input[type=submit] { border: 0; background: var(--vl-color-primary); color: var(--wp--preset--color--base); padding: .85rem 1.5rem; border-radius: var(--vl-radius-sm,.25rem); font: inherit; cursor: pointer; }
.skif-editorial-content .wpcf7 :is(input,select,textarea):focus-visible { outline: 2px solid var(--vl-color-primary); outline-offset: 3px; }
.skif-editorial-content > :is(.skif-ui-composition--learning,.skif-ui-composition--people,.skif-ui-composition--agenda,.skif-editorial-schools) { padding: clamp(1.5rem,3vw,3rem); border-radius: var(--vl-radius-lg,1rem); box-sizing: border-box; }
.skif-editorial-schools .skif-ui-list--list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.skif-editorial-schools .skif-ui-card--dojo { flex-direction: column; text-align: center; justify-content: start; padding: 2rem 1rem; background: transparent; border: 0; border-bottom: 1px solid var(--vl-border-subtle); border-radius: 0; box-shadow: none; }
.skif-editorial-schools .skif-ui-card--dojo .skif-ui-media { margin-inline: auto; }
.skif-editorial-shell .wp-block-query-pagination { margin-top: 3rem; padding-block: 1.5rem; border-top: 1px solid var(--vl-border-subtle); }
@media(max-width:700px) {
 .skif-editorial-content .row { grid-template-columns: 1fr; gap: 2rem; }
 .skif-editorial-schools .skif-ui-list--list { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .skif-editorial-content > :is(.skif-ui-composition--learning,.skif-ui-composition--people,.skif-ui-composition--agenda,.skif-editorial-schools) { padding: 1rem; }
 .skif-editorial-content [style*="margin-left"] { margin-left: 0 !important; }
}
.skif-editorial-content iframe { max-width: 100%; }
.skif-editorial-content audio { min-width: 0; max-width: 100%; width: 100%; }
.skif-editorial-content iframe[src*="google.com/maps"] { width: 100%; min-height: 320px; border-radius: var(--vl-radius-md,.65rem); }
.skif-editorial-content > .row { max-width: var(--wp--style--global--wide-size); }
.skif-editorial-content { overflow-wrap: anywhere; }

/* Institutional chapters: reusable native Groups, Details and resource cards. */
.skif-institution-navigation { padding: 1.5rem 0 2rem; border-bottom: 1px solid var(--vl-border-subtle); }
.skif-institution-chapter-nav { display: flex; flex-wrap: wrap; gap: .6rem; }
.skif-institution-chapter-nav a { padding: .6rem 1rem; border: 1px solid var(--vl-border-subtle); border-radius: 100px; font-size: .9rem; text-decoration: none; }
.skif-institution-chapter-nav a:hover { color: var(--wp--preset--color--base); background: var(--vl-color-primary); }
:is(.skif-institution-chapter,.is-style-skif-editorial-chapter,.is-style-skif-editorial-spotlight) { position: relative; padding: clamp(1.5rem,4vw,4rem); margin-block: 2rem; background: var(--wp--preset--color--base); border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-lg,1rem); display: flow-root; }
.skif-institution-index { font-family: var(--vl-font-family-display); font-size: 2.5rem; color: var(--vl-color-primary); line-height: 1; margin: 0 0 1rem; }
:is(.skif-institution-chapter,.is-style-skif-editorial-chapter,.is-style-skif-editorial-spotlight) h2:first-of-type { margin-top: 0; }
:is(.skif-institution-chapter--mission,.is-style-skif-editorial-spotlight) { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); border: 0; }
:is(.skif-institution-chapter--mission,.is-style-skif-editorial-spotlight) :is(p,li,a) { color: inherit; }
:is(.skif-institution-chapter--mission,.is-style-skif-editorial-spotlight) p:not(.skif-institution-index) { font-size: clamp(1.2rem,2.5vw,1.8rem); line-height: 1.5; }
.skif-institution-chapter--history { background: var(--wp--preset--color--accent-6); }
:is(.skif-institution-chapter,.is-style-skif-editorial-chapter,.is-style-skif-editorial-spotlight) figure.alignright { float: right; width: min(35%,18rem); margin: 0 0 1.5rem 2rem; }
:is(.skif-institution-chapter,.is-style-skif-editorial-chapter,.is-style-skif-editorial-spotlight) figure.is-resized { margin: 0 0 2rem; }
:is(.skif-institution-chapter,.is-style-skif-editorial-chapter,.is-style-skif-editorial-spotlight) img { border-radius: var(--vl-radius-md,.65rem); }
.skif-institution-chapter--principles .wp-block-list { counter-reset: skif-principle; list-style: none; padding: 0; }
.skif-institution-chapter--principles .wp-block-list > li { counter-increment: skif-principle; padding-block: 1.5rem; border-top: 1px solid var(--vl-border-subtle); }
.skif-institution-chapter--principles .wp-block-list > li::before { content: '0' counter(skif-principle) ' / '; color: var(--vl-color-primary); font-family: var(--vl-font-family-display); }
:is(.skif-institution-faq,.is-style-skif-editorial-faq) { border-bottom: 1px solid var(--vl-border-subtle); padding: 1rem 0; }
:is(.skif-institution-faq,.is-style-skif-editorial-faq) > summary { font-family: var(--vl-font-family-display); font-size: clamp(1.3rem,2.5vw,2rem); line-height: 1.2; padding-block: .75rem; cursor: pointer; }
:is(.skif-institution-faq,.is-style-skif-editorial-faq)[open] > summary { color: var(--vl-color-primary); margin-bottom: 1.5rem; }
:is(.skif-institution-faq,.is-style-skif-editorial-faq) p { margin-left: 0 !important; }
:is(.skif-institution-faq,.is-style-skif-editorial-faq) span[style*="color"] { color: inherit !important; }
:is(.skif-institution-faq,.is-style-skif-editorial-faq) summary:focus-visible { outline: 2px solid var(--vl-color-primary); outline-offset: 4px; }
.skif-institution-resources { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
.skif-institution-resources > .skif-resource-card { width: auto !important; margin: 0 !important; padding: 2rem; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-lg,1rem); background: var(--wp--preset--color--accent-6); }
.skif-resource-card h3 { margin-top: 0; }
.skif-resource-links { display: flex; flex-wrap: wrap; gap: .75rem; }
.skif-resource-links a { display: inline-block; font-size: .9rem; padding: .6rem 1rem; border: 1px solid var(--vl-color-primary); border-radius: 100px; text-decoration: none; }
.skif-institution-biography .infobox_v2 { float: right; max-width: 45%; margin: 0 0 2rem 2rem; }
.skif-ui-card--course .skif-ui-kicker { display: inline-block; margin-top: 0; padding: .3rem .65rem; border-radius: 100px; color: var(--wp--preset--color--base); background: var(--vl-color-primary); }
.skif-ui-card--course h3.skif-ui-card__title { margin: 1rem 0; font-size: 1.5rem; }
@media(max-width:700px) {
 .skif-institution-resources { grid-template-columns: 1fr; }
 :is(.skif-institution-chapter,.is-style-skif-editorial-chapter,.is-style-skif-editorial-spotlight) figure.alignright { float: none; width: 100%; max-width: 18rem; margin: 1.5rem 0; }
 .skif-institution-biography .infobox_v2 { float: none; max-width: 100%; margin: 0 0 2rem; }
}
:is(.skif-institution-chapter,.is-style-skif-editorial-chapter,.is-style-skif-editorial-spotlight) span[style*="font-size"] { font-size: inherit !important; }
:is(.skif-institution-chapter--mission,.is-style-skif-editorial-spotlight) h2 { color: var(--wp--preset--color--accent-2); }

/* A SKIF: independently gated editorial bento rows, all native Gutenberg blocks. */
.skif-editorial-content > .skif-about-grid { max-width: var(--wp--style--global--wide-size); }
.skif-about-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: clamp(.8rem,1.5vw,1.5rem); margin-block: clamp(.8rem,1.5vw,1.5rem); }
.skif-about-grid > .skif-about-card { grid-column: span 12; min-width: 0; margin: 0; }
.skif-about-card { position: relative; display: flow-root; box-sizing: border-box; padding: clamp(1.5rem,3.5vw,3.4rem); overflow: hidden; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-lg,1rem); background: var(--vl-bg-surface,var(--wp--preset--color--base)); color: var(--wp--preset--color--contrast); isolation: isolate; }
.skif-about-card::before { content: ''; position: absolute; inset: 0 0 auto; height: 3px; background: var(--vl-color-primary); transform: scaleX(.18); transform-origin: left; opacity: .55; transition: transform .65s ease,opacity .65s ease; }
.skif-about-card:hover::before { transform: scaleX(1); opacity: 1; }
.skif-about-card__index { font-family: var(--vl-font-family-display); color: var(--vl-color-primary); font-size: .95rem; letter-spacing: .16em; margin: 0 0 clamp(1.5rem,3vw,3rem); }
.skif-about-card h2 { max-width: 16ch; margin: 0 0 1.4rem; font-size: clamp(2rem,3.6vw,4.2rem); line-height: 1.04; }
.skif-about-card p { max-width: 63ch; line-height: 1.65; }
.skif-about-card p:last-child { margin-bottom: 0; }
.skif-about-card .wp-block-image { margin: 0 0 1.5rem; }
.skif-about-card .wp-block-image img { display: block; max-width: 100%; height: auto; border-radius: var(--vl-radius-md,.65rem); }
.skif-about-card .wp-element-caption { font-size: .78rem; letter-spacing: .06em; text-transform: uppercase; margin-top: .65rem; text-align: left; }
.skif-about-card__portrait img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: center 25%; filter: saturate(.8); transition: transform .9s cubic-bezier(.22,1,.36,1), filter .9s ease; }
.skif-about-card:hover .skif-about-card__portrait img { transform: scale(1.035); filter: saturate(1); }
.skif-about-card--intro { grid-column: span 7 !important; min-height: 32rem; background: var(--wp--preset--color--accent-6); }
.skif-about-card--intro h2 { max-width: 12ch; }
.skif-about-card--intro .skif-about-card__emblem { width: clamp(5rem,9vw,8rem); float: right; margin: 0 0 1rem 1rem; }
.skif-about-card--intro .skif-about-card__emblem img { border-radius: 50%; }
.skif-about-card--mission { grid-column: span 5 !important; display: flex; flex-direction: column; background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); border-color: transparent; }
.skif-about-card--mission h2 { color: inherit; }
.skif-about-card--mission .skif-about-card__index { color: var(--wp--preset--color--accent-2); }
.skif-about-card--mission .skif-about-card__statement { font-family: var(--vl-font-family-display); font-size: clamp(1.35rem,2.1vw,2.2rem); line-height: 1.35; }
.skif-about-card--mission .skif-about-card__aside { margin-top: auto; padding-top: 2.5rem; border-top: 1px solid currentColor; opacity: .75; font-size: .92rem; }
.skif-about-card--history { grid-column: span 8 !important; }
.skif-about-card--history .skif-about-card__portrait { float: right; width: min(35%,16rem); margin: 0 0 1.5rem 2rem; }
.skif-about-card--history .skif-about-card__portrait img { aspect-ratio: 4 / 5; }
.skif-about-card--philosophy { grid-column: span 4 !important; background: var(--wp--preset--color--accent-6); }
.skif-about-card--philosophy h2 { font-size: clamp(2rem,3vw,3.5rem); }
.skif-about-card--world { grid-column: span 5 !important; background: var(--wp--preset--color--accent-6); }
.skif-about-card--world .skif-about-card__portrait { float: right; width: min(38%,11rem); margin: 0 0 1rem 1.5rem; }
.skif-about-card--world .skif-about-card__portrait img { aspect-ratio: 1; }
.skif-about-card--rei { grid-column: span 7 !important; }
.skif-about-card--rei .skif-about-card__calligraphy { float: right; width: min(25%,8rem); margin: 0 0 1.5rem 2rem; }
.skif-about-card--rei .skif-about-card__romanization { font-family: var(--vl-font-family-display); font-size: clamp(1.5rem,2.5vw,2.5rem); color: var(--vl-color-primary); }
.skif-about-card__aside { font-size: 1.05rem; }
.skif-about-card__source { font-size: .76rem; opacity: .7; margin-top: 2rem; }
.skif-about-card--dojo { grid-column: span 12 !important; background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); }
.skif-about-card--dojo h2 { max-width: 18ch; color: inherit; }
.skif-about-card--dojo .skif-about-card__index { color: var(--wp--preset--color--accent-2); }
.skif-about-card--dojo > p:not(.skif-about-card__index) { font-size: 1.15rem; }
.skif-about-principles { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: clamp(.7rem,1.2vw,1.2rem); list-style: none; padding: 0 !important; margin: 2.5rem 0; counter-reset: skif-about-principle; }
.skif-about-principles > li { counter-increment: skif-about-principle; min-width: 0; margin: 0; padding: 1.3rem 1rem; border: 1px solid currentColor; border-radius: var(--vl-radius-md,.65rem); background: rgb(255 255 255 / .055); transition: transform .55s cubic-bezier(.22,1,.36,1),background .55s ease; }
.skif-about-principles > li:hover { transform: translateY(-.35rem); background: rgb(255 255 255 / .11); }
.skif-about-principles > li::before { content: '0' counter(skif-about-principle); display: block; color: var(--wp--preset--color--accent-2); font-family: var(--vl-font-family-display); font-size: 2rem; margin-bottom: 2rem; }
.skif-about-principles :is(strong,.skif-about-principle__original) { display: block; overflow-wrap: anywhere; }
.skif-about-principle__original { opacity: .7; font-size: .74rem; line-height: 1.5; margin-bottom: .8rem; }
.skif-about-principles strong { font-family: var(--vl-font-family-display); font-size: clamp(1.1rem,1.4vw,1.55rem); line-height: 1.25; font-weight: 500; }
.skif-about-card__audio { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding-top: 1.5rem; border-top: 1px solid currentColor; }
.skif-about-card__audio-label { margin: 0; font-size: .9rem; }
.skif-about-card__audio .wp-block-audio { width: min(100%,25rem); margin: 0; }
.skif-about-card__audio audio { display: block; width: 100%; }
@media (max-width: 900px) {
 .skif-about-card--intro,.skif-about-card--mission,.skif-about-card--history,.skif-about-card--philosophy,.skif-about-card--world,.skif-about-card--rei { grid-column: span 12 !important; min-height: 0; }
 .skif-about-principles { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
 .skif-about-card { padding: 1.5rem; }
 .skif-about-card--history .skif-about-card__portrait,.skif-about-card--world .skif-about-card__portrait,.skif-about-card--rei .skif-about-card__calligraphy { float: none; margin: 0 0 1.5rem; }
 .skif-about-card--history .skif-about-card__portrait { width: min(55%,11rem); }
 .skif-about-card--world .skif-about-card__portrait { width: min(55%,10rem); }
 .skif-about-card--rei .skif-about-card__calligraphy { width: 5rem; }
 .skif-about-principles { grid-template-columns: 1fr; gap: .6rem; }
 .skif-about-principles > li { padding: 1rem; }
 .skif-about-principles > li::before { margin-bottom: .6rem; }
 .skif-about-card__audio { display: block; }
 .skif-about-card__audio .wp-block-audio { margin-top: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
 .skif-about-card::before,.skif-about-card__portrait img,.skif-about-principles > li { transition: none; }
 .skif-about-card:hover .skif-about-card__portrait img,.skif-about-principles > li:hover { transform: none; }
}

/* Interior editorial chapters share the Home's Skin, rhythm and motion hooks. */
.postid-136 .skif-editorial-feature { display: none; }
.skif-editorial-content > .skif-history-story { max-width: var(--wp--style--global--wide-size); }
.skif-history-story { margin-top: 2rem; }
.skif-history-story :is(h2,p,figure) { margin-top: 0; }
.skif-history-overline { font-family: var(--vl-font-family-display); font-size: .82rem; font-weight: 600; letter-spacing: .17em; text-transform: uppercase; color: var(--vl-color-primary); }
.skif-history-hero { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr); min-height: 34rem; overflow: hidden; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-lg,1rem); background: var(--wp--preset--color--accent-6); }
.skif-history-hero__copy { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: clamp(2rem,5vw,5rem); }
.skif-history-hero h2 { max-width: 13ch; margin: 1rem 0 2rem; font-size: clamp(3rem,5.6vw,6.5rem); line-height: .98; }
.skif-history-hero__copy p { max-width: 55ch; }
.skif-history-lead { font-size: clamp(1.2rem,1.8vw,1.6rem); line-height: 1.5; }
.skif-history-hero__media { min-width: 0; min-height: 0; background: var(--wp--preset--color--contrast); }
.skif-history-portrait { width: 100%; height: 100%; margin: 0; position: relative; }
.skif-history-portrait img { display: block; width: 100%; height: 100%; max-height: 48rem; object-fit: cover; object-position: center 12%; filter: grayscale(1); transition: filter .8s ease,transform .8s cubic-bezier(.22,1,.36,1); }
.skif-history-hero:hover .skif-history-portrait img { filter: grayscale(.65); transform: scale(1.025); }
.skif-history-portrait .wp-element-caption { position: absolute; left: 1.5rem; bottom: 1.5rem; max-width: calc(100% - 3rem); margin: 0; padding: .45rem .75rem; background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); font-family: var(--vl-font-family-display); font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; }
.skif-history-timeline { padding: 2.2rem 0 2.6rem; border-bottom: 1px solid var(--vl-border-subtle); }
.skif-history-timeline .skif-history-overline { margin-bottom: 1rem; }
.skif-history-timeline__links { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.skif-history-timeline__links a { display: flex; flex-direction: column; gap: .2rem; padding: 1rem 0; border-top: 2px solid var(--vl-color-primary); text-decoration: none; color: inherit; transition: padding-left .4s ease,background .4s ease; }
.skif-history-timeline__links a:hover { padding-left: .6rem; background: var(--wp--preset--color--accent-6); }
.skif-history-timeline__links strong { font-family: var(--vl-font-family-display); font-size: clamp(1.65rem,3vw,3rem); line-height: 1; }
.skif-history-timeline__links span { font-size: .82rem; letter-spacing: .08em; text-transform: uppercase; }
.skif-history-chapter { display: grid; grid-template-columns: minmax(9rem,.28fr) minmax(0,.72fr); gap: clamp(2rem,5vw,6rem); padding: clamp(3.5rem,6vw,7rem) clamp(1.5rem,3vw,3rem); border-bottom: 1px solid var(--vl-border-subtle); scroll-margin-top: 7rem; }
.skif-history-chapter__rail { align-self: start; border-top: 2px solid var(--vl-color-primary); padding-top: 1rem; }
.skif-history-chapter__number { margin: 0 0 1.3rem; color: var(--vl-color-primary); font-family: var(--vl-font-family-display); font-size: clamp(3rem,6vw,6rem); line-height: 1; }
.skif-history-chapter__kicker { font-family: var(--vl-font-family-display); font-size: .82rem; letter-spacing: .15em; text-transform: uppercase; }
.skif-history-chapter__body { max-width: 66ch; }
.skif-history-chapter h2 { max-width: 17ch; font-size: clamp(2.4rem,4vw,4.7rem); line-height: 1.05; margin: 0 0 2rem; }
.skif-history-chapter__body > p { font-size: clamp(1.05rem,1.4vw,1.2rem); line-height: 1.7; }
.skif-history-chapter__body > p + p { margin-top: 1.5rem; }
.skif-history-chapter--sand { padding-inline: clamp(1.5rem,3vw,3rem); background: var(--wp--preset--color--accent-6); border-radius: var(--vl-radius-lg,1rem); border-bottom: 0; }
.skif-history-tiger { float: right; width: min(30%,12rem); margin: .25rem 0 1.5rem 2rem; }
.skif-history-tiger img { display: block; width: 100%; height: auto; }
.skif-history-tiger .wp-element-caption { font-size: .75rem; line-height: 1.35; text-align: center; }
.skif-history-chapter--ink { margin-top: 1.5rem; background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); border-radius: var(--vl-radius-lg,1rem); border-bottom: 0; }
.skif-history-chapter--ink :is(h2,p) { color: inherit; }
.skif-history-chapter--ink .skif-history-chapter__rail { border-color: var(--wp--preset--color--accent-2); }
.skif-history-chapter--ink .skif-history-chapter__number { color: var(--wp--preset--color--accent-2); }
.skif-history-closing { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.45fr); gap: clamp(2rem,4vw,5rem); align-items: end; padding: clamp(2rem,5vw,5rem); margin-top: 2rem; background: var(--wp--preset--color--accent-6); border-radius: var(--vl-radius-lg,1rem); }
.skif-history-closing h2 { max-width: 16ch; font-size: clamp(2.5rem,5vw,5.7rem); line-height: 1.05; }
.skif-history-closing__links { border-top: 2px solid var(--vl-color-primary); padding-top: 1.5rem; }
.skif-history-next a { display: inline-block; padding-bottom: .5rem; border-bottom: 1px solid currentColor; font-family: var(--vl-font-family-display); font-size: 1.2rem; text-transform: uppercase; text-decoration: none; }
.skif-history-source { margin-top: 2rem !important; font-size: .75rem; line-height: 1.55; opacity: .75; }
@media (max-width: 800px) {
 .skif-history-hero { grid-template-columns: 1fr; }
 .skif-history-hero__media { max-height: 35rem; }
 .skif-history-portrait img { height: 35rem; object-position: center 18%; }
 .skif-history-chapter { grid-template-columns: 1fr; gap: 2rem; }
 .skif-history-chapter__rail { display: flex; align-items: baseline; gap: 1.5rem; }
 .skif-history-chapter__number { margin-bottom: 0; }
 .skif-history-closing { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
 .skif-history-hero__copy { padding: 2rem 1.5rem; }
 .skif-history-hero h2 { font-size: clamp(2.7rem,12vw,4.5rem); }
 .skif-history-portrait img { height: 28rem; }
 .skif-history-timeline__links { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .skif-history-chapter { padding-block: 3.5rem; }
 .skif-history-tiger { float: none; width: min(55%,12rem); margin: 0 0 1.5rem; }
 .skif-history-closing { padding: 2rem 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
 .skif-history-portrait img,.skif-history-timeline__links a { transition: none; }
 .skif-history-hero:hover .skif-history-portrait img { transform: none; }
}
/* Biographical chapters: the same Skin and motion contract, with distinct portraits and pacing. */
.skif-editorial-content > .skif-bio-story { max-width: var(--wp--style--global--wide-size); }
.skif-bio-story { margin-top: 2rem; }
.skif-bio-story :is(h2,p,figure) { margin-top: 0; }
.skif-bio-kicker { font-family: var(--vl-font-family-display); font-size: .82rem; letter-spacing: .16em; text-transform: uppercase; color: var(--vl-color-primary); }
.skif-bio-hero { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); min-height: 35rem; overflow: hidden; border-radius: var(--vl-radius-lg,1rem); background: var(--wp--preset--color--accent-6); }
.skif-bio-hero__copy { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: clamp(2rem,5vw,5rem); }
.skif-bio-hero h2 { max-width: 14ch; margin: .8rem 0 2rem; font-size: clamp(2.8rem,5.4vw,6rem); line-height: 1; }
.skif-bio-hero__copy > p { max-width: 52ch; }
.skif-bio-lead { font-size: clamp(1.2rem,1.8vw,1.6rem); line-height: 1.5; }
.skif-bio-hero__image { display: grid; place-items: center; min-width: 0; padding: clamp(1.5rem,3vw,3rem); background: var(--wp--preset--color--contrast); }
.skif-bio-portrait { max-width: min(100%,28rem); margin: 0; }
.skif-bio-portrait img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: var(--vl-radius-md,.65rem); filter: saturate(.8); transition: transform .8s cubic-bezier(.22,1,.36,1),filter .8s ease; }
.skif-bio-hero:hover .skif-bio-portrait img { transform: scale(1.025); filter: saturate(1); }
.skif-bio-portrait .wp-element-caption { color: var(--wp--preset--color--base); font-family: var(--vl-font-family-display); font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; margin-top: 1rem; }
.skif-bio-hero--furusho { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); }
.skif-bio-hero--furusho h2 { color: inherit; }
.skif-bio-hero--furusho .skif-bio-kicker { color: var(--wp--preset--color--accent-2); }
.skif-bio-hero--furusho .skif-bio-hero__image { position: relative; background: var(--wp--preset--color--accent-6); }
.skif-bio-hero--furusho .skif-bio-hero__image::before { content: '1986'; position: absolute; inset: auto .3rem 0 auto; color: var(--vl-color-primary); font-family: var(--vl-font-family-display); font-size: clamp(7rem,18vw,16rem); line-height: .8; opacity: .11; }
.skif-bio-hero--furusho .skif-bio-portrait { position: relative; z-index: 1; max-width: min(75%,15rem); }
.skif-bio-hero--furusho .skif-bio-portrait img { aspect-ratio: 207 / 243; }
.skif-bio-hero--furusho .skif-bio-portrait .wp-element-caption { color: var(--wp--preset--color--contrast); }
.skif-bio-route { padding: 2.5rem 0; border-bottom: 1px solid var(--vl-border-subtle); }
.skif-bio-route__links { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.skif-bio-route__links a { display: flex; flex-direction: column; gap: .25rem; padding: 1rem 0; border-top: 2px solid var(--vl-color-primary); color: inherit; text-decoration: none; transition: padding-left .4s ease,background .4s ease; }
.skif-bio-route__links a:hover { padding-left: .6rem; background: var(--wp--preset--color--accent-6); }
.skif-bio-route__links strong { font-family: var(--vl-font-family-display); font-size: clamp(1.6rem,3vw,3rem); line-height: 1; }
.skif-bio-route__links span { font-size: .82rem; letter-spacing: .09em; text-transform: uppercase; }
.skif-bio-chapter { display: grid; grid-template-columns: minmax(9rem,.27fr) minmax(0,.73fr); gap: clamp(2rem,5vw,6rem); padding: clamp(3.5rem,6vw,7rem) clamp(1.5rem,3vw,3rem); border-bottom: 1px solid var(--vl-border-subtle); scroll-margin-top: 7rem; }
.skif-bio-chapter__rail { align-self: start; padding-top: 1rem; border-top: 2px solid var(--vl-color-primary); }
.skif-bio-chapter__number { margin: 0 0 1rem; color: var(--vl-color-primary); font-family: var(--vl-font-family-display); font-size: clamp(3rem,6vw,6rem); line-height: 1; }
.skif-bio-chapter__body { max-width: 66ch; }
.skif-bio-chapter h2 { max-width: 18ch; font-size: clamp(2.5rem,4vw,4.8rem); line-height: 1.05; margin: 0 0 2rem; }
.skif-bio-chapter__body > p { font-size: clamp(1.05rem,1.4vw,1.2rem); line-height: 1.7; }
.skif-bio-chapter__body > p + p { margin-top: 1.5rem; }
.skif-bio-chapter--sand { background: var(--wp--preset--color--accent-6); border-radius: var(--vl-radius-lg,1rem); border-bottom: 0; }
.skif-bio-chapter--ink { margin-top: 1.5rem; background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); border-radius: var(--vl-radius-lg,1rem); border-bottom: 0; }
.skif-bio-chapter--ink :is(h2,p) { color: inherit; }
.skif-bio-chapter--ink .skif-bio-chapter__rail { border-color: var(--wp--preset--color--accent-2); }
.skif-bio-chapter--ink .skif-bio-chapter__number { color: var(--wp--preset--color--accent-2); }
.skif-bio-archive { max-width: 100%; margin: 2.5rem 0 0; }
.skif-bio-archive--small { max-width: 18rem; }
.skif-bio-archive img { display: block; width: 100%; height: auto; border-radius: var(--vl-radius-md,.65rem); }
.skif-bio-archive .wp-element-caption { margin-top: .75rem; font-size: .8rem; line-height: 1.4; }
.skif-bio-details { margin: 2rem 0; padding: 1.2rem 1.4rem; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-md,.65rem); }
.skif-bio-details summary { font-family: var(--vl-font-family-display); font-size: 1.25rem; cursor: pointer; }
.skif-bio-details summary:focus-visible { outline: 2px solid var(--vl-color-primary); outline-offset: 4px; }
.skif-bio-details p { margin: 1rem 0 0; }
.skif-bio-end { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.45fr); gap: clamp(2rem,4vw,5rem); align-items: end; margin-top: 2rem; padding: clamp(2rem,5vw,5rem); background: var(--wp--preset--color--accent-6); border-radius: var(--vl-radius-lg,1rem); }
.skif-bio-end h2 { max-width: 16ch; font-size: clamp(2.5rem,4.8vw,5.5rem); line-height: 1.05; }
.skif-bio-end__links { border-top: 2px solid var(--vl-color-primary); padding-top: 1.5rem; }
.skif-bio-next a { display: inline-block; border-bottom: 1px solid currentColor; padding-bottom: .5rem; font-family: var(--vl-font-family-display); font-size: 1.25rem; text-transform: uppercase; text-decoration: none; }
.skif-bio-source { margin-top: 2rem !important; font-size: .78rem; line-height: 1.55; opacity: .8; }
@media (max-width: 800px) {
 .skif-bio-hero,.skif-bio-end { grid-template-columns: 1fr; }
 .skif-bio-hero__image { min-height: 23rem; }
 .skif-bio-chapter { grid-template-columns: 1fr; gap: 2rem; }
 .skif-bio-chapter__rail { display: flex; align-items: baseline; gap: 1.5rem; }
 .skif-bio-chapter__number { margin-bottom: 0; }
}
@media (max-width: 600px) {
 .skif-bio-hero__copy { padding: 2rem 1.5rem; }
 .skif-bio-hero h2 { font-size: clamp(2.7rem,11vw,4.5rem); }
 .skif-bio-hero__image { min-height: 19rem; }
 .skif-bio-hero--furusho .skif-bio-portrait { max-width: min(66%,12rem); }
 .skif-bio-route__links { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .skif-bio-chapter { padding-block: 3.5rem; }
 .skif-bio-end { padding: 2rem 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
 .skif-bio-portrait img,.skif-bio-route__links a { transition: none; }
 .skif-bio-hero:hover .skif-bio-portrait img { transform: none; }
}
.skif-story-intro { max-width: 70ch; font-size: clamp(1.2rem,2vw,1.55rem); line-height: 1.55; margin-block: 1.5rem 3rem; }
.skif-story-chapter { position: relative; padding: clamp(2rem,5vw,5rem); margin-block: 2rem; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-lg,1rem); background: var(--vl-bg-surface); overflow: hidden; }
.skif-story-chapter--ink { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); border-color: transparent; }
.skif-story-chapter--sand { background: var(--wp--preset--color--accent-6); }
.skif-story-chapter--ink :is(h2,h3,p,a) { color: inherit; }
.skif-story-chapter--ink .skif-story-kicker { color: var(--wp--preset--color--accent-2); }
.skif-story-kicker { font-family: var(--vl-font-family-display); font-size: .85rem; line-height: 1.2; letter-spacing: .14em; text-transform: uppercase; color: var(--vl-color-primary); margin: 0 0 1.25rem; }
.skif-story-chapter h2 { font-size: clamp(2.5rem,5vw,5.5rem); max-width: 17ch; margin: 0 0 1.25rem; }
.skif-story-chapter > p { max-width: 68ch; }
.skif-story-link { display: inline-flex; align-items: center; gap: .7rem; margin-top: 1rem; padding: .65rem 0; border-bottom: 1px solid currentColor; font-family: var(--vl-font-family-display); text-transform: uppercase; letter-spacing: .04em; text-decoration: none; }
.skif-story-link::after { content: '↗'; color: var(--vl-color-primary); }
.skif-story-chapter--ink .skif-story-link::after { color: var(--wp--preset--color--accent-2); }
.skif-story-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; margin-block: 2rem; }
.skif-story-step { padding-block: 1.5rem; border-top: 1px solid var(--vl-border-subtle); }
.skif-story-step__number { color: var(--vl-color-primary); font-family: var(--vl-font-family-display); font-size: 2.5rem; line-height: 1; }
.skif-story-step h3 { margin: 1rem 0 .5rem; }
.skif-story-step p { margin: 0; font-size: 1rem; }
.skif-members-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 2rem; }
.skif-members-list__item { display: grid; grid-template-columns: 3rem minmax(0,1fr) auto; gap: 1rem; align-items: center; min-width: 0; padding: 1.25rem 0; border-bottom: 1px solid var(--vl-border-subtle); }
.skif-members-list__initial { display: grid; place-items: center; width: 3rem; height: 3rem; border-radius: 50%; background: var(--vl-bg-inset); color: var(--vl-color-primary); font-family: var(--vl-font-family-display); font-size: 1.4rem; }
.skif-members-list__name { margin: 0; font-family: var(--vl-font-family-display); font-size: clamp(1.15rem,2vw,1.5rem); line-height: 1.2; }
.skif-members-list__dojo { margin: .25rem 0 0; color: var(--vl-text-muted); font-size: .9rem; }
.skif-members-list__rank { border: 1px solid var(--vl-border-subtle); border-radius: 100px; padding: .35rem .7rem; white-space: nowrap; font-family: var(--vl-font-family-display); font-size: .85rem; }

/* CSS-only member directory filter: native select state, if(), selector fallback. */
.skif-members-filter { --skif-members-letter: all; display: grid; gap: 1.5rem; }
.skif-members-filter:has(.skif-members-filter__select option[value="A"]:checked) { --skif-members-letter: A; }
.skif-members-filter:has(.skif-members-filter__select option[value="B"]:checked) { --skif-members-letter: B; }
.skif-members-filter:has(.skif-members-filter__select option[value="C"]:checked) { --skif-members-letter: C; }
.skif-members-filter:has(.skif-members-filter__select option[value="D"]:checked) { --skif-members-letter: D; }
.skif-members-filter:has(.skif-members-filter__select option[value="E"]:checked) { --skif-members-letter: E; }
.skif-members-filter:has(.skif-members-filter__select option[value="F"]:checked) { --skif-members-letter: F; }
.skif-members-filter:has(.skif-members-filter__select option[value="G"]:checked) { --skif-members-letter: G; }
.skif-members-filter:has(.skif-members-filter__select option[value="H"]:checked) { --skif-members-letter: H; }
.skif-members-filter:has(.skif-members-filter__select option[value="I"]:checked) { --skif-members-letter: I; }
.skif-members-filter:has(.skif-members-filter__select option[value="J"]:checked) { --skif-members-letter: J; }
.skif-members-filter:has(.skif-members-filter__select option[value="K"]:checked) { --skif-members-letter: K; }
.skif-members-filter:has(.skif-members-filter__select option[value="L"]:checked) { --skif-members-letter: L; }
.skif-members-filter:has(.skif-members-filter__select option[value="M"]:checked) { --skif-members-letter: M; }
.skif-members-filter:has(.skif-members-filter__select option[value="N"]:checked) { --skif-members-letter: N; }
.skif-members-filter:has(.skif-members-filter__select option[value="O"]:checked) { --skif-members-letter: O; }
.skif-members-filter:has(.skif-members-filter__select option[value="P"]:checked) { --skif-members-letter: P; }
.skif-members-filter:has(.skif-members-filter__select option[value="Q"]:checked) { --skif-members-letter: Q; }
.skif-members-filter:has(.skif-members-filter__select option[value="R"]:checked) { --skif-members-letter: R; }
.skif-members-filter:has(.skif-members-filter__select option[value="S"]:checked) { --skif-members-letter: S; }
.skif-members-filter:has(.skif-members-filter__select option[value="T"]:checked) { --skif-members-letter: T; }
.skif-members-filter:has(.skif-members-filter__select option[value="U"]:checked) { --skif-members-letter: U; }
.skif-members-filter:has(.skif-members-filter__select option[value="V"]:checked) { --skif-members-letter: V; }
.skif-members-filter:has(.skif-members-filter__select option[value="W"]:checked) { --skif-members-letter: W; }
.skif-members-filter:has(.skif-members-filter__select option[value="X"]:checked) { --skif-members-letter: X; }
.skif-members-filter:has(.skif-members-filter__select option[value="Y"]:checked) { --skif-members-letter: Y; }
.skif-members-filter:has(.skif-members-filter__select option[value="Z"]:checked) { --skif-members-letter: Z; }
.skif-members-filter__toolbar { display: grid; grid-template-columns: minmax(12rem,18rem); gap: .5rem; align-items: end; padding: 1.25rem; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-lg,1rem); background: var(--vl-bg-surface); }
.skif-members-filter__toolbar label { grid-column: 1; font-family: var(--vl-font-family-display); font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; color: var(--vl-color-primary); }
.skif-members-filter__select { grid-column: 1; min-height: 3rem; width: 100%; padding: .65rem 2.5rem .65rem .85rem; border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-md,.65rem); background: var(--vl-bg-inset); color: var(--vl-text-primary); font: inherit; }
.skif-members-filter__select:focus-visible { outline: 2px solid var(--vl-color-primary); outline-offset: 3px; }
.skif-members-list__item { --skif-members-letter-match: 0; }
.skif-members-list__item[data-member-initial="A"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: A): 1; else: 0); }
.skif-members-list__item[data-member-initial="B"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: B): 1; else: 0); }
.skif-members-list__item[data-member-initial="C"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: C): 1; else: 0); }
.skif-members-list__item[data-member-initial="D"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: D): 1; else: 0); }
.skif-members-list__item[data-member-initial="E"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: E): 1; else: 0); }
.skif-members-list__item[data-member-initial="F"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: F): 1; else: 0); }
.skif-members-list__item[data-member-initial="G"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: G): 1; else: 0); }
.skif-members-list__item[data-member-initial="H"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: H): 1; else: 0); }
.skif-members-list__item[data-member-initial="I"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: I): 1; else: 0); }
.skif-members-list__item[data-member-initial="J"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: J): 1; else: 0); }
.skif-members-list__item[data-member-initial="K"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: K): 1; else: 0); }
.skif-members-list__item[data-member-initial="L"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: L): 1; else: 0); }
.skif-members-list__item[data-member-initial="M"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: M): 1; else: 0); }
.skif-members-list__item[data-member-initial="N"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: N): 1; else: 0); }
.skif-members-list__item[data-member-initial="O"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: O): 1; else: 0); }
.skif-members-list__item[data-member-initial="P"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: P): 1; else: 0); }
.skif-members-list__item[data-member-initial="Q"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: Q): 1; else: 0); }
.skif-members-list__item[data-member-initial="R"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: R): 1; else: 0); }
.skif-members-list__item[data-member-initial="S"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: S): 1; else: 0); }
.skif-members-list__item[data-member-initial="T"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: T): 1; else: 0); }
.skif-members-list__item[data-member-initial="U"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: U): 1; else: 0); }
.skif-members-list__item[data-member-initial="V"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: V): 1; else: 0); }
.skif-members-list__item[data-member-initial="W"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: W): 1; else: 0); }
.skif-members-list__item[data-member-initial="X"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: X): 1; else: 0); }
.skif-members-list__item[data-member-initial="Y"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: Y): 1; else: 0); }
.skif-members-list__item[data-member-initial="Z"] { --skif-members-letter-match: if(style(--skif-members-letter: all): 1; style(--skif-members-letter: Z): 1; else: 0); }
@supports (width: if(style(--skif-members-probe: 1): 1px; else: 2px)) {
  .skif-members-list__item { display: if(style(--skif-members-letter-match: 1): grid; else: none); }
}
@supports not (width: if(style(--skif-members-probe: 1): 1px; else: 2px)) {
  .skif-members-filter:has(.skif-members-filter__select option[value="A"]:checked) .skif-members-list__item:not([data-member-initial="A"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="B"]:checked) .skif-members-list__item:not([data-member-initial="B"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="C"]:checked) .skif-members-list__item:not([data-member-initial="C"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="D"]:checked) .skif-members-list__item:not([data-member-initial="D"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="E"]:checked) .skif-members-list__item:not([data-member-initial="E"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="F"]:checked) .skif-members-list__item:not([data-member-initial="F"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="G"]:checked) .skif-members-list__item:not([data-member-initial="G"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="H"]:checked) .skif-members-list__item:not([data-member-initial="H"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="I"]:checked) .skif-members-list__item:not([data-member-initial="I"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="J"]:checked) .skif-members-list__item:not([data-member-initial="J"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="K"]:checked) .skif-members-list__item:not([data-member-initial="K"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="L"]:checked) .skif-members-list__item:not([data-member-initial="L"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="M"]:checked) .skif-members-list__item:not([data-member-initial="M"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="N"]:checked) .skif-members-list__item:not([data-member-initial="N"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="O"]:checked) .skif-members-list__item:not([data-member-initial="O"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="P"]:checked) .skif-members-list__item:not([data-member-initial="P"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="Q"]:checked) .skif-members-list__item:not([data-member-initial="Q"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="R"]:checked) .skif-members-list__item:not([data-member-initial="R"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="S"]:checked) .skif-members-list__item:not([data-member-initial="S"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="T"]:checked) .skif-members-list__item:not([data-member-initial="T"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="U"]:checked) .skif-members-list__item:not([data-member-initial="U"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="V"]:checked) .skif-members-list__item:not([data-member-initial="V"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="W"]:checked) .skif-members-list__item:not([data-member-initial="W"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="X"]:checked) .skif-members-list__item:not([data-member-initial="X"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="Y"]:checked) .skif-members-list__item:not([data-member-initial="Y"]),
  .skif-members-filter:has(.skif-members-filter__select option[value="Z"]:checked) .skif-members-list__item:not([data-member-initial="Z"]) {
    display: none;
  }
}
@media(max-width:600px) { .skif-members-filter__toolbar { grid-template-columns: 1fr; } }

.skif-story-metric { margin-block: 2rem; }
.skif-story-metric .skif-public-summary__spotlight { display: flex; gap: clamp(1rem,4vw,4rem); align-items: center; padding: clamp(2rem,5vw,4rem); font-family: var(--vl-font-family-display); font-size: clamp(1.2rem,3vw,2rem); text-transform: uppercase; letter-spacing: .04em; }
.skif-story-metric .skif-public-summary__spotlight-value { font-size: clamp(5rem,12vw,11rem); line-height: .8; color: var(--vl-color-primary); }
.skif-story-map { max-width: var(--wp--style--global--wide-size); margin: 1rem auto 3rem; overflow: hidden; border-radius: var(--vl-radius-lg,1rem); }
.skif-story-map iframe { display: block; width: 100%; min-height: 420px; border: 0; }
@media (max-width: 760px) { .skif-story-steps,.skif-members-list { grid-template-columns: 1fr; } .skif-story-chapter { padding: 1.5rem; } .skif-members-list__item { grid-template-columns: 2.5rem minmax(0,1fr); } .skif-members-list__initial { width: 2.5rem; height: 2.5rem; } .skif-members-list__rank { grid-column: 2; justify-self: start; } }

/* Active schools: city-level map and accessible directory share the same API response. */
.skif-editorial-schools:has(.skif-dojo-map-layout) { padding: clamp(1rem,2vw,2rem); }
.skif-dojo-map-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(18rem,.75fr); gap: clamp(1rem,2vw,2rem); align-items: start; }
.skif-dojo-map-panel { min-width: 0; position: sticky; top: 6.5rem; background: var(--vl-bg-surface); border: 1px solid var(--vl-border-subtle); border-radius: var(--vl-radius-lg,1rem); overflow: hidden; }
.skif-dojo-map-panel__eyebrow,.skif-dojo-map-directory__eyebrow { margin: 0; padding: 1rem 1.25rem; font-family: var(--vl-font-family-display); font-size: .9rem; letter-spacing: .1em; text-transform: uppercase; color: var(--vl-text-primary); }
.skif-dojo-map-panel__eyebrow { border-bottom: 1px solid var(--vl-border-subtle); }
.skif-dojo-map { width: 100%; height: min(66vh,650px); min-height: 420px; background: var(--vl-bg-inset); z-index: 0; }
.skif-dojo-map-panel__note { margin: 0; padding: .85rem 1.25rem; border-top: 1px solid var(--vl-border-subtle); color: var(--vl-text-muted); font-size: .82rem; line-height: 1.45; }
.skif-dojo-map-directory { min-width: 0; }
.skif-dojo-map-directory__eyebrow { color: var(--vl-color-primary); padding: 0 0 1rem; }
.skif-editorial-schools .skif-ui-list--map { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.skif-editorial-schools .skif-ui-list--map .skif-ui-card--dojo { min-height: 0; padding: 1.25rem 1rem; align-items: start; text-align: left; background: var(--vl-bg-surface); border: 1px solid var(--vl-border-subtle); border-top: 3px solid var(--vl-color-primary); border-radius: var(--vl-radius-md,.75rem); }
.skif-editorial-schools .skif-ui-list--map .skif-ui-card--dojo .skif-ui-media { width: auto; min-height: 0; margin: 0 0 .5rem; background: none; }
.skif-editorial-schools .skif-ui-list--map .skif-ui-card--dojo .skif-ui-emblem { width: 3.2rem; height: 3.2rem; padding: 0; }
.skif-editorial-schools .skif-ui-list--map .skif-ui-card__title { font-size: clamp(1.15rem,1.6vw,1.4rem); margin: 0 0 .35rem; }
.skif-dojo-map .leaflet-marker-icon.skif-dojo-map__marker { display: flex; align-items: center; justify-content: center; line-height: 1; border-radius: 50%; border: 3px solid #f3ede2; background: #ae0a0a; color: #fff; box-shadow: 0 3px 12px #100a0666; font-family: var(--vl-font-family-display); font-size: 1rem; font-weight: 700; }
.skif-dojo-map__popup-title,.skif-dojo-map__popup-dojo { display: block; color: #100a06; }
.skif-dojo-map__popup-title { font-family: var(--vl-font-family-display); font-size: 1.2rem; margin-bottom: .4rem; }
.skif-dojo-map__popup-dojo + .skif-dojo-map__popup-dojo { margin-top: .15rem; }
.skif-dojo-map .leaflet-control-container { font-family: var(--wp--preset--font-family--source-sans-3); }
.skif-dojo-map__fallback { display: grid; place-items: center; height: 100%; padding: 2rem; text-align: center; }
@media(max-width:1000px) { .skif-dojo-map-layout { grid-template-columns: 1fr; } .skif-dojo-map-panel { position: relative; top: auto; } .skif-dojo-map { height: 460px; min-height: 360px; } }
@media(max-width:700px) { .skif-editorial-schools .skif-ui-list--map { grid-template-columns: 1fr; } .skif-dojo-map { height: 390px; min-height: 0; } .skif-editorial-schools .skif-ui-list--map .skif-ui-card--dojo { padding: 1rem; } }
