/* Shared foundations. Website and cabinet use the same palette, type and controls. */
:root {
    --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    --ink: #18252c;
    --text: #263b45;
    --muted: #536773;
    --surface: #fff;
    --canvas: #f2f7fa;
    --blue: #eaf2f7;
    --line: #d5e1e8;
    --line-control: #c5d7e2;
    --gold: #f6b645;
    --accent-border: #edaa39;
    --accent-fill: linear-gradient(115deg, #ffce6b, #f6b645);
    --focus: #284e5e;
    --link-text: #2f5c70;
    --radius-control: 12px;
    --radius-panel: 24px;
    --radius-image: 16px;
    --radius-detail: 8px;
    --content-width: 1200px;
    --content-shell-width: calc(100% - 48px);
    --type-caption: .8125rem;
    --type-small: .875rem;
    --type-control: .9375rem;
    --type-body: 1.0625rem;
    --type-micro: .75rem;
    --type-input: 1rem;
    --type-reading: 1.125rem;
    --type-subheading: 1.25rem;
    --type-panel-title: 1.375rem;
    --type-prose-heading: 1.75rem;
    --type-dialog-title: 1.875rem;
    --type-title-min: 2rem;
    --type-hero: clamp(2.125rem, 4.1vw, 3.5rem);
    --type-card: clamp(1.25rem, 1.8vw, 1.5rem);
    --type-section: clamp(1.75rem, 3vw, 2.375rem);
    --type-title: clamp(2rem, 4vw, 3rem);
    --type-document-title: clamp(1.625rem, 3vw, 2.5rem);
    --type-featured-card: clamp(1.5rem, 2.4vw, 1.875rem);
    --type-legal-section: clamp(1.25rem, 2vw, 1.5rem);
    --leading-title: 1.12;
    --leading-heading: 1.18;
    --leading-body: 1.65;
    --leading-control: 1.4;
    --danger-text: #a12c32;
    --success-text: #315b49;
    --success-bg: #edf5ef;
    --closed-text: #285c75;
    --closed-bg: #eaf2f7;
    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-5: 20px;
    --space-6: 24px;
    --space-8: 32px;
    --ease-feedback: cubic-bezier(.2, 0, 0, 1);
    --duration-feedback: 150ms;
    --glass-surface: rgb(255 255 255 / .76);
    --glass-highlight: inset 0 1px 0 rgb(255 255 255 / .95), inset 0 -1px 0 rgb(255 255 255 / .35);
    --shadow-control: 0 1px 2px rgb(24 37 44 / .05), 0 4px 10px -6px rgb(24 37 44 / .18);
    --shadow-control-hover: 0 2px 4px rgb(24 37 44 / .07), 0 10px 22px -8px rgb(24 37 44 / .25);
    --action-fill: #f8bf51;
    --action-hover-fill: #284e5e;
    --action-featured-fill: #e6f0f5;
    --action-featured-hover: #284e5e;
    --action-secondary-hover: #284e5e;
    --action-text: #244754;
    --action-hover-text: #ffffff;
    font-optical-sizing: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media(max-width:640px) {
    :root {
        --content-shell-width: calc(100% - 24px)
    }
}

[data-local-site] #allrecords .dv26-nav {
    width: var(--content-shell-width) !important;
    max-width: var(--content-width) !important;
    border-radius: var(--radius-panel) !important;
    background: var(--glass-surface) !important;
    border: 1px solid rgb(255 255 255 / .94) !important;
    box-shadow: var(--glass-highlight), 0 2px 4px rgb(24 37 44 / .03), 0 16px 40px -20px rgb(24 37 44 / .3) !important;
    backdrop-filter: blur(20px) saturate(150%);
    -webkit-backdrop-filter: blur(20px) saturate(150%);
}

[data-local-site] {
    font-family: var(--font-body);
    color: var(--ink);
}

/* Adapter aliases keep every archived block on the same semantic palette. */
[data-local-site] :is(.dv26, .dv28-hero, .dv28-monthly, .dv30-section, .dvu, .dv-child-page, .dv-legal, #dv-about, #dv-contact) {
    --dv-text: var(--ink);
    --dv-muted: var(--muted);
    --dv-action-text: var(--ink);
    --dv-link: var(--link-text);
    --dv26-text: var(--ink);
    --dv26-muted: var(--muted);
    --dv26-line: var(--line);
    --dv28-ink: var(--ink);
    --dv28-muted: var(--muted);
    --dv28-action-text: var(--ink);
    --dv28-link: var(--link-text);
    --dv28-line: var(--line);
    --dv30-ink: var(--ink);
    --dv30-muted: var(--muted);
    --dv30-line: var(--line);
    --dv30-action-text: var(--ink);
    --dv30-link: var(--link-text);
    --dv33-ink: var(--ink);
    --dv33-muted: var(--muted);
    --dv33-line: var(--line);
    --dv32-line: var(--line);
}

[data-local-site] #allrecords :is(.t-title, .t-descr, .t-text, .t-name, button, input, select, textarea) {
    font-family: var(--font-body) !important;
}

[data-local-site] #main-content {
    min-width: 0;
}

[data-local-site] #main-content h1 {
    font-size: var(--type-title) !important;
    line-height: 1.12 !important;
    font-weight: 600 !important;
    letter-spacing: -.035em !important;
    text-wrap: balance;
}

[data-local-site] #main-content .dv28-hero h1 {
    font-size: var(--type-hero) !important;
}

[data-local-site] #main-content :is(.dv26-head, .dvu-section-head, .dv28-monthly) h2 {
    font-size: var(--type-section) !important;
    font-weight: 600 !important;
    letter-spacing: -.03em;
    line-height: 1.15;
    text-wrap: balance;
}

[data-local-site] #main-content :is(.dv26-child, .dvu-child, .dv26-news-card, .dvu-news-card) :is(h2, h3) {
    margin: 0;
    font-size: var(--type-card) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    letter-spacing: -.025em;
    text-wrap: pretty;
}

[data-local-site] #main-content :is(.dv26-child, .dvu-child) :is(h2, h3) a {
    color: inherit;
    text-decoration: none;
}

[data-local-site] #main-content :is(p, dd, li) {
    overflow-wrap: break-word;
}

[data-local-site] #main-content :is(.dv26-child__goal, .dvu-child__goal, .local-donate-caption) {
    text-wrap: pretty;
}

[data-local-site] :is(.dv26-money, .dvu-money, .dv-child-page__money, .local-donate-amounts) {
    font-variant-numeric: tabular-nums;
}

[data-local-site] #main-content :is(.dvu-row, .dv26-docs__list>div) :is(h2, h3) {
    font-size: var(--type-reading);
    font-weight: 550;
    line-height: 1.4;
}

.local-skip {
    position: fixed;
    top: 8px;
    left: 8px;
    z-index: 100000;
    padding: 14px 20px;
    border-radius: var(--radius-control);
    background: var(--surface);
    color: var(--ink);
    transform: translateY(-160%);
}

.local-skip:focus {
    transform: none;
    outline: 2px solid var(--focus);
}

.local-prose {
    font-size: var(--type-reading);
    line-height: 1.65;
    color: var(--text);
}

.local-prose>* {
    max-width: 78ch;
    margin-inline: auto;
}

.local-prose :is(p, ul, ol, blockquote) {
    margin-block: 0 1.25em;
}

.local-prose :is(h2, h3) {
    margin-block: 1.7em .65em;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -.025em;
    text-wrap: balance;
}

.local-prose h2 {
    font-size: var(--type-prose-heading);
}

.local-prose h3 {
    font-size: var(--type-panel-title);
}

.local-prose> :first-child {
    margin-top: 0;
}

.local-prose :is(ul, ol) {
    padding-inline-start: 1.5em;
}

.local-prose li+li {
    margin-top: .5em;
}

.local-prose blockquote {
    padding: 16px 24px;
    margin-inline: 0;
    background: var(--blue);
    border-left: 3px solid var(--gold);
    border-radius: 0 16px 16px 0;
}

.local-prose a {
    color: var(--link-text) !important;
    text-decoration: underline;
    text-decoration-thickness: from-font;
    text-underline-offset: .2em;
}

[data-local-site] [data-local-type=children] .t004:has(.local-prose) .t-container {
    box-sizing: border-box;
    max-width: var(--content-width);
    width: calc(100% - 40px);
    margin-inline: auto;
}

[data-local-site] [data-local-type=children] .t004:has(.local-prose) .t-col {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    float: none;
}

[data-local-site] #allrecords .t004 .local-prose {
    box-sizing: border-box;
    max-width: none;
    padding: clamp(24px, 4vw, 48px);
    border: 1px solid var(--line);
    border-radius: var(--radius-panel);
    background: var(--surface);
    font-size: var(--type-reading) !important;
    line-height: 1.65 !important;
}

.local-toc {
    box-sizing: border-box;
    width: 100%;
    grid-column: 1/-1;
    max-width: var(--content-width);
    margin: 0 auto 28px;
    padding: 0 20px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #ffffffc9;
}

.local-toc ol {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 32px;
    margin: 0;
    padding: 0 0 18px 24px;
}

.local-toc li {
    padding-block: 4px;
    font-size: var(--type-small);
    line-height: 1.5;
}

.local-toc a {
    display: block;
    min-height: 36px;
    padding: 8px 4px;
    color: var(--text) !important;
}

.local-toc a:hover {
    text-decoration: underline;
    text-underline-offset: .2em;
}

.local-article {
    box-sizing: border-box;
    max-width: var(--content-width);
    width: calc(100% - 80px);
    margin: 0 auto;
    padding: 136px 0 72px;
}

.local-article__header {
    max-width: 920px;
    margin-bottom: 36px;
}

.local-back {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    color: var(--muted) !important;
    font-size: var(--type-small);
    text-decoration: underline;
    text-underline-offset: .2em;
}

.local-article h1 {
    margin: 12px 0 20px;
}

.local-article__date {
    margin: 0;
    font-size: var(--type-small);
    line-height: 1.5;
    color: var(--muted);
}

.local-article__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    gap: 40px;
    align-items: start;
}

.local-article__layout>* {
    min-width: 0;
}

.local-article__photos {
    padding: 12px;
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: var(--radius-panel);
}

.local-article__footer {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--line);
}

@media (max-width:700px) {
    .local-article {
        width: calc(100% - 40px);
        padding-top: 110px;
        padding-bottom: 48px;
    }

    .local-article__header {
        margin-bottom: 28px;
    }

    .local-article__layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 28px;
    }

    .local-article__photos {
        grid-row: 1;
    }

    .local-prose {
        font-size: var(--type-body);
        line-height: 1.65;
    }

    .local-prose h2 {
        font-size: 1.5rem;
    }

    .local-prose h3 {
        font-size: 1.25rem;
    }

    .local-toc ol {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (prefers-reduced-motion: reduce) {

    [data-local-site] *,
    [data-local-site] *::before,
    [data-local-site] *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

[data-local-site] #allrecords .local-history-date {
    margin: 12px 0 20px;
    font-size: 13px;
    line-height: 1.5;
    color: var(--muted);
    max-width: 64ch
}

[data-local-site] #allrecords .local-child-diagnosis {
    font-size: 15px;
    line-height: 1.5
}

[data-local-site] #allrecords .local-child-diagnosis>span {
    font-size: 12px;
    line-height: 1.5
}

[data-local-site] #allrecords :is(.dv26-child__status, .dvu-child__status, .dv28-hero__tag) {
    font-size: 12px;
    line-height: 1.4
}

/* Long document names use their own title scale so Russian words fit on 320 px. */
[data-local-site] #main-content h1 {
    overflow-wrap: break-word
}

[data-local-site] #main-content .dv-legal h1 {
    font-size: var(--type-document-title) !important
}

/* The same branded mark is an actionable route to its payment information. */
/* Heading roles are assigned once at render time, independent of old Tilda IDs. */
[data-local-site] #allrecords #main-content [data-type-role] {
    font-family: var(--font-body) !important;
    font-size: var(--heading-size, var(--type-section)) !important;
    line-height: var(--heading-leading, var(--leading-heading)) !important;
    font-weight: 600 !important;
    letter-spacing: -.03em;
    text-wrap: balance;
}

[data-type-role=hero] {
    --heading-size: var(--type-hero);
    --heading-leading: var(--leading-title)
}

[data-type-role=title] {
    --heading-size: var(--type-title);
    --heading-leading: var(--leading-title)
}

[data-type-role=document-title] {
    --heading-size: var(--type-document-title);
    --heading-leading: var(--leading-title)
}

[data-type-role=featured-card] {
    --heading-size: var(--type-featured-card);
    --heading-leading: 1.25
}

[data-type-role=card],
[data-type-role=news-card] {
    --heading-size: var(--type-card);
    --heading-leading: 1.25
}

[data-type-role=news-card] {
    --heading-leading: var(--leading-control)
}

[data-type-role=document-row] {
    --heading-size: var(--type-reading);
    --heading-leading: var(--leading-control)
}

[data-type-role=legal-section] {
    --heading-size: var(--type-legal-section);
    --heading-leading: 1.4
}

[data-type-role=prose] {
    --heading-size: var(--type-prose-heading);
    --heading-leading: 1.25
}

[data-type-role=prose-subheading] {
    --heading-size: var(--type-panel-title);
    --heading-leading: 1.4
}

.local-payment-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 0;
    width: 100%;
    min-height: 64px;
    border-radius: var(--radius-control);
    color: var(--text) !important;
    text-decoration: none !important
}

.local-payment-link:focus-visible {
    outline: 2px solid var(--focus);
    outline-offset: 4px
}

.local-payment-wordmark {
    font: 600 1.125rem/1 var(--font-body);
    letter-spacing: -.035em;
    color: var(--ink)
}

/* The supplied card-system SVGs include clear space in a 140 × 70 artboard. */
[data-local-site] .dv27-payments__item:is(.dv27-payments__item--visa, .dv27-payments__item--mastercard, .dv27-payments__item--mir) .dv27-payments__mark img {
    width: 112px;
    height: 56px;
    max-width: none;
    max-height: none;
}

.local-payment-support {
    font: 400 var(--type-small)/1.6 var(--font-body);
    color: var(--muted);
    margin: 20px 0 0
}

.local-payment-support a {
    color: var(--text) !important;
    text-decoration: underline !important;
    text-underline-offset: .2em
}

@media(hover:hover) {
    .local-payment-link:hover {
        background: var(--blue)
    }

    .local-payment-link:hover img {
        opacity: .8
    }
}

/* Identity uses the same settings everywhere; no image is cropped or distorted. */
[data-local-site] #allrecords .dv26-nav img {
    width: var(--brand-menu-width, 205px) !important;
    height: auto !important;
    max-height: 60px !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: left center;
}

[data-local-site] #allrecords .dv27-footer__brand img {
    width: var(--brand-footer-width, 220px) !important;
    height: auto !important;
    max-height: 100px !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: left center;
}

@media(max-width:760px) {
    [data-local-site] #allrecords .dv26-nav img {
        width: var(--brand-mobile-width, 176px) !important;
        max-height: 48px !important
    }
}

/* One fixed illustration, no scroll listener and no moving layer behind reading text. */
[data-local-site] .local-foundation {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100dvh !important;
    z-index: -1 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    background: radial-gradient(ellipse at 95% 0%, #dcebf3 0%, transparent 48%), radial-gradient(ellipse at 0% 80%, #edf4f8 0%, transparent 48%), linear-gradient(145deg, #fff, #f1f6fa) !important;
}

.local-foundation__lines {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: .85
}

[data-local-site] #allrecords :is(.dv30-section, .dv28-hero, .dvu-hero, .dvu-section, .dv27-footer) {
    background: transparent !important
}

/* One interaction language: visible color feedback, a light-catching surface,
   keyboard focus and immediate press response. No layout-changing effects. */
[data-local-site] #allrecords [data-ui=action][data-variant],
[data-local-site] :is(.local-dialog, .local-gallery, .local-cookie) [data-ui=action][data-variant] {
    --control-fill: rgb(255 255 255 / .88);
    --control-hover-fill: var(--action-secondary-hover);
    --control-border: var(--line-control);
    box-sizing: border-box !important;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-width: 0;
    min-height: 48px !important;
    padding: 12px 20px !important;
    border: 1px solid var(--control-border) !important;
    border-radius: var(--radius-control) !important;
    font: 600 var(--type-control)/var(--leading-control) var(--font-body) !important;
    letter-spacing: 0 !important;
    color: var(--action-text) !important;
    background: var(--control-fill) !important;
    box-shadow: var(--glass-highlight), var(--shadow-control) !important;
    text-align: center !important;
    white-space: normal !important;
    text-decoration: none !important;
    cursor: pointer;
    filter: none !important;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    transition: transform var(--duration-feedback) var(--ease-feedback), box-shadow var(--duration-feedback) var(--ease-feedback), background-color var(--duration-feedback) ease, border-color var(--duration-feedback) ease, color var(--duration-feedback) ease !important;
}

[data-local-site] #allrecords [data-ui=action][data-variant=primary],
[data-local-site] :is(.local-dialog, .local-cookie) [data-ui=action][data-variant=primary],
[data-local-site] #allrecords .dv26-nav__help[data-ui=action][data-variant] {
    --control-fill: var(--action-fill);
    --control-hover-fill: var(--action-hover-fill);
    --control-border: var(--accent-border);
    color: var(--action-text) !important;
}

[data-local-site] #allrecords [data-ui=action][data-variant=featured] {
    --control-fill: var(--action-featured-fill);
    --control-hover-fill: var(--action-featured-hover);
    --control-border: var(--line-control);
    color: var(--action-text) !important;
}

[data-local-site] #allrecords [data-ui=action][data-variant=compact] {
    min-height: 44px !important;
    padding: 10px 16px !important;
}

[data-local-site] #allrecords .dv26-nav__help[data-ui=action][data-variant] {
    white-space: nowrap !important;
}

[data-local-site] #allrecords [data-ui=action][data-variant]:focus-visible,
[data-local-site] :is(.local-dialog, .local-gallery, .local-cookie) [data-ui=action][data-variant]:focus-visible {
    outline: 3px solid var(--focus) !important;
    outline-offset: 4px !important;
    background-color: var(--control-hover-fill) !important;
    color: var(--action-hover-text) !important;
    transition: none !important;
}

[data-local-site] #allrecords [data-ui=action][data-variant]:active,
[data-local-site] :is(.local-dialog, .local-gallery, .local-cookie) [data-ui=action][data-variant]:active {
    transform: scale(.96) !important;
    background-color: var(--control-hover-fill) !important;
    color: var(--action-hover-text) !important;
    box-shadow: inset 0 2px 5px rgb(24 37 44 / .15) !important;
}

[data-local-site] #allrecords [data-ui=action][data-variant]:disabled {
    opacity: .5;
    cursor: default;
    transform: none !important;
}

@media(hover:hover) and (pointer:fine) {
    [data-local-site] #allrecords [data-ui=action][data-variant]:not(:disabled):hover,
    [data-local-site] :is(.local-dialog, .local-gallery, .local-cookie) [data-ui=action][data-variant]:not(:disabled):hover {
        background: var(--control-hover-fill) !important;
        border-color: var(--action-hover-fill) !important;
        color: var(--action-hover-text) !important;
        transform: translateY(-2px);
        box-shadow: var(--glass-highlight), var(--shadow-control-hover) !important;
    }
    [data-local-site] #allrecords [data-ui=action][data-variant]:active:hover {
        transform: scale(.96) !important;
    }
}

@media(prefers-reduced-motion:reduce) {
    [data-local-site] #allrecords [data-ui=action][data-variant],
    [data-local-site] :is(.local-dialog, .local-gallery, .local-cookie) [data-ui=action][data-variant] {
        transition: none !important;
        transform: none !important;
    }
    [data-local-site] #allrecords [data-ui=action][data-variant]:is(:active, :hover),
    [data-local-site] :is(.local-dialog, .local-gallery, .local-cookie) [data-ui=action][data-variant]:is(:active, :hover) { transform: none !important; }
}

/* Shared radii: 24px panels, 16px inset images, 12px controls, 8px details. */
[data-local-site] #allrecords :is(.dv26-child,.dvu-child,.dv32-child,.dv28-hero__info,.dv28-hero__image-shell,.dv27-footer__wrap,.dvu-panel,.dvc-panel,.dv-bank-card,.dv26-follow,.dv32-report-year,.dv28-monthly__content,.dv30-photo-frame) {
    border-radius: var(--radius-panel) !important;
}
[data-local-site] #allrecords :is(.dv28-hero__photo,.dv28-monthly__image,.dv26-child__photo,.dvu-child__photo) { border-radius: var(--radius-image) !important; }
[data-local-site] #allrecords :is(.dv26-nav__open,.dv26-navigation__close,.dv27-payments__item) { border-radius: var(--radius-control) !important; }
[data-local-site] #allrecords :is(.dv26-child__status,.dvu-child__status,.dv28-hero__tag) { border-radius: var(--radius-detail) !important; }

/* Top edges, equal card bodies and aligned action rows survive different text lengths. */
[data-local-site] #allrecords :is(.dv32-head-title, .dv32-head-copy)>:first-child {
    margin-top: 0 !important
}

[data-local-site] #allrecords :is(.dvu-hero>.dvu-wrap, .dv32-about-head, .dv27-footer__trust) {
    align-items: start !important
}

[data-local-site] #allrecords .dv26-head {
    align-items: start !important
}

[data-local-site] #allrecords :is(.dv26-child, .dvu-child, .dv32-child) {
    display: flex;
    flex-direction: column;
    min-width: 0
}

[data-local-site] #allrecords :is(.dv26-child__body, .dv32-child-body) {
    flex: 1;
    min-width: 0
}

[data-local-site] #allrecords .local-child-actions {
    margin-top: auto;
    padding-top: 16px
}

@media(prefers-reduced-motion:reduce) {

    [data-local-site] #allrecords [data-ui=action][data-variant],
    [data-local-site] .local-dialog [data-ui=action][data-variant] {
        transition: none !important;
        transform: none !important
    }

    [data-local-site] #allrecords [data-ui=action][data-variant]:is(:active, :hover),
    [data-local-site] .local-dialog [data-ui=action][data-variant]:is(:active, :hover) {
        transform: none !important
    }
}

[data-local-site] #allrecords :is(.dv26-nav__inline, .dv26-navigation__links) a {
    border-radius: 10px;
    transition: background-color 150ms ease, color 150ms ease, box-shadow 150ms var(--ease-feedback), transform 150ms var(--ease-feedback);
    text-decoration: none !important;
}

[data-local-site] #allrecords :is(.dv26-nav__inline, .dv26-navigation__links) a[aria-current=page] {
    background: var(--blue);
    box-shadow: inset 0 0 0 1px var(--line);
    color: var(--ink) !important
}

@media(hover:hover) and (pointer:fine) {
    [data-local-site] #allrecords :is(.dv26-nav__inline, .dv26-navigation__links) a:hover {
        background: var(--action-featured-fill);
        box-shadow: inset 0 0 0 1px #e8c77f;
        color: var(--link-text) !important;
    }
}

[data-local-site] #allrecords :is(.dv26-nav__inline, .dv26-navigation__links) a:active {
    transform: scale(.96)
}

@media(prefers-reduced-motion:reduce) {
    [data-local-site] #allrecords :is(.dv26-nav__inline, .dv26-navigation__links) a {
        transition: none !important;
        transform: none !important
    }
}

/* Server-rendered child stories never wait for the retired Tilda initializer. */
[data-local-site] #allrecords .dv-child-page {
    visibility: visible !important
}

[data-local-site] #allrecords :is(.dv-child-page, .dv26, .dvu, .dv-legal, #dv-about, #dv-contact, .dv27-footer) :where(*) {
    font-family: var(--font-body) !important
}

[data-local-site] #allrecords .dv26-nav__logo {
    width: var(--brand-menu-width, 205px) !important;
    flex: 0 1 var(--brand-menu-width, 205px) !important;
    min-width: 0 !important;
}

@media(max-width:760px) {
    [data-local-site] #allrecords .dv26-nav__logo {
        width: var(--brand-mobile-width, 176px) !important;
        flex-basis: var(--brand-mobile-width, 176px) !important
    }
}

/* Native hidden states always win over the shared button's display mode. */
[data-local-site] #allrecords [data-ui=action][data-variant][hidden],
[data-local-site] :is(.local-dialog,.local-gallery,.local-cookie) [data-ui=action][data-variant][hidden] {display:none!important}

/* Floating controls share the material of the menu, with a solid fallback. */
[data-local-site] #allrecords :is(.dv26-nav__open, .dv26-navigation__close) {
    background: rgb(234 242 247 / .85);
    box-shadow: var(--glass-highlight), var(--shadow-control);
    transition: background-color 150ms ease, box-shadow 150ms var(--ease-feedback), transform 150ms var(--ease-feedback);
}
[data-local-site] #allrecords :is(.dv26-nav__open, .dv26-navigation__close):focus-visible {
    outline: 3px solid var(--focus);
    outline-offset: 3px;
}
[data-local-site] #allrecords :is(.dv26-nav__open, .dv26-navigation__close):active { transform: scale(.96); }
@media(hover:hover) and (pointer:fine) {
    [data-local-site] #allrecords :is(.dv26-nav__open, .dv26-navigation__close):hover {
        background: var(--action-featured-fill);
        border-color: var(--line-control);
        box-shadow: var(--glass-highlight), var(--shadow-control-hover);
    }
}
@supports not (backdrop-filter:blur(1px)) {
    [data-local-site] #allrecords .dv26-nav { background: rgb(255 255 255 / .97) !important; }
}
@media(prefers-reduced-transparency:reduce), (prefers-contrast:more) {
    [data-local-site] #allrecords .dv26-nav {
        background: var(--surface) !important;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        border-color: var(--line-control) !important;
    }
}
@media(prefers-reduced-motion:reduce) {
    [data-local-site] #allrecords :is(.dv26-nav__open, .dv26-navigation__close) { transition: none; transform: none; }
}

/* The legal footer is a single aligned composition, including its age mark. */
[data-local-site] #allrecords .dv27-footer__bottom {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 4px 24px;
    font-size: var(--type-caption);
    line-height: 1.5;
    color: var(--muted);
    text-align: left;
}
[data-local-site] #allrecords .dv27-footer__bottom > p { grid-column: 1; grid-row: 1; margin: 0; }
[data-local-site] #allrecords .dv27-footer__bottom > div {
    grid-column: 1;
    grid-row: 2;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 24px;
}
[data-local-site] #allrecords .local-age-mark {
    grid-column: 2;
    grid-row: 1 / 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 36px;
    box-sizing: border-box;
    padding: 6px 10px;
    border: 1px solid var(--line-control);
    border-radius: 10px;
    background: var(--blue);
    font: 600 var(--type-small)/1.4 var(--font-body);
    color: var(--text);
}
[data-local-site] #allrecords .dv27-footer a:not([data-ui]):not(:has(img)) {
    text-underline-offset: .25em;
    text-decoration-thickness: 1px;
    transition: color 150ms ease;
}
@media(hover:hover) and (pointer:fine) {
    [data-local-site] #allrecords .dv27-footer a:not([data-ui]):not(:has(img)):hover {
        color: var(--link-text) !important;
        text-decoration: underline !important;
    }
    [data-local-site] #allrecords :is(.dv26-child, .dvu-child) h3 a:hover { color: var(--link-text) !important; }
}
@media(max-width:640px) {
    [data-local-site] #allrecords .dv27-footer__bottom { gap: 8px 16px; }
    [data-local-site] #allrecords .dv27-footer__bottom > p { grid-column: 1 / -1; }
    [data-local-site] #allrecords .dv27-footer__bottom > div { align-items: flex-start; flex-direction: column; }
    [data-local-site] #allrecords .local-age-mark { grid-row: 2; align-self: end; margin-bottom: 4px; }
}

/* Payment information: shared tokens, readable copy, no vendor layout/scripts. */
[data-local-site] .local-payment-info {
    width: var(--content-shell-width);
    max-width: var(--content-width);
    margin: 40px auto;
    padding: 32px;
    box-sizing: border-box;
    border: 1px solid var(--line);
    border-radius: var(--radius-panel);
    background: rgba(255,255,255,.9);
    color: var(--text);
    scroll-margin-top: 110px;
}
[data-local-site] .local-payment-info__head {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    align-items: start;
    margin-bottom: 24px;
}
[data-local-site] .local-payment-info h2 {
    margin: 8px 0 0;
    font-size: var(--type-section);
    line-height: var(--leading-heading);
    font-weight: 600;
    letter-spacing: -.03em;
    color: var(--ink);
}
[data-local-site] .local-payment-info h3 {
    margin: 0 0 10px;
    font-size: var(--type-panel-title);
    line-height: var(--leading-heading);
    font-weight: 600;
    color: var(--ink);
}
[data-local-site] .local-payment-info p {
    margin: 0 0 16px;
    font-size: var(--type-body);
    line-height: var(--leading-body);
}
[data-local-site] .local-payment-info .local-payment-eyebrow {
    margin: 0;
    font-size: var(--type-caption);
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--muted);
    font-weight: 600;
}
[data-local-site] .local-payment-info a:not([data-ui]) {
    color: var(--link-text);
    text-decoration: underline;
    text-underline-offset: 3px;
    overflow-wrap: anywhere;
}
[data-local-site] .local-payment-info a:focus-visible,
[data-local-site] .local-payment-info summary:focus-visible {
    outline: 3px solid var(--focus);
    outline-offset: 4px;
}
[data-local-site] .local-payment-info__head > p { color: var(--muted); margin: 0; }
[data-local-site] .local-payment-operators ul {
    display: flex; flex-wrap: wrap; gap: 12px; list-style: none; margin: 0 0 24px; padding: 0;
}
[data-local-site] .local-payment-operators li { list-style: none; padding: 0; }
[data-local-site] .local-payment-operators a {
    min-width: 100px; min-height: 72px; display: flex; flex-direction: column;
    align-items: center; justify-content: center; gap: 4px; padding: 10px;
    border: 1px solid var(--line); border-radius: var(--radius-control);
    text-decoration: none !important; box-sizing: border-box;
}
[data-local-site] .local-payment-operators img { width: 84px; height: 32px; object-fit: contain; }
[data-local-site] .local-payment-operators .dv27-payments__name { color: var(--muted); font-size: var(--type-caption); }
[data-local-site] .local-payment-copy { max-width: 90ch; }
[data-local-site] .local-payment-copy > :last-child { margin-bottom: 0; }
[data-local-site] .local-payment-documents {
    display: flex; flex-wrap: wrap; gap: 8px 20px; padding-bottom: 24px;
}
[data-local-site] .local-payment-documents a { min-height: 44px; display: inline-flex; align-items: center; font-size: var(--type-control); }
[data-local-site] .local-payment-manage {
    display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 24px; align-items: center;
    padding: 24px; border-radius: 18px; background: var(--blue); margin-bottom: 24px;
    scroll-margin-top: 110px;
}
[data-local-site] .local-payment-manage p { margin-bottom: 0; }
[data-local-site] .local-payment-manage [data-ui] { min-height: 48px; text-align: center; }
[data-local-site] .local-payment-details details { scroll-margin-top: 110px; }
[data-local-site] .local-payment-details .local-payment-copy { padding-bottom: 24px; }
[data-local-site] .local-payment-details p strong { font-weight: 600; color: var(--ink); }
[data-local-site] .local-payment-sms { margin-bottom: 24px; }
[data-local-site] .local-donate-manage { margin: 12px 0 0; font-size: var(--type-small); line-height: var(--leading-body); }
[data-local-site] .local-donate-manage a { color: var(--link-text); text-decoration: underline; text-underline-offset: 3px; display: inline-block; padding: 8px 0; }
@media(max-width:760px) {
    [data-local-site] .local-payment-info { padding: 22px; margin: 24px auto; }
    [data-local-site] .local-payment-info__head,
    [data-local-site] .local-payment-manage { grid-template-columns: minmax(0,1fr); gap: 18px; }
    [data-local-site] .local-payment-manage { padding: 20px; }
    [data-local-site] .local-payment-manage [data-ui] { width: 100%; box-sizing: border-box; }
    [data-local-site] .local-payment-operators ul { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
    [data-local-site] .local-payment-operators a { min-width: 0; width: 100%; padding: 10px 4px; }
    [data-local-site] .local-payment-operators img { max-width: 100%; }
}
