/*
 * MyWorkFinder public material system.
 * Layout remains in public.css; this layer owns shared theme tokens,
 * color, surfaces, shadows and cross-page visual consistency.
 */

body.public-body {
    --public-canvas: #f2f6ea;
    --public-section: rgba(248, 250, 244, 0.22);
    --public-card: rgba(248, 250, 244, 0.3);
    --public-raised: rgba(248, 250, 244, 0.44);
    --public-control: rgba(248, 250, 244, 0.3);
    --public-secondary: rgba(248, 250, 244, 0.28);
    --public-primary: #1c1f18;
    --public-primary-hover: #000000;
    --public-primary-text: #f8faf4;
    --public-header: rgba(248, 250, 244, 0.12);
    --public-mobile-header: rgba(248, 250, 244, 0.38);
    --public-header-border: rgba(255, 255, 255, 0.42);
    --public-header-shadow: 0 16px 42px rgba(55, 144, 181, 0.12), 0 4px 14px rgba(45, 52, 39, 0.06);
    --public-bg: var(--public-canvas);
    --public-bg-center: var(--public-canvas);
    --public-bg-edge: #75ceff;
    --public-text: #1c1f18;
    --public-text-soft: #3f473b;
    --public-text-muted: #687064;
    --public-footer-emphasis: #1c1f18;
    --public-footer-kicker: #34392e;
    --public-surface: var(--public-section);
    --public-surface-strong: var(--public-raised);
    --public-surface-subtle: var(--public-card);
    --public-border: rgba(45, 52, 39, 0.14);
    --public-border-strong: rgba(45, 52, 39, 0.24);
    --public-action: var(--public-primary);
    --public-action-hover: var(--public-primary-hover);
    --public-action-text: var(--public-primary-text);
    --public-shadow-soft: 0 18px 55px rgba(31, 91, 117, 0.10), 0 3px 12px rgba(45, 52, 39, 0.06);
    --public-shadow-raised: 0 24px 68px rgba(31, 91, 117, 0.14), 0 8px 24px rgba(45, 52, 39, 0.08);
    --public-shadow-control: 0 8px 22px rgba(31, 91, 117, 0.12);
    --public-focus-ring: rgba(37, 139, 226, 0.42);
    color: var(--public-text);
    background: linear-gradient(
        90deg,
        #75ceff 0%,
        #8ad4fb 6%,
        #b1e0f4 15%,
        #ddefed 25%,
        #f2f6ea 35%,
        #f2f6ea 65%,
        #ddefee 75%,
        #b1e1f5 85%,
        #8ad3fb 94%,
        #74cbfc 100%
    );
    background-attachment: fixed;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.public-body .footer-title,
.public-body .footer-column > summary {
    color: var(--public-text);
}

.public-body .footer-text,
.public-body .footer-column a,
.public-body .footer-contact-detail {
    color: var(--public-text-muted);
}

.public-body .footer-more-link {
    color: var(--public-footer-emphasis) !important;
}

/* Preserve the intentionally transparent mobile CTA wrapper. */
html body.public-body .sticky-cta {
    border-color: transparent;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

@media (max-width: 1100px) {
    .public-body .site-nav-mobile {
        border-color: var(--public-border);
        background: color-mix(in srgb, var(--public-surface-strong) 88%, transparent);
        box-shadow: var(--public-shadow-soft);
        backdrop-filter: blur(16px) saturate(120%);
        -webkit-backdrop-filter: blur(16px) saturate(120%);
    }
}

@media (max-width: 760px) {
    body.public-body {
        --public-footer-mobile-gap: 15px;
    }

    body.public-body .site-footer {
        display: grid;
        min-height: 0;
        margin-top: var(--public-footer-mobile-gap);
        background: rgba(248, 250, 244, 0.72);
    }

    body.public-body .site-footer-main {
        min-height: auto;
    }

    html[data-public-theme="dark"] body.public-body .site-footer {
        background: rgba(36, 41, 54, 0.82);
    }
}

html[data-public-theme="dark"] body.public-body {
    --public-canvas: #15171f;
    --public-section: #1b1e28;
    --public-card: #202431;
    --public-raised: #242936;
    --public-control: #2a3040;
    --public-secondary: #1e222d;
    --public-primary: #205b56;
    --public-primary-hover: #286d67;
    --public-primary-text: #f3f5f8;
    --public-header: rgba(36, 41, 54, 0.82);
    --public-mobile-header: rgba(36, 41, 54, 0.82);
    --public-header-border: #394153;
    --public-header-shadow: 0 18px 46px rgba(6, 8, 13, 0.28);
    --public-bg: var(--public-canvas);
    --public-bg-center: var(--public-canvas);
    --public-bg-edge: var(--public-canvas);
    --public-text: #f3f5f8;
    --public-text-soft: #aeb6c5;
    --public-text-muted: #7f899b;
    --public-footer-emphasis: #456a86;
    --public-footer-kicker: #91b0c8;
    --public-surface: var(--public-section);
    --public-surface-strong: var(--public-raised);
    --public-surface-subtle: var(--public-card);
    --public-border: #394153;
    --public-border-strong: #456a86;
    --public-action: var(--public-primary);
    --public-action-hover: var(--public-primary-hover);
    --public-action-text: var(--public-primary-text);
    --public-shadow-soft: 0 22px 64px rgba(0, 0, 0, 0.26), inset 0 1px rgba(255, 255, 255, 0.04);
    --public-shadow-raised: 0 28px 78px rgba(0, 0, 0, 0.34), inset 0 1px rgba(255, 255, 255, 0.06);
    --public-shadow-control: 0 10px 26px rgba(0, 0, 0, 0.24);
    background: var(--public-canvas);
}

.public-body .public-atmosphere {
    opacity: 0;
    animation: none;
}

.public-body .site-header,
.public-body .section-frame,
.public-body .site-footer {
    color: var(--public-text);
    border-color: var(--public-border);
    background: var(--public-surface);
    box-shadow: var(--public-shadow-soft);
    backdrop-filter: blur(10px) saturate(112%);
    -webkit-backdrop-filter: blur(10px) saturate(112%);
}

.public-body .site-header::before,
.public-body .section-frame::before,
.public-body .site-footer::before {
    pointer-events: none;
}

.public-body :is(
    .content-card,
    .segment-card,
    .pricing-card,
    .faq-item,
    .hero-proof-item,
    .landing-proof-card,
    .landing-step-card,
    .landing-benefit-card,
    .landing-segment-card,
    .landing-hero-fact
) {
    color: var(--public-text);
    border-color: var(--public-border);
    background: var(--public-surface-subtle);
    box-shadow: var(--public-shadow-control);
}

.family-hub .segment-card:hover,
.family-hub .segment-card:focus-within,
.family-product .content-card:hover {
    border-color: var(--public-border-strong);
    background: var(--public-surface);
    box-shadow: var(--public-shadow-raised);
}

/* Legacy heroes used white text tokens and a transparent gradient fill.
 * Inner public pages must resolve their copy from the active Chorus theme. */
.public-body :is(
    .page-hero .page-title,
    .product-page-hero h1
) {
    color: var(--public-text);
    -webkit-text-fill-color: var(--public-text);
}

.public-body :is(
    .page-hero .page-description,
    .product-page-hero-copy > p:last-of-type
) {
    color: var(--public-text-muted);
}

.family-guide .public-main > .section-frame:not(.page-hero):not(.cta-band):not([data-public-hero]),
.family-guide .guide-comparison-section {
    color: var(--public-text);
    border-color: var(--public-border);
    background: var(--public-surface-strong);
    box-shadow: var(--public-shadow-soft);
}

.family-guide :is(.content-card, .page-hero-chip, .comparison-table-scroll),
.family-legal :is(.legal-document-content, .legal-document-section) {
    color: var(--public-text);
    border-color: var(--public-border);
}

.family-guide :is(.content-card p, .comparison-summary),
.family-legal .legal-document-markdown :is(p, li) {
    color: var(--public-text-soft);
}

.family-guide .comparison-table :is(th, td),
.family-legal .legal-document-markdown :is(h2, h3, strong, a) {
    color: var(--public-text);
    border-color: var(--public-border);
}

.page-landing #home-faq .faq-item[open] {
    border-color: var(--public-border-strong);
    background: var(--public-surface-strong);
    box-shadow: var(--public-shadow-control);
}

.page-landing #home-faq .faq-item summary::after {
    border: 1px solid var(--public-border);
    background-color: var(--public-surface-strong);
    box-shadow: var(--public-shadow-control);
}

.family-support .section-secondary,
.family-status :is(.page-hero, .section-secondary) {
    color: var(--public-text);
    border-color: var(--public-border);
    background: var(--public-surface);
    box-shadow: var(--public-shadow-soft);
}

.family-support .content-card,
.family-status .content-card {
    color: var(--public-text);
    border-color: var(--public-border);
    background: var(--public-surface-subtle);
    box-shadow: var(--public-shadow-control);
}

.public-body :is(
    .brand-name,
    .site-nav a,
    .footer-title,
    .section-heading h1,
    .section-heading h2,
    .hero-title,
    .content-card h2,
    .content-card h3,
    .segment-card h2,
    .segment-card h3,
    .pricing-card h2,
    .pricing-card h3,
    .faq-item h2,
    .faq-item h3,
    .faq-item summary
) {
    color: var(--public-text);
}

.public-body :is(
    .brand-tagline,
    .section-heading p,
    .hero-description,
    .content-card p,
    .segment-card p,
    .pricing-card p,
    .faq-item p,
    .footer-text,
    .footer-contact-detail
) {
    color: var(--public-text-muted);
}

.public-body :is(.section-kicker, .eyebrow, .breadcrumb, .breadcrumbs) {
    color: var(--public-text-soft);
}

.public-body .brand-mark {
    border: 0;
    background: transparent;
    box-shadow: none;
}

.public-body .site-nav a:hover,
.public-body .site-nav a:focus-visible,
.public-body .footer-column a:hover,
.public-body .footer-column a:focus-visible {
    color: var(--public-text);
}

.public-body .button-primary {
    color: var(--public-action-text);
    border-color: var(--public-action);
    background: var(--public-action);
    box-shadow: var(--public-shadow-control);
    filter: none;
}

.public-body .button-primary:hover,
.public-body .button-primary:focus-visible {
    color: var(--public-action-text);
    border-color: var(--public-action-hover);
    background: var(--public-action-hover);
    box-shadow: var(--public-shadow-raised);
    filter: none;
}

.public-body :is(.button-secondary, .button-tertiary) {
    color: var(--public-text);
    border-color: var(--public-border-strong);
    background: var(--public-surface-strong);
    box-shadow: var(--public-shadow-control);
    backdrop-filter: blur(14px) saturate(116%);
    -webkit-backdrop-filter: blur(14px) saturate(116%);
}

.public-body :is(.button-secondary, .button-tertiary):hover,
.public-body :is(.button-secondary, .button-tertiary):focus-visible {
    color: var(--public-text);
    border-color: var(--public-border-strong);
    background: var(--public-surface);
    box-shadow: var(--public-shadow-raised);
}

.public-body .public-theme-toggle {
    display: inline-flex;
}

.public-body .public-theme-toggle,
.public-body .hamburger-btn {
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    color: var(--public-text);
    border: 1px solid var(--public-border-strong);
    border-radius: 50%;
    background: var(--public-surface-strong);
    box-shadow: var(--public-shadow-control), inset 0 1px rgba(255, 255, 255, 0.34);
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease, box-shadow 220ms ease, transform 220ms cubic-bezier(0.22, 1, 0.36, 1);
}

.public-body .public-theme-toggle:hover,
.public-body .hamburger-btn:hover {
    border-color: var(--public-border-strong);
    background: var(--public-surface);
    box-shadow: var(--public-shadow-raised);
    transform: translateY(-1px);
}

.public-body .public-theme-toggle:active,
.public-body .hamburger-btn:active {
    transform: translateY(0) scale(0.96);
}

.public-body .public-theme-icon {
    width: 21px;
    height: 21px;
    pointer-events: none;
}

.public-body .public-theme-icon-sun {
    display: none;
}

html[data-public-theme="dark"] .public-body .public-theme-icon-moon {
    display: none;
}

html[data-public-theme="dark"] .public-body .public-theme-icon-sun {
    display: block;
}

.public-body .hamburger-icon span {
    background-color: var(--public-text);
}

.public-body :is(input, textarea, select) {
    color: var(--public-text);
    border-color: var(--public-border-strong);
    background: var(--public-surface-strong);
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.08);
}

.public-body :is(input, textarea)::placeholder {
    color: var(--public-text-muted);
}

.public-body :where(a, button, summary, input, textarea, select):focus-visible {
    outline: 3px solid var(--public-focus-ring);
    outline-offset: 3px;
}

.public-body .site-footer,
.public-body .footer-column,
.public-body .footer-column summary,
.public-body .footer-column a,
.public-body .footer-contact-detail {
    color: var(--public-text-soft);
    border-color: var(--public-border);
}

.public-body .sticky-cta {
    border-color: var(--public-border);
    background: var(--public-surface-strong);
    box-shadow: var(--public-shadow-raised);
    backdrop-filter: blur(18px) saturate(120%);
    -webkit-backdrop-filter: blur(18px) saturate(120%);
}

@media (prefers-reduced-motion: reduce) {
    .public-body .public-theme-toggle,
    .public-body .hamburger-btn,
    .public-body .button {
        transition-duration: 0.01ms;
    }
}

/* Landing-specific material adaptation. */
/*
 * Landing-specific material rules preserved from the approved main-page design.
 * This file deliberately owns color, borders, backgrounds and effects only;
 * layout and typography metrics remain in public.css.
 */

body.page-public-hero {
    --accent: #1c1f18;
    --accent-secondary: #34392e;
    --border: rgba(45, 52, 39, 0.14);
    --border-accent: rgba(28, 31, 24, 0.34);
    --text: #1c1f18;
    --text-soft: #3f473b;
    --text-muted: #687064;
    --landing-blue: #1c1f18;
    --landing-blue-soft: #34392e;
    --landing-ink: #f2f6ea;
    --landing-surface: rgba(248, 250, 244, 0.34);
    --landing-panel: rgba(248, 250, 244, 0.24);
    --landing-panel-strong: rgba(248, 250, 244, 0.44);
    --landing-border: rgba(45, 52, 39, 0.14);
    --landing-hairline: rgba(45, 52, 39, 0.14);
    color: var(--text);
    background: linear-gradient(
        90deg,
        #75ceff 0%,
        #8ad4fb 6%,
        #b1e0f4 15%,
        #ddefed 25%,
        #f2f6ea 35%,
        #f2f6ea 65%,
        #ddefee 75%,
        #b1e1f5 85%,
        #8ad3fb 94%,
        #74cbfc 100%
    );
    background-attachment: fixed;
}

.page-landing .public-atmosphere {
    opacity: 0;
    animation: none;
}

.page-public-hero .site-header,
.page-public-hero .public-header {
    isolation: auto;
    border-color: rgba(255, 255, 255, 0.42);
    background: rgba(248, 250, 244, 0.12);
    box-shadow: 0 16px 42px rgba(55, 144, 181, 0.12), 0 4px 14px rgba(45, 52, 39, 0.06);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    will-change: backdrop-filter;
}

.page-public-hero .site-header::before,
.page-public-hero .public-header::before {
    display: none;
}

.page-public-hero .brand-mark {
    border: 0;
    background: transparent;
    box-shadow: none;
}

.page-public-hero .brand-name,
.page-public-hero .site-nav a,
.page-public-hero .public-nav a {
    color: #1c1f18;
}

.page-public-hero .brand-tagline {
    color: #687064;
}

.page-public-hero .site-nav a:hover,
.page-public-hero .site-nav a:focus-visible,
.page-public-hero .public-nav a:hover,
.page-public-hero .public-nav a:focus-visible {
    color: #000000;
}

.page-public-hero .hamburger-btn {
    border-color: rgba(45, 52, 39, 0.18);
    color: #1c1f18;
    background: rgba(248, 250, 244, 0.3);
}

.page-public-hero .hamburger-icon span {
    background-color: #1c1f18;
}

.page-public-hero .public-theme-toggle {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid rgba(45, 52, 39, 0.18);
    border-radius: 50%;
    color: #1c1f18;
    background: rgba(248, 250, 244, 0.3);
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.48);
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease, transform 220ms cubic-bezier(0.22, 1, 0.36, 1);
}

.page-public-hero .header-actions {
    align-items: center;
}

.page-public-hero .public-theme-toggle:hover {
    border-color: rgba(28, 31, 24, 0.34);
    background: rgba(248, 250, 244, 0.5);
    transform: translateY(-1px) rotate(-5deg);
}

.page-public-hero .public-theme-toggle:active {
    transform: translateY(0) scale(0.96);
}

.page-public-hero .public-theme-toggle:focus-visible {
    outline: 3px solid rgba(37, 139, 226, 0.42);
    outline-offset: 3px;
}

.page-public-hero .public-theme-icon {
    width: 21px;
    height: 21px;
    pointer-events: none;
}

.page-public-hero .public-theme-icon-sun {
    display: none;
}

html[data-public-theme="dark"] .page-public-hero .public-theme-icon-moon {
    display: none;
}

html[data-public-theme="dark"] .page-public-hero .public-theme-icon-sun {
    display: block;
}

.page-landing .section-frame,
.page-public-hero .landing-minimal-hero,
.page-landing .landing-proof-section,
.page-landing .landing-compact-section,
.page-landing .landing-access-section,
.page-landing .landing-final-cta {
    border-color: rgba(45, 52, 39, 0.14);
    background: rgba(248, 250, 244, 0.22);
    box-shadow: none;
    backdrop-filter: blur(10px) saturate(112%);
    -webkit-backdrop-filter: blur(10px) saturate(112%);
}

.page-public-hero .landing-minimal-hero::before,
.page-public-hero .landing-minimal-hero::after {
    background: none;
    opacity: 0;
    animation: none;
}

.page-public-hero [data-public-hero] .section-kicker,
.page-landing .section-kicker,
.page-landing .landing-proof-value,
.page-landing .landing-step-index,
.page-landing .landing-segment-arrow {
    color: #34392e;
    text-shadow: none;
}

.page-public-hero [data-public-hero] .hero-title,
.page-landing .section-heading h2,
.page-landing .landing-proof-heading h2,
.page-landing .landing-proof-card h3,
.page-landing .landing-step-card h3,
.page-landing .landing-benefit-card h3,
.page-landing .landing-segment-card h3,
.page-landing .pricing-title,
.page-landing .landing-offer-price strong {
    color: #1c1f18;
}

.page-public-hero .landing-minimal-hero .hero-title {
    background: none;
    -webkit-text-fill-color: #1c1f18;
}

.page-public-hero [data-public-hero] .hero-description,
.page-landing .section-heading p,
.page-landing .landing-proof-heading p,
.page-landing .landing-proof-card p,
.page-landing .landing-step-card p,
.page-landing .landing-benefit-card p,
.page-landing .landing-segment-card p,
.page-landing .pricing-description,
.page-landing .pricing-description-list,
.page-landing .pricing-features,
.page-landing .pricing-duration,
.page-landing .landing-offer-price span {
    color: #596255;
}

.page-public-hero :where([data-public-hero]) .button-primary,
.page-landing .button-primary,
.page-public-hero .header-actions .button-primary {
    color: #f8faf4;
    border-color: #1c1f18;
    background: #1c1f18;
    box-shadow: none;
    filter: none;
}

.page-public-hero :where([data-public-hero]) .button-primary:hover,
.page-public-hero :where([data-public-hero]) .button-primary:focus-visible,
.page-landing .button-primary:hover,
.page-landing .button-primary:focus-visible,
.page-public-hero .header-actions .button-primary:hover,
.page-public-hero .header-actions .button-primary:focus-visible {
    color: #ffffff;
    border-color: #000000;
    background: #000000;
    box-shadow: 0 12px 28px rgba(28, 31, 24, 0.18);
    filter: none;
}

.page-public-hero :where([data-public-hero]) .button-tertiary,
.page-landing .button-tertiary {
    color: #1c1f18;
    border-color: rgba(45, 52, 39, 0.18);
    background: rgba(248, 250, 244, 0.28);
    box-shadow: none;
    backdrop-filter: blur(16px) saturate(120%);
    -webkit-backdrop-filter: blur(16px) saturate(120%);
}

.page-public-hero :where([data-public-hero]) .button-tertiary:hover,
.page-public-hero :where([data-public-hero]) .button-tertiary:focus-visible,
.page-landing .button-tertiary:hover,
.page-landing .button-tertiary:focus-visible {
    color: #000000;
    border-color: rgba(28, 31, 24, 0.36);
    background: rgba(248, 250, 244, 0.48);
}

.page-landing .landing-hero-fact,
.page-landing .landing-proof-card,
.page-landing .landing-step-card,
.page-landing .landing-benefit-card,
.page-landing .landing-access-grid .pricing-card,
.page-landing .landing-segment-card,
.page-landing .faq-item {
    border-color: rgba(45, 52, 39, 0.14);
    background: rgba(248, 250, 244, 0.3);
    box-shadow: none;
    backdrop-filter: blur(14px) saturate(116%);
    -webkit-backdrop-filter: blur(14px) saturate(116%);
}

.page-landing .landing-proof-card:hover,
.page-landing .landing-step-card:hover,
.page-landing .landing-benefit-card:hover,
.page-landing .landing-access-grid .pricing-card:hover,
.page-landing .landing-segment-card:hover {
    border-color: rgba(28, 31, 24, 0.32);
    background: rgba(248, 250, 244, 0.48);
    box-shadow: none;
}

.page-landing .landing-access-grid .pricing-card-featured {
    border-color: rgba(28, 31, 24, 0.32);
    background: rgba(248, 250, 244, 0.48);
}

.page-landing .landing-hero-fact-icon {
    color: #1c1f18;
    border-color: rgba(45, 52, 39, 0.15);
    background: rgba(248, 250, 244, 0.42);
    box-shadow: none;
}

.page-landing .pricing-discount-badge {
    color: #f3fffc;
    border: 1px solid #2c756e;
    background: #205b56;
    box-shadow: 0 8px 20px rgba(32, 91, 86, 0.22);
    font-weight: 900;
}

.page-landing .landing-hero-fact strong,
.page-landing .landing-hero-fact a {
    color: #1c1f18;
}

.page-landing .landing-hero-fact small,
.page-landing .pricing-eyebrow,
.page-landing .pricing-base-price {
    color: #687064;
}

.page-landing .landing-benefit-dot,
.page-public-hero .telegram-chat-live-status span,
.page-public-hero .telegram-composer-mic {
    color: #f8faf4;
    background: #1c1f18;
    box-shadow: none;
}

.page-landing .text-link,
.page-landing .text-link:hover,
.page-landing .text-link:focus-visible {
    color: #1c1f18;
}

.page-landing .text-link-muted {
    color: #596255;
}

.page-public-hero .landing-order-preview.telegram-chat-shell {
    border-color: rgba(45, 52, 39, 0.22);
    background: rgba(248, 250, 244, 0.42);
    box-shadow: 0 0 0 7px rgba(248, 250, 244, 0.28), 0 28px 70px rgba(45, 52, 39, 0.16);
}

.page-public-hero .landing-order-preview.telegram-chat-shell::before {
    background: none;
    opacity: 0;
}

.page-public-hero .telegram-phone-status,
.page-public-hero .telegram-chat-header {
    color: #1c1f18;
    background: rgba(248, 250, 244, 0.62);
    box-shadow: none;
}

.page-public-hero .telegram-phone-island {
    background: #1c1f18;
}

.page-public-hero .telegram-chat-identity h2 {
    color: #1c1f18;
}

.page-public-hero .telegram-chat-identity p,
.page-public-hero .telegram-chat-live-status,
.page-public-hero .telegram-chat-composer {
    color: #596255;
}

.page-public-hero .telegram-chat-live-status {
    border-color: rgba(45, 52, 39, 0.1);
    background: rgba(248, 250, 244, 0.4);
}

.page-public-hero .landing-telegram-feed {
    background-color: rgba(248, 250, 244, 0.2);
    background-image: radial-gradient(circle at 22% 24%, rgba(45, 52, 39, 0.08) 0 1px, transparent 1.6px), radial-gradient(circle at 76% 68%, rgba(45, 52, 39, 0.055) 0 1px, transparent 1.6px);
}

.page-public-hero .landing-telegram-feed .telegram-message-bubble,
.page-public-hero .landing-telegram-feed .hero-feed-empty {
    color: #1c1f18;
    border-color: rgba(45, 52, 39, 0.12);
    background: rgba(248, 250, 244, 0.64);
    box-shadow: none;
}

.page-public-hero .landing-telegram-feed .hero-feed-title,
.page-public-hero .telegram-order-facts dd {
    color: #1c1f18;
}

.page-public-hero .telegram-order-facts dt,
.page-public-hero .telegram-order-description-label,
.page-public-hero .telegram-order-quote {
    color: #596255;
}

.page-public-hero .telegram-order-quote {
    border-left-color: #1c1f18;
    background: rgba(45, 52, 39, 0.07);
}

.page-public-hero .telegram-order-quote::after {
    color: #34392e;
}

.page-public-hero .telegram-chat-composer {
    border-color: rgba(45, 52, 39, 0.1);
    background: rgba(248, 250, 244, 0.48);
}

.page-public-hero .telegram-composer-placeholder {
    background: rgba(45, 52, 39, 0.08);
}

.page-landing .landing-carousel-hint {
    color: #596255;
}

.page-landing .landing-carousel-hint span {
    background: rgba(45, 52, 39, 0.15);
}

.page-landing .landing-carousel-hint span::after {
    background: #1c1f18;
    box-shadow: none;
}

@media (max-width: 1100px) {
    .public-body .site-header-shell {
        --mobile-header-glass: rgba(248, 250, 244, 0.38);
        --mobile-menu-height: 260px;
    }

    .public-body .public-theme-toggle {
        width: 40px;
        height: 40px;
    }

    .public-body .site-header-shell .site-header {
        top: auto;
    }

    .public-body .site-header,
    .public-body .public-header {
        overflow: visible;
        border: 1px solid rgba(255, 255, 255, 0.46);
        border-radius: 20px;
        background: var(--mobile-header-glass);
        box-shadow: 0 10px 28px rgba(55, 144, 181, 0.1);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        transition:
            border-radius 320ms cubic-bezier(0.22, 1, 0.36, 1),
            box-shadow 320ms ease;
    }

    .public-body .site-header::before,
    .public-body .site-header::after {
        content: none;
    }

    .public-body .site-header-shell:has(.site-nav-mobile.nav-open) .site-header {
        border-bottom-color: transparent;
        border-radius: 20px 20px 0 0;
        box-shadow: 0 24px 44px rgba(55, 144, 181, 0.14);
    }

    .public-body .site-nav-mobile {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-end;
        position: absolute;
        z-index: 2;
        top: calc(100% - 1px);
        left: 0;
        right: 0;
        height: var(--mobile-menu-height);
        padding: 12px;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.46);
        border-top: 0;
        border-radius: 0 0 20px 20px;
        background: var(--mobile-header-glass);
        box-shadow: 0 24px 44px rgba(55, 144, 181, 0.14);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-8px) scaleY(0.98);
        transform-origin: top center;
        transition:
            max-height 360ms cubic-bezier(0.22, 1, 0.36, 1),
            padding 360ms cubic-bezier(0.22, 1, 0.36, 1),
            opacity 220ms ease,
            transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
            visibility 0s linear 320ms;
    }

    .public-body .site-nav-mobile.nav-open {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0) scaleY(1);
        transition:
            max-height 360ms cubic-bezier(0.22, 1, 0.36, 1),
            padding 360ms cubic-bezier(0.22, 1, 0.36, 1),
            opacity 220ms ease,
            transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
            visibility 0s;
    }

}

@media (max-width: 620px) {
    .public-body .site-header-shell {
        top: 4px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .public-body *,
    .public-body *::before,
    .public-body *::after {
        scroll-behavior: auto;
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        transition-duration: 0.01ms;
    }
}

@media (prefers-reduced-transparency: reduce) {
    .public-body .site-header,
    .public-body .site-nav-mobile,
    .public-body .section-frame,
    .public-body .site-footer {
        background: var(--public-bg-center);
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
}

@media (prefers-contrast: more) {
    .public-body {
        --public-border: rgba(28, 31, 24, 0.42);
        --public-border-strong: rgba(28, 31, 24, 0.62);
    }

    html[data-public-theme="dark"] .public-body {
        --public-border: rgba(244, 246, 242, 0.42);
        --public-border-strong: rgba(244, 246, 242, 0.62);
    }
}

/* Dark landing theme: graphite center with the original blue edge colors. */
html[data-public-theme="dark"] body.page-public-hero {
    --obsidian-canvas: #15171f;
    --obsidian-section: #1b1e28;
    --obsidian-card: #202431;
    --obsidian-raised: #242936;
    --obsidian-glass: rgba(36, 41, 54, 0.82);
    --obsidian-control: #2a3040;
    --obsidian-secondary: #1e222d;
    --obsidian-hover: #303747;
    --obsidian-border: #394153;
    --obsidian-teal: #205b56;
    --obsidian-teal-hover: #286d67;
    --obsidian-blue: #456a86;
    --obsidian-text: #f3f5f8;
    --obsidian-text-secondary: #aeb6c5;
    --obsidian-text-muted: #7f899b;
    --accent: var(--obsidian-blue);
    --accent-secondary: var(--obsidian-teal-hover);
    --border: var(--obsidian-border);
    --border-accent: var(--obsidian-blue);
    --text: var(--obsidian-text);
    --text-soft: var(--obsidian-text-secondary);
    --text-muted: var(--obsidian-text-muted);
    --landing-blue: var(--obsidian-blue);
    --landing-blue-soft: #7193ad;
    --landing-ink: var(--obsidian-canvas);
    --landing-surface: var(--obsidian-card);
    --landing-panel: var(--obsidian-section);
    --landing-panel-strong: var(--obsidian-raised);
    --landing-border: var(--obsidian-border);
    --landing-hairline: var(--obsidian-border);
    color: var(--text);
    background: var(--obsidian-canvas);
}

html[data-public-theme="dark"] .page-public-hero .site-header,
html[data-public-theme="dark"] .page-public-hero .public-header {
    border-color: var(--obsidian-border);
    background: var(--obsidian-glass);
    box-shadow: 0 18px 46px rgba(6, 8, 13, 0.28);
}

html[data-public-theme="dark"] .page-public-hero .brand-mark {
    border: 0;
    background: transparent;
    box-shadow: none;
}

html[data-public-theme="dark"] .page-public-hero .brand-name,
html[data-public-theme="dark"] .page-public-hero .site-nav a,
html[data-public-theme="dark"] .page-public-hero .public-nav a {
    color: var(--obsidian-text);
}

html[data-public-theme="dark"] .page-public-hero .brand-tagline {
    color: var(--obsidian-text-muted);
}

html[data-public-theme="dark"] .page-public-hero .site-nav a:hover,
html[data-public-theme="dark"] .page-public-hero .site-nav a:focus-visible,
html[data-public-theme="dark"] .page-public-hero .public-nav a:hover,
html[data-public-theme="dark"] .page-public-hero .public-nav a:focus-visible {
    color: #ffffff;
}

html[data-public-theme="dark"] .page-public-hero .hamburger-btn,
html[data-public-theme="dark"] .page-public-hero .public-theme-toggle {
    border-color: var(--obsidian-border);
    color: var(--obsidian-text);
    background: var(--obsidian-control);
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.08);
}

html[data-public-theme="dark"] .page-public-hero .public-theme-toggle:hover {
    border-color: var(--obsidian-blue);
    background: var(--obsidian-hover);
}

html[data-public-theme="dark"] .page-public-hero .hamburger-icon span {
    background-color: var(--obsidian-text);
}

html[data-public-theme="dark"] .page-landing .section-frame,
html[data-public-theme="dark"] .page-public-hero .landing-minimal-hero,
html[data-public-theme="dark"] .page-landing .landing-proof-section,
html[data-public-theme="dark"] .page-landing .landing-compact-section,
html[data-public-theme="dark"] .page-landing .landing-access-section,
html[data-public-theme="dark"] .page-landing .landing-final-cta,
html[data-public-theme="dark"] .page-landing .site-footer {
    border-color: var(--obsidian-border);
    background: var(--obsidian-section);
    box-shadow: none;
}

html[data-public-theme="dark"] .page-public-hero [data-public-hero] .section-kicker,
html[data-public-theme="dark"] .page-landing .section-kicker,
html[data-public-theme="dark"] .page-landing .landing-proof-value,
html[data-public-theme="dark"] .page-landing .landing-step-index,
html[data-public-theme="dark"] .page-landing .landing-segment-arrow {
    color: #91b0c8;
}

html[data-public-theme="dark"] .page-public-hero [data-public-hero] .hero-title,
html[data-public-theme="dark"] .page-landing .section-heading h2,
html[data-public-theme="dark"] .page-landing .landing-proof-heading h2,
html[data-public-theme="dark"] .page-landing .landing-proof-card h3,
html[data-public-theme="dark"] .page-landing .landing-step-card h3,
html[data-public-theme="dark"] .page-landing .landing-benefit-card h3,
html[data-public-theme="dark"] .page-landing .landing-segment-card h3,
html[data-public-theme="dark"] .page-landing .pricing-title,
html[data-public-theme="dark"] .page-landing .landing-offer-price strong,
html[data-public-theme="dark"] .page-landing .footer-title,
html[data-public-theme="dark"] .page-landing .footer-column > summary {
    color: var(--obsidian-text);
}

html[data-public-theme="dark"] .page-public-hero .landing-minimal-hero .hero-title {
    -webkit-text-fill-color: var(--obsidian-text);
}

html[data-public-theme="dark"] .page-public-hero [data-public-hero] .hero-description,
html[data-public-theme="dark"] .page-landing .section-heading p,
html[data-public-theme="dark"] .page-landing .landing-proof-heading p,
html[data-public-theme="dark"] .page-landing .landing-proof-card p,
html[data-public-theme="dark"] .page-landing .landing-step-card p,
html[data-public-theme="dark"] .page-landing .landing-benefit-card p,
html[data-public-theme="dark"] .page-landing .landing-segment-card p,
html[data-public-theme="dark"] .page-landing .pricing-description,
html[data-public-theme="dark"] .page-landing .pricing-description-list,
html[data-public-theme="dark"] .page-landing .pricing-features,
html[data-public-theme="dark"] .page-landing .pricing-duration,
html[data-public-theme="dark"] .page-landing .landing-offer-price span,
html[data-public-theme="dark"] .page-landing .footer-text,
html[data-public-theme="dark"] .page-landing .footer-contact-detail,
html[data-public-theme="dark"] .page-landing .footer-column a {
    color: var(--obsidian-text-secondary);
}

html[data-public-theme="dark"] .page-public-hero :where([data-public-hero]) .button-primary,
html[data-public-theme="dark"] .page-landing .button-primary,
html[data-public-theme="dark"] .page-public-hero .header-actions .button-primary {
    color: var(--obsidian-text);
    border-color: var(--obsidian-teal);
    background: var(--obsidian-teal);
}

html[data-public-theme="dark"] .page-public-hero :where([data-public-hero]) .button-primary:hover,
html[data-public-theme="dark"] .page-public-hero :where([data-public-hero]) .button-primary:focus-visible,
html[data-public-theme="dark"] .page-landing .button-primary:hover,
html[data-public-theme="dark"] .page-landing .button-primary:focus-visible,
html[data-public-theme="dark"] .page-public-hero .header-actions .button-primary:hover,
html[data-public-theme="dark"] .page-public-hero .header-actions .button-primary:focus-visible {
    color: #ffffff;
    border-color: var(--obsidian-teal-hover);
    background: var(--obsidian-teal-hover);
    box-shadow: 0 12px 30px rgba(9, 36, 34, 0.3);
}

html[data-public-theme="dark"] .page-public-hero :where([data-public-hero]) .button-tertiary,
html[data-public-theme="dark"] .page-landing .button-tertiary {
    color: var(--obsidian-text);
    border-color: var(--obsidian-border);
    background: var(--obsidian-secondary);
}

html[data-public-theme="dark"] .page-public-hero :where([data-public-hero]) .button-tertiary:hover,
html[data-public-theme="dark"] .page-public-hero :where([data-public-hero]) .button-tertiary:focus-visible,
html[data-public-theme="dark"] .page-landing .button-tertiary:hover,
html[data-public-theme="dark"] .page-landing .button-tertiary:focus-visible {
    color: #ffffff;
    border-color: var(--obsidian-blue);
    background: var(--obsidian-hover);
}

html[data-public-theme="dark"] .page-landing .landing-hero-fact,
html[data-public-theme="dark"] .page-landing .landing-proof-card,
html[data-public-theme="dark"] .page-landing .landing-step-card,
html[data-public-theme="dark"] .page-landing .landing-benefit-card,
html[data-public-theme="dark"] .page-landing .landing-access-grid .pricing-card,
html[data-public-theme="dark"] .page-landing .landing-segment-card,
html[data-public-theme="dark"] .page-landing .faq-item {
    border-color: var(--obsidian-border);
    background: var(--obsidian-card);
}

html[data-public-theme="dark"] .page-landing .landing-proof-card:hover,
html[data-public-theme="dark"] .page-landing .landing-step-card:hover,
html[data-public-theme="dark"] .page-landing .landing-benefit-card:hover,
html[data-public-theme="dark"] .page-landing .landing-access-grid .pricing-card:hover,
html[data-public-theme="dark"] .page-landing .landing-segment-card:hover,
html[data-public-theme="dark"] .page-landing .landing-access-grid .pricing-card-featured {
    border-color: var(--obsidian-blue);
    background: var(--obsidian-hover);
}

html[data-public-theme="dark"] .page-landing .landing-hero-fact-icon {
    color: var(--obsidian-text);
    border-color: var(--obsidian-border);
    background: var(--obsidian-control);
}

html[data-public-theme="dark"] .page-landing .pricing-discount-badge {
    color: #f3fffc;
    border: 1px solid #4b9b91;
    background: var(--obsidian-teal-hover);
    box-shadow: 0 8px 22px rgba(9, 36, 34, 0.34);
    font-weight: 900;
}

html[data-public-theme="dark"] .page-landing .landing-hero-fact strong,
html[data-public-theme="dark"] .page-landing .landing-hero-fact a,
html[data-public-theme="dark"] .page-landing .text-link,
html[data-public-theme="dark"] .page-landing .text-link:hover,
html[data-public-theme="dark"] .page-landing .text-link:focus-visible {
    color: var(--obsidian-text);
}

html[data-public-theme="dark"] .page-landing .landing-hero-fact small,
html[data-public-theme="dark"] .page-landing .pricing-eyebrow,
html[data-public-theme="dark"] .page-landing .pricing-base-price,
html[data-public-theme="dark"] .page-landing .text-link-muted,
html[data-public-theme="dark"] .page-landing .landing-carousel-hint {
    color: var(--obsidian-text-muted);
}

html[data-public-theme="dark"] .page-landing .landing-benefit-dot,
html[data-public-theme="dark"] .page-public-hero .telegram-chat-live-status span,
html[data-public-theme="dark"] .page-public-hero .telegram-composer-mic {
    color: var(--obsidian-text);
    background: var(--obsidian-blue);
}

html[data-public-theme="dark"] .page-public-hero .landing-order-preview.telegram-chat-shell {
    border-color: var(--obsidian-border);
    background: var(--obsidian-section);
    box-shadow: 0 0 0 7px rgba(32, 36, 49, 0.45), 0 30px 72px rgba(6, 8, 13, 0.4);
}

html[data-public-theme="dark"] .page-public-hero .telegram-phone-status,
html[data-public-theme="dark"] .page-public-hero .telegram-chat-header {
    color: var(--obsidian-text);
    background: var(--obsidian-raised);
}

html[data-public-theme="dark"] .page-public-hero .telegram-phone-island {
    background: #0f1118;
}

html[data-public-theme="dark"] .page-public-hero .telegram-chat-identity h2,
html[data-public-theme="dark"] .page-public-hero .landing-telegram-feed .hero-feed-title,
html[data-public-theme="dark"] .page-public-hero .telegram-order-facts dd {
    color: var(--obsidian-text);
}

html[data-public-theme="dark"] .page-public-hero .telegram-chat-identity p,
html[data-public-theme="dark"] .page-public-hero .telegram-chat-live-status,
html[data-public-theme="dark"] .page-public-hero .telegram-chat-composer,
html[data-public-theme="dark"] .page-public-hero .telegram-order-facts dt,
html[data-public-theme="dark"] .page-public-hero .telegram-order-description-label,
html[data-public-theme="dark"] .page-public-hero .telegram-order-quote {
    color: var(--obsidian-text-secondary);
}

html[data-public-theme="dark"] .page-public-hero .telegram-chat-live-status,
html[data-public-theme="dark"] .page-public-hero .telegram-chat-composer {
    border-color: var(--obsidian-border);
    background: var(--obsidian-raised);
}

html[data-public-theme="dark"] .page-public-hero .landing-telegram-feed {
    background-color: var(--obsidian-canvas);
    background-image: radial-gradient(circle at 22% 24%, rgba(223, 236, 251, 0.08) 0 1px, transparent 1.6px), radial-gradient(circle at 76% 68%, rgba(223, 236, 251, 0.05) 0 1px, transparent 1.6px);
}

html[data-public-theme="dark"] .page-public-hero .landing-telegram-feed .telegram-message-bubble,
html[data-public-theme="dark"] .page-public-hero .landing-telegram-feed .hero-feed-empty {
    color: var(--obsidian-text);
    border-color: var(--obsidian-border);
    background: var(--obsidian-card);
}

html[data-public-theme="dark"] .page-public-hero .telegram-order-quote {
    border-left-color: var(--obsidian-blue);
    background: rgba(69, 106, 134, 0.14);
}

html[data-public-theme="dark"] .page-public-hero .telegram-order-quote::after {
    color: #7f9fb8;
}

html[data-public-theme="dark"] .page-public-hero .telegram-composer-placeholder {
    background: var(--obsidian-secondary);
}

html[data-public-theme="dark"] .page-landing .landing-carousel-hint span {
    background: var(--obsidian-border);
}

html[data-public-theme="dark"] .page-landing .landing-carousel-hint span::after {
    background: #8eaec7;
}

@media (max-width: 1100px) {
    html[data-public-theme="dark"] .public-body .site-header-shell {
        --mobile-header-glass: var(--obsidian-glass);
    }

    html[data-public-theme="dark"] .public-body .site-header,
    html[data-public-theme="dark"] .public-body .public-header,
    html[data-public-theme="dark"] .public-body .site-nav-mobile {
        border-color: var(--obsidian-border);
        box-shadow: 0 16px 34px rgba(6, 8, 13, 0.32);
    }

    html[data-public-theme="dark"] .public-body .site-header-shell::before {
        background: var(--obsidian-canvas);
    }
}

@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
    body.page-landing {
        background: #f2f6ea;
        background-attachment: scroll;
    }

    .page-public-hero .site-header,
    .page-public-hero .public-header,
    .page-landing .section-frame,
    .page-landing .landing-proof-card,
    .page-landing .landing-step-card,
    .page-landing .landing-benefit-card,
    .page-landing .landing-access-grid .pricing-card,
    .page-landing .landing-segment-card,
    .page-landing .faq-item {
        background: #f2f6ea;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    html[data-public-theme="dark"] body.page-landing {
        background: var(--obsidian-canvas);
    }

    html[data-public-theme="dark"] .page-public-hero .site-header,
    html[data-public-theme="dark"] .page-public-hero .public-header,
    html[data-public-theme="dark"] .page-landing .section-frame,
    html[data-public-theme="dark"] .page-landing .landing-proof-card,
    html[data-public-theme="dark"] .page-landing .landing-step-card,
    html[data-public-theme="dark"] .page-landing .landing-benefit-card,
    html[data-public-theme="dark"] .page-landing .landing-access-grid .pricing-card,
    html[data-public-theme="dark"] .page-landing .landing-segment-card,
    html[data-public-theme="dark"] .page-landing .faq-item {
        background: var(--obsidian-section);
    }

}

/* Keep the approved landing material while adding the requested soft depth. */
.page-public-hero [data-public-hero],
.page-landing :is(
    .section-frame,
    .landing-minimal-hero,
    .landing-proof-section,
    .landing-compact-section,
    .landing-access-section,
    .landing-final-cta
) {
    box-shadow: var(--public-shadow-soft);
}

.page-landing :is(
    .landing-hero-fact,
    .landing-proof-card,
    .landing-step-card,
    .landing-benefit-card,
    .landing-access-grid .pricing-card,
    .landing-segment-card,
    .faq-item
) {
    box-shadow: var(--public-shadow-control);
}

html[data-public-theme="dark"] .page-public-hero [data-public-hero],
html[data-public-theme="dark"] .page-landing :is(
    .section-frame,
    .landing-minimal-hero,
    .landing-proof-section,
    .landing-compact-section,
    .landing-access-section,
    .landing-final-cta
) {
    box-shadow: var(--public-shadow-soft);
}

html[data-public-theme="dark"] .page-landing :is(
    .landing-hero-fact,
    .landing-proof-card,
    .landing-step-card,
    .landing-benefit-card,
    .landing-access-grid .pricing-card,
    .landing-segment-card,
    .faq-item
) {
    box-shadow: var(--public-shadow-control);
}

/* Public parity contract: the approved landing material is shared by every
 * public family. Family selectors may still own composition in public.css. */
body.public-body {
    --text: var(--public-text);
    --text-soft: var(--public-text-soft);
    --text-muted: var(--public-text-muted);
    --border: var(--public-border);
    --border-accent: var(--public-border-strong);
    --glass: var(--public-card);
    --gradient-card: var(--public-card);
    --gradient-hero: var(--public-section);
    background: linear-gradient(
        90deg,
        #75ceff 0%,
        #8ad4fb 6%,
        #b1e0f4 15%,
        #ddefed 25%,
        #f2f6ea 35%,
        #f2f6ea 65%,
        #ddefee 75%,
        #b1e1f5 85%,
        #8ad3fb 94%,
        #74cbfc 100%
    );
    background-attachment: fixed;
}

html[data-public-theme="dark"] body.public-body {
    background: var(--public-canvas);
}

body.public-body :is(.site-header, .public-header) {
    color: var(--public-text);
    border-color: var(--public-header-border);
    background: var(--public-header);
    box-shadow: var(--public-header-shadow);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

@media (max-width: 1100px) {
    body.public-body :is(.site-header, .public-header, .site-nav-mobile) {
        background: var(--public-mobile-header);
    }
}

body.public-body :is(.site-header, .section-frame, .site-footer)::before {
    display: none;
    background: none;
    opacity: 0;
}

body.public-body :is(.section-frame, .site-footer) {
    color: var(--public-text);
    border-color: var(--public-border);
    border-radius: clamp(26px, 2.4vw, 40px);
    background: var(--public-section);
    box-shadow: var(--public-shadow-soft);
    backdrop-filter: blur(10px) saturate(112%);
    -webkit-backdrop-filter: blur(10px) saturate(112%);
}

body.public-body :is(
    .content-card,
    .segment-card,
    .pricing-card,
    .faq-item,
    .hero-proof-item,
    .landing-proof-card,
    .landing-step-card,
    .landing-benefit-card,
    .landing-segment-card,
    .landing-hero-fact
) {
    color: var(--public-text);
    border: 1px solid var(--public-border);
    border-radius: var(--radius-lg);
    background: var(--public-card);
    box-shadow: var(--public-shadow-control);
    backdrop-filter: blur(14px) saturate(116%);
    -webkit-backdrop-filter: blur(14px) saturate(116%);
}

body.public-body .pricing-card-featured {
    border-color: var(--public-border-strong);
    background: var(--public-raised);
    box-shadow: var(--public-shadow-raised);
}

body.public-body .button {
    border-radius: var(--radius-lg);
}

body.public-body .button-primary,
body.public-body .header-actions .button-primary {
    color: var(--public-primary-text);
    border-color: var(--public-primary);
    background: var(--public-primary);
    box-shadow: none;
    filter: none;
}

body.public-body .button-primary:hover,
body.public-body .button-primary:focus-visible,
body.public-body .header-actions .button-primary:hover,
body.public-body .header-actions .button-primary:focus-visible {
    color: #ffffff;
    border-color: var(--public-primary-hover);
    background: var(--public-primary-hover);
    box-shadow: 0 12px 30px rgba(9, 36, 34, 0.24);
    filter: none;
}

body.public-body :is(.button-secondary, .button-tertiary) {
    color: var(--public-text);
    border-color: var(--public-border);
    background: var(--public-secondary);
    box-shadow: none;
    backdrop-filter: blur(16px) saturate(120%);
    -webkit-backdrop-filter: blur(16px) saturate(120%);
}

body.public-body :is(.button-secondary, .button-tertiary):hover,
body.public-body :is(.button-secondary, .button-tertiary):focus-visible {
    color: var(--public-text);
    border-color: var(--public-border-strong);
    background: var(--public-raised);
    box-shadow: var(--public-shadow-control);
}

body.public-body :is(.public-theme-toggle, .hamburger-btn) {
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    color: var(--public-text);
    border: 1px solid var(--public-border);
    border-radius: 50%;
    background: var(--public-control);
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.08), var(--public-shadow-control);
}

@media (max-width: 760px) {
    body.public-body :is(.section-frame, .site-footer) {
        border-radius: 24px;
    }
}

/* The landing footer is the canonical public footer across every route. */
html[data-public-theme="dark"] body.public-body .site-footer {
    border-color: var(--obsidian-border, #394153);
    background: var(--obsidian-section, #1b1e28);
    box-shadow: none;
}

html[data-public-theme="dark"] body.public-body .footer-title,
html[data-public-theme="dark"] body.public-body .footer-column > summary {
    color: var(--obsidian-text, #f3f5f8);
}

html[data-public-theme="dark"] body.public-body .footer-text,
html[data-public-theme="dark"] body.public-body .footer-contact-detail,
html[data-public-theme="dark"] body.public-body .footer-column a {
    color: var(--obsidian-text-secondary, #aeb6c5);
}

/* The footer is a single component and never inherits page-specific type scales. */
body.public-body .site-footer .section-kicker {
    color: var(--public-footer-kicker);
    font-size: 0.75rem;
    font-weight: 750;
    line-height: 1.43;
    letter-spacing: 0.14em;
}

@media (max-width: 760px) {
    body.public-body .site-footer {
        background: rgba(248, 250, 244, 0.72);
    }

    html[data-public-theme="dark"] body.public-body .site-footer {
        background: rgba(36, 41, 54, 0.82);
    }
}

@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
    body.public-body {
        --public-section: #f2f6ea;
        --public-card: #f2f6ea;
        --public-raised: #ffffff;
        --public-control: #f2f6ea;
        --public-secondary: #f2f6ea;
    }

    html[data-public-theme="dark"] body.public-body {
        --public-section: #1b1e28;
        --public-card: #202431;
        --public-raised: #242936;
        --public-control: #2a3040;
        --public-secondary: #1e222d;
    }

    body.public-body :is(
        .site-header,
        .public-header,
        .section-frame,
        .site-footer,
        .content-card,
        .segment-card,
        .pricing-card,
        .faq-item,
        .hero-proof-item,
        .legal-document-content
    ) {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
}
