/* Zeno Turtle — approved pixel journey skin.
 * The existing page grids, content order and responsive layout stay in style.css.
 * Artwork: ../images/pixel/ · font licenses: ../fonts/pixel/
 */
@media (hover: hover) and (pointer: fine) {
    html,
    body,
    body * {
        cursor: url('../images/pixel/cursor-turtle.svg') 3 5, auto !important;
    }
    a,
    button,
    [role='button'],
    input[type='button'],
    input[type='submit'],
    input[type='reset'],
    label[for],
    select,
    summary,
    .clickable,
    a *,
    button * {
        cursor: url('../images/pixel/cursor-turtle-active.svg') 3 5, pointer !important;
    }
}
@font-face {
    font-family: 'Zeno Pixel';
    src: url('../fonts/pixel/fusion-pixel-12px-proportional-zh_hans.otf.woff2') format('woff2');
    font-display: swap;
    font-weight: 400 900;
}
@font-face {
    font-family: 'Zeno Pixel TC';
    src: url('../fonts/pixel/fusion-pixel-12px-proportional-zh_hant.otf.woff2') format('woff2');
    font-display: swap;
    font-weight: 400 900;
}
@font-face {
    font-family: 'Zeno Pixel JP';
    src: url('../fonts/pixel/fusion-pixel-12px-proportional-ja.otf.woff2') format('woff2');
    font-display: swap;
    font-weight: 400 900;
}
@font-face {
    font-family: 'Zeno Pixel KR';
    src: url('../fonts/pixel/fusion-pixel-12px-proportional-ko.otf.woff2') format('woff2');
    font-display: swap;
    font-weight: 400 900;
}
:root {
    color-scheme: dark;
    --bg-primary: #061326;
    --bg-secondary: #0a1b31;
    --bg-card: #0b2038;
    --bg-card-hover: #102b45;
    --text-primary: #f6f2df;
    --text-secondary: #c6d3e1;
    --text-tertiary: #a5b8cf;
    --text-muted: #9caec3;
    --accent: #ffd45b;
    --accent-light: #ffe58d;
    --accent-dark: #d5a432;
    --accent-soft: #242a2d;
    --accent-glow: #4f4628;
    --border-subtle: #263f59;
    --border-medium: #526880;
    --border-glow: #b79239;
    --gradient-primary: linear-gradient(#ffe789, #ffd45b);
    --gradient-hero: linear-gradient(180deg, #0b2443, #061326);
    --gradient-card: linear-gradient(#0b2038, #0b2038);
    --shadow-sm: 2px 2px 0 #020b16;
    --shadow-md: 4px 4px 0 #020b16;
    --shadow-glow: 4px 4px 0 #020b16;
    --shadow-glow-lg: 6px 6px 0 #020b16;
    --radius-sm: 0px;
    --radius-md: 0px;
    --radius-lg: 0px;
    --radius-xl: 0px;
    --radius-full: 0px;
    --font-display: 'Zeno Pixel', 'Microsoft YaHei', sans-serif;
    --font-sans: var(--font-display);
    --pixel-green: #8fc96b;
    --pixel-cut: polygon(0 8px, 4px 8px, 4px 4px, 8px 4px, 8px 0,
        calc(100% - 8px) 0, calc(100% - 8px) 4px, calc(100% - 4px) 4px,
        calc(100% - 4px) 8px, 100% 8px, 100% calc(100% - 8px),
        calc(100% - 4px) calc(100% - 8px), calc(100% - 4px) calc(100% - 4px),
        calc(100% - 8px) calc(100% - 4px), calc(100% - 8px) 100%,
        8px 100%, 8px calc(100% - 4px), 4px calc(100% - 4px),
        4px calc(100% - 8px), 0 calc(100% - 8px));
}
html:lang(zh-TW) { --font-display: 'Zeno Pixel TC', sans-serif; }
html:lang(ja-JP) { --font-display: 'Zeno Pixel JP', sans-serif; }
html:lang(ko-KR) { --font-display: 'Zeno Pixel KR', sans-serif; }
body.zeno-pixel {
    background: var(--bg-primary);
    font-family: var(--font-display);
}
body.zeno-pixel :where(h1, h2, h3, h4, h5, h6, p, a, span, strong, em, small,
    li, dt, dd, blockquote, figcaption, label, button, input, textarea, select,
    option, table, th, td, code, pre, kbd, samp) {
    font-family: var(--font-display) !important;
}
::selection { background: var(--accent); color: #091323; }
html { scrollbar-color: #526880 #061326; scroll-padding-top: 96px; }
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #061326; }
::-webkit-scrollbar-thumb { background: #526880; border-radius: 0; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
input, textarea { caret-color: var(--accent); accent-color: var(--accent); }
a { text-underline-offset: 4px; }
svg { stroke-linecap: square; stroke-linejoin: miter; }
img[src*='/pixel/'] { image-rendering: pixelated; }

/* Crisp type on display surfaces; long copy and form fields remain conventional. */
.zeno-hero-title, .zeno-section-title, .zeno-cta-title,
.zeno-pricing-hero-title, .zeno-pricing-hero-title span,
.zeno-pricing-cta-title, .zeno-submit-hero-title, .zeno-submit-hero-title span,
.zeno-pixel .policy-title {
    background: none;
    color: var(--text-primary);
    -webkit-text-fill-color: currentColor;
    letter-spacing: 0;
    font-family: var(--font-display);
    font-weight: 400;
    text-shadow: 2px 2px 0 #020b16;
}
.zeno-hero-title { line-height: 1.08; }
.zeno-pixel-accent { color: var(--accent); }
.zeno-hero-stat-num, .zeno-counter-num, .zeno-pricing-price-amount,
.zeno-feature-card h3, .zeno-social-card h3, .zeno-doc-card h3,
.zeno-result-title, .zeno-pricing-card-title {
    font-family: var(--font-display);
    font-weight: 400;
    background: none;
    -webkit-text-fill-color: currentColor;
    color: var(--text-primary);
    letter-spacing: 0;
}
.zeno-hero-stat-num span { color: var(--accent); }

/* The full existing navigation is retained. */
.zeno-header, .zeno-header.scrolled {
    z-index: 1002;
    background: #061326;
    border-bottom: 1px solid #526880;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.zeno-nav-link { color: #d6e0e9; }
.zeno-nav-link:hover, .zeno-nav-link.active { color: #fff4cf; background: #10253d; }
.zeno-nav-badge:hover { color: #091323 !important; }
.zeno-dropdown-menu, .lang-dropdown, .zeno-mobile-overlay {
    background: #081a30;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: var(--shadow-md);
}
.zeno-nav-dropdown:focus-within .zeno-dropdown-menu {
    opacity: 1; visibility: visible; pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}
.zeno-lang-btn { color: var(--text-secondary); }
.zeno-mobile-toggle { min-width: 44px; min-height: 44px; justify-content: center; }
.zeno-mobile-toggle span { border-radius: 0; }
.zeno-mobile-menu { overflow-y: auto; justify-content: safe center; }

/* Hero: exact original left-copy/right-art structure, approved scenery behind it. */
.zeno-hero {
    background: #061326 url('../images/pixel/night-valley.webp') center bottom / cover no-repeat;
    isolation: isolate;
}
.zeno-hero::before {
    content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background: linear-gradient(90deg, rgba(3, 14, 30, .4), transparent 72%);
}
.zeno-hero > .container { position: relative; z-index: 1; }
.zeno-hero-desc, .zeno-hero-stat-label { text-shadow: 1px 2px 1px #020b16; }
.zeno-hero-ticker { background: #061326; color: var(--accent); border-bottom: 1px solid #394354; }
.zeno-hero-ticker-item, .zeno-hero-ticker-dot { color: var(--accent); }
.zeno-hero-badge, .zeno-section-tag {
    background: #0b2038; border-color: #526880; color: var(--pixel-green);
    box-shadow: 2px 2px 0 #020b16;
}
.zeno-pulse { border-radius: 0; background: var(--pixel-green); animation: none; }
.zeno-hero-card {
    background: #061326;
    border: 3px solid #718095;
    clip-path: var(--pixel-cut);
    box-shadow: inset 0 0 0 3px #192d43;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.zeno-hero-img { aspect-ratio: 420 / 498; object-fit: cover; }
.zeno-hero-visual, .zeno-float-img, .zeno-phone-mockup { animation: none; }
.zeno-hero-stats { border-top-color: #526880; }
.zeno-scroll-line { width: 2px; background: #a5b8cf; animation: none; }
.zeno-particles, .zeno-hero-glow, .zeno-hero-card-orb, .zeno-float-card-glow,
.zeno-governance-bg-glow, .zeno-social-bg-glow, .zeno-phone-glow,
.zeno-app-bg-grid, .zeno-cta-glow, .zeno-pricing-hero-glow,
.zeno-pricing-hero-grid, .zeno-pricing-hero-orbit, .zeno-pricing-hero-particles,
.zeno-pricing-icon-glow, .zeno-pricing-cta-bg, .zeno-submit-hero-bg { display: none; }

/* Pixel buttons preserve existing sizes and actions. */
.zeno-btn, .zeno-pricing-btn, .zeno-submit-btn, .zeno-result-close {
    font-family: var(--font-display);
    font-weight: 400;
    /* Scene-copy shadows must not bleed into pixel button labels. */
    text-shadow: none;
    border-radius: 0;
    clip-path: var(--pixel-cut);
    transition: background-color 120ms, color 120ms, transform 120ms;
    animation: none;
}
.zeno-btn-primary, .zeno-pricing-btn-primary, .zeno-submit-btn, .zeno-result-close {
    color: #14202b;
    background: #ffd45b;
    border: 3px solid #ffe9a0;
    box-shadow: inset 0 0 0 2px #d5a432, inset 0 -5px 0 #e8b441;
}
.zeno-btn-primary:hover, .zeno-pricing-btn-primary:hover,
.zeno-submit-btn:hover, .zeno-result-close:hover {
    background: #ffe58d; color: #14202b;
    box-shadow: inset 0 0 0 2px #d5a432, inset 0 -5px 0 #e8b441;
    transform: translateY(-2px);
}
.zeno-btn-outline, .zeno-pricing-btn:not(.zeno-pricing-btn-primary) {
    background: #061326; border: 2px solid #718095; color: var(--text-primary);
    box-shadow: inset 0 0 0 2px #192d43;
}
.zeno-btn:active, .zeno-submit-btn:active, .zeno-pricing-btn:active { transform: translateY(2px); }
.zeno-btn:focus-visible, .zeno-submit-btn:focus-visible, .zeno-pricing-btn:focus-visible,
.zeno-result-close:focus-visible { outline-offset: -6px; outline-color: #258b91; }
.zeno-submit-btn:disabled, .zeno-pricing-btn-disabled { opacity: .6; cursor: not-allowed; transform: none; }

/* All marketing surfaces share the same solid, framed panel material. */
.zeno-features, .zeno-assets, .zeno-counter, .zeno-testimonial,
.zeno-pricing-modules, .zeno-submit-form, .zeno-brand-story { background: #081a30; }
.zeno-governance, .zeno-social, .zeno-app, .zeno-faq, .zeno-documents,
.zeno-pricing-faq, .zeno-brand-philosophy { background: #061326; }
.zeno-feature-card, .zeno-social-card, .zeno-float-card, .zeno-testimonial-card,
.zeno-doc-card, .zeno-accordion-item, .zeno-pricing-card, .zeno-pricing-faq-card,
.zeno-submit-card, .zeno-pixel .policy-content, .zeno-brand-media,
.zeno-brand-philosophy-visual, .zeno-brand-vision-block {
    background: #0a1d34;
    border: 2px solid #526880;
    border-radius: 0;
    box-shadow: 4px 4px 0 #020b16;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.zeno-feature-card::before, .zeno-social-card::before,
.zeno-pricing-card::before, .zeno-pricing-card::after { display: none; }
.zeno-feature-card:hover, .zeno-social-card:hover, .zeno-doc-card:hover,
.zeno-pricing-card:hover, .zeno-testimonial-card:hover {
    background: #102b45; border-color: var(--accent);
    box-shadow: 4px 4px 0 #020b16; transform: translateY(-2px);
}
.zeno-feature-icon, .zeno-social-icon, .zeno-doc-icon, .zeno-counter-icon,
.zeno-pricing-card-icon, .zeno-accordion-icon, .zeno-pricing-faq-icon {
    background: #16372f; color: var(--pixel-green); border: 1px solid #486c51;
    border-radius: 0; box-shadow: none;
}
.zeno-feature-icon-bg { display: none; }
.zeno-check-icon { background: #16372f; color: #a8e483; border-radius: 0; }
.zeno-float-card { transform: none; overflow: hidden; }
.zeno-float-img[src*='/pixel/'] { aspect-ratio: 570 / 514; object-fit: contain; }
.zeno-float-card { animation: none; }
.zeno-feature-card:hover .zeno-feature-icon,
.zeno-social-card:hover .zeno-social-icon,
.zeno-pricing-card:hover .zeno-pricing-card-icon {
    background: #16372f; color: #b8e598; box-shadow: none; transform: none;
}
.zeno-social-shot, .zeno-dl-btn, .zeno-carousel-btn, .zeno-back-to-top {
    border-radius: 0; border-color: #718095; background-color: #0b2038;
    box-shadow: 2px 2px 0 #020b16;
}
.zeno-social-shot img, .zeno-phone-img, .zeno-dl-btn img { image-rendering: auto; }
.zeno-social-shot:hover img { transform: none; }
.zeno-social-shot-zoom { background: rgba(3, 14, 30, .62); backdrop-filter: none; }
.zeno-carousel-dot { border-radius: 0; }
.zeno-pricing-tab { border-color: #526880; background: #0b2038; color: var(--text-secondary); }
.zeno-pricing-tab.active { background: #ffd45b; color: #14202b; border-color: #ffe9a0; box-shadow: 2px 2px 0 #020b16; }
.zeno-pricing-card-featured { border-color: var(--accent); }
.zeno-pricing-card-ribbon { background: var(--accent); color: #14202b; }
.zeno-pricing-card-ribbon.upcoming { background: #203b50; color: #d6e0e9; }
.zeno-pricing-card-badge { color: #b8e598; border-color: #486c51; background: #16372f; }
.zeno-pricing-price-amount { color: var(--accent); }
.zeno-pricing-price { background: #061326; border-color: #526880; border-radius: 0; }
.zeno-pricing-features li svg, .zeno-social-list li::before { color: var(--pixel-green); }
.zeno-pricing-hero, .zeno-submit-hero, .zeno-cta, .zeno-pricing-cta {
    background: #061326 url('../images/pixel/night-valley.webp') center 65% / cover no-repeat;
}
.zeno-pricing-hero-content, .zeno-submit-hero-content,
.zeno-cta-content, .zeno-pricing-cta-content { text-shadow: 1px 2px 1px #020b16; }
.zeno-pricing-wave { display: none; }
.zeno-footer { background: #041020; border-top: 2px solid #263f59; }
.zeno-footer p, .zeno-footer a, .zeno-footer h4, .zeno-footer span,
.zeno-footer button, .zeno-footer li {
    font-family: var(--font-display);
    font-weight: 400;
    letter-spacing: 0;
}
.zeno-footer-brand p, .zeno-footer-bottom p { line-height: 1.8; }
.zeno-testimonial[hidden] { display: none !important; }
.zeno-security-url--safe .zeno-security-url-text {
    color: #71e7c2;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.zeno-security-url--safe .zeno-security-url-text:hover { color: #fff4cf; }

/* Forms and overlays: readable UI, explicit focus and existing validation states. */
.zeno-form-input, .zeno-form-select, .zeno-form-textarea {
    background-color: #061326; border: 2px solid #526880; border-radius: 0;
    color: var(--text-primary); box-shadow: inset 2px 2px 0 #020b16;
    font-family: var(--font-sans);
}
.zeno-form-input:focus, .zeno-form-select:focus, .zeno-form-textarea:focus {
    border-color: var(--accent); background-color: #0b2038;
    box-shadow: 0 0 0 2px #061326, 0 0 0 4px var(--accent);
}
.zeno-form-input::placeholder, .zeno-form-textarea::placeholder { color: #a5b8cf; opacity: 1; }
.zeno-form-select option { background: #0b2038; color: #f6f2df; }
.zeno-form-select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffd45b' d='M1 3h2v2h2v2h2V5h2V3h2v2H9v2H7v2H5V7H3V5H1z'/%3E%3C/svg%3E");
}
.zeno-form-group.has-error .zeno-form-input,
.zeno-form-group.has-error .zeno-form-select,
.zeno-form-group.has-error .zeno-form-textarea { border-color: #ff9393; }
.zeno-form-error, .zeno-form-required { color: #ff9393; }
.zeno-form-upload-area, .zeno-form-info-card { background: #0b2038; border-color: #526880; border-radius: 0; }
.zeno-form-upload-area { width: 100%; }
.zeno-form-upload-remove {
    width: 44px; height: 44px; z-index: 1;
    border-radius: 0; border: 1px solid #718095;
    background: #061326; color: var(--text-primary); font-size: 24px;
}
.zeno-form-upload-area:hover { border-color: var(--accent); background: #102b45; }
.zeno-form-checkbox, .zeno-form-radio { background: #0b2038; border-color: #526880; }
.zeno-form-checkbox:has(input:checked), .zeno-form-radio:has(input:checked) {
    background: #16372f; border-color: #8fc96b; box-shadow: none;
}
.zeno-form-checkbox:has(input:focus-visible), .zeno-form-radio:has(input:focus-visible) {
    outline: 3px solid var(--accent); outline-offset: 3px;
}
.zeno-submit-step.active { color: var(--accent); }
.zeno-submit-step.active .zeno-submit-step-num { background: var(--accent); color: #14202b; box-shadow: none; }
.zeno-policy-dialog, .zeno-security-dialog, .zeno-result-dialog, .zeno-tg-dialog {
    background: #0a1d34; border: 2px solid #718095; border-radius: 0;
    box-shadow: 6px 6px 0 #020b16; backdrop-filter: none; -webkit-backdrop-filter: none;
}
.zeno-policy-header, .zeno-security-header { background: #0a1d34; border-color: #526880; }
.zeno-policy-overlay, .zeno-security-overlay, .zeno-result-overlay { background: rgba(2, 9, 20, .85); backdrop-filter: none; }
.zeno-security-warning-box { border-color: #b79239; background: #28291e; }
.zeno-security-url, .zeno-security-url-badge, .zeno-security-tip-num,
.zeno-security-icon, .zeno-result-icon, .zeno-tg-icon-ring { border-radius: 0; }
.zeno-security-subtitle, .zeno-security-tip-item p, .zeno-result-msg { color: var(--text-secondary); }
.zeno-security-tip-num { background: #16372f; color: #b8e598; }
.zeno-security-url-text { overflow-wrap: anywhere; }
.zeno-tg-modal-link { border-color: #526880; border-radius: 0; background: #061326; }

/* Brand chapters retain their existing storytelling layouts. */
.zeno-brand-opening h1, .zeno-brand-opening h2, .zeno-brand-chapter h3,
.zeno-brand-mission h3, .zeno-brand-slogan h3 {
    font-family: var(--font-display); font-weight: 400; letter-spacing: 0;
    color: var(--text-primary); line-height: 1.15;
}
.zeno-brand-word { color: var(--accent); -webkit-text-stroke: 0; font-weight: 400; letter-spacing: 0; }
.zeno-brand-index, .zeno-brand-eyebrow { color: var(--pixel-green); }
.zeno-brand-directions {
    background: linear-gradient(90deg, #061326 5%, rgba(6, 19, 38, .86) 62%, rgba(6, 19, 38, .6)),
        url('../images/pixel/brand-paths.webp') right center / cover no-repeat;
}
.zeno-brand-principles, .zeno-brand-directions-grid { background: #526880; border-color: #526880; }
.zeno-brand-principles li, .zeno-brand-direction { background: #0a1d34; backdrop-filter: none; }
.zeno-brand-core { background: #061326; border-color: #718095; backdrop-filter: none; }
.zeno-brand-media::after { box-shadow: none; }
.zeno-brand-media:hover img { transform: none; }
.zeno-brand-opening-shade {
    background: linear-gradient(90deg, rgba(6, 19, 38, .92), rgba(6, 19, 38, .75) 36%, rgba(6, 19, 38, .05) 75%);
}
.zeno-pixel .policy-page { background: #061326; }
.zeno-pixel .policy-content h1, .zeno-pixel .policy-content h2,
.zeno-pixel .policy-content h3, .zeno-pixel .policy-content h4,
.zeno-policy-body h1, .zeno-policy-body h2, .zeno-policy-body h3 {
    font-family: var(--font-sans);
}
.zeno-pixel .alternat_about_area { background: #061326; }
.zeno-pixel .versionList li { background: #0a1d34; border: 1px solid #526880; padding: 24px; margin-bottom: 24px; color: #c6d3e1; }
.zeno-pixel .witr_section_title_inner h3 { color: var(--text-primary); font-family: var(--font-display); }

/* Secondary UI follows the same pixel language as the primary actions. */
.zeno-nav-link, .zeno-dropdown-menu a, .zeno-lang-btn, .lang-dropdown li,
.zeno-mobile-link, .zeno-mobile-lang, .zeno-pricing-tab, .zeno-section-tag,
.zeno-pricing-card-badge, .zeno-pricing-card-ribbon, .zeno-pricing-price-currency,
.zeno-footer-col h4, .zeno-form-section-title, .zeno-form-info-content h4,
.zeno-submit-step, .zeno-submit-step-num, .zeno-policy-modal-title,
.zeno-security-title, .zeno-testimonial-title, .zeno-pricing-faq-card h4,
.zeno-accordion-title,
.zeno-copy-btn, .zeno-tg-modal-link {
    font-family: var(--font-display);
    font-weight: 400;
    letter-spacing: 0;
    text-shadow: none;
}
.zeno-pricing-tab {
    clip-path: var(--pixel-cut); border-radius: 0; border-width: 2px;
    animation: none;
}
.zeno-pricing-tab.active, .zeno-pricing-tab.active:hover {
    background: var(--accent); color: #14202b;
    box-shadow: inset 0 -3px 0 #d5a432; border-color: #ffe9a0;
}
.zeno-pricing-tab:focus-visible { outline-offset: -6px; }
.zeno-form-checkbox, .zeno-form-radio, .zeno-form-checkbox::before,
.zeno-form-radio::before, .zeno-submit-step-num, .zeno-copy-btn,
.zeno-policy-close, .zeno-security-close, .zeno-social-shot-badge,
.zeno-social-list li::before, .zeno-nav-link::after,
.zeno-policy-body .policy-loading .dot-pulse, .policy-loading .dot-pulse {
    border-radius: 0;
}
.zeno-form-checkbox:hover, .zeno-form-radio:hover {
    background: #102b45; border-color: #8fc96b;
}
.zeno-form-checkbox:has(input:checked)::before {
    background: #8fc96b; border-color: #8fc96b; box-shadow: none;
}
.zeno-form-checkbox:has(input:checked)::after { border-color: #14202b; }
.zeno-form-radio:has(input:checked)::before {
    border-color: #8fc96b; background: #8fc96b;
    box-shadow: inset 0 0 0 3px #061326;
}
.zeno-copy-btn, .zeno-policy-close, .zeno-security-close {
    background: #061326; border: 1px solid #718095;
    color: var(--text-primary); box-shadow: 2px 2px 0 #020b16;
}
.zeno-policy-close, .zeno-security-close { min-width: 44px; min-height: 44px; }
.zeno-copy-btn:hover, .zeno-policy-close:hover, .zeno-security-close:hover {
    background: #102b45; color: var(--accent); border-color: var(--accent);
}
.zeno-copy-btn.copied { background: #16372f; color: #b8e598; border-color: #8fc96b; }
.zeno-hero-ticker, .zeno-back-to-top, .zeno-social-shot-badge {
    backdrop-filter: none; -webkit-backdrop-filter: none;
}
.zeno-social-shot-badge { background: #061326; border-color: #718095; }
.zeno-social-shot:hover .zeno-social-shot-badge { color: #14202b; }
.zeno-social-list li::before { background: var(--pixel-green); opacity: 1; }
.zeno-security-icon, .zeno-tg-icon-ring {
    background: #16372f; border-color: #486c51; color: #b8e598; box-shadow: none;
}
/* Legacy contact-dialog declarations use !important in style.css. */
.zeno-pixel .zeno-tg-dialog {
    background: #0a1d34 !important;
    border: 2px solid #718095 !important;
    box-shadow: 6px 6px 0 #020b16 !important;
}
.zeno-tg-modal-link, .zeno-tg-modal-link:hover {
    clip-path: var(--pixel-cut); background: var(--accent); color: #14202b;
    border: 2px solid #ffe9a0; box-shadow: inset 0 -3px 0 #d5a432;
    text-shadow: none;
}
.zeno-features::before, .zeno-social::before { background: #263f59; }
.zeno-social-shot-zoom svg { filter: none; }

/* Keep content visible; motion is reserved for tactile control feedback. */
[data-reveal], [data-reveal].revealed { opacity: 1; transform: none; transition: none; }
.zeno-hero-badge, .zeno-hero-title, .zeno-hero-desc, .zeno-hero-btns,
.zeno-hero-stats, .zeno-brand-progress span { animation: none; }
@media (max-width: 991px) {
    .zeno-hero { background-position: 65% bottom; }
    .zeno-hero::before { background: rgba(3, 14, 30, .3); }
    .zeno-hero-card { width: 100%; max-width: 470px; }
    .zeno-hero-img { max-width: 100%; }
    .zeno-mobile-menu { padding-top: 90px; padding-bottom: 28px; gap: 14px; }
    .zeno-mobile-link { font-size: 18px; }
    .zeno-mobile-lang { margin-top: 8px; }
}
@media (max-width: 575px) {
    .zeno-hero-card { padding: 16px; }
    .zeno-hero-title { font-size: 36px; line-height: 1.3; text-wrap: balance; }
    .zeno-hero-stat-num { font-size: 30px; }
    .zeno-hero-desc { font-size: 16px; }
    .zeno-btn { min-height: 48px; }
    .zeno-brand-opening-shade { background: linear-gradient(180deg, transparent 40%, #081a30 100%); }
    .zeno-form-input, .zeno-form-select, .zeno-form-textarea { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Motion layer: transform-only parallax keeps the pixel scenery crisp. */
.zeno-hero {
    overflow: hidden;
    background-image: none;
}
.zeno-hero-motion-bg {
    position: absolute;
    inset: -6%;
    z-index: 0;
    pointer-events: none;
    background: #061326 url('../images/pixel/night-valley.webp') center bottom / cover no-repeat;
    image-rendering: pixelated;
    transform: scale(1.06);
    transform-origin: center bottom;
    will-change: transform;
}
.zeno-hero::before { z-index: 1; }
.zeno-hero-ticker,
.zeno-hero > .container,
.zeno-scroll-indicator { z-index: 2; }
.zeno-motion-ready .zeno-hero-card,
.zeno-motion-ready .zeno-float-card,
.zeno-motion-ready .zeno-feature-card,
.zeno-motion-ready .zeno-social-card { will-change: transform; }

.zeno-hero-atmosphere,
.zeno-pixel-stars,
.zeno-pixel-clouds,
.zeno-pixel-lights,
.zeno-pixel-grass {
    position: absolute;
    inset: 0;
    pointer-events: none;
}
.zeno-hero-atmosphere { z-index: 1; overflow: hidden; }
.zeno-pixel-star {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: var(--size);
    height: var(--size);
    background: #fff4cf;
    box-shadow: 0 0 0 1px rgba(255, 212, 91, .32);
    image-rendering: pixelated;
}
.zeno-pixel-star:nth-child(3n) { background: #8fc96b; }
.zeno-pixel-star:nth-child(4n) { background: #8bbcff; }
.zeno-pixel-cloud {
    position: absolute;
    left: -140px;
    top: var(--y);
    width: var(--width);
    height: 18px;
    background: rgba(67, 98, 139, .2);
    box-shadow: 18px -10px 0 rgba(67, 98, 139, .15), 42px -16px 0 rgba(67, 98, 139, .12), 64px -8px 0 rgba(67, 98, 139, .17);
    clip-path: polygon(0 50%, 12% 50%, 12% 25%, 28% 25%, 28% 0, 62% 0, 62% 20%, 82% 20%, 82% 45%, 100% 45%, 100% 100%, 0 100%);
}
.zeno-pixel-light {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: 4px;
    height: 4px;
    background: #ffd45b;
    box-shadow: 0 0 0 2px rgba(255, 212, 91, .16), 0 0 12px 5px rgba(255, 176, 48, .28);
}
.zeno-pixel-grass { top: auto; height: 76px; bottom: 0; }
.zeno-grass-blade {
    position: absolute;
    left: var(--x);
    bottom: -4px;
    width: 4px;
    height: var(--height);
    background: #557d39;
    box-shadow: 4px 7px 0 #314f2a;
    transform-origin: 50% 100%;
}
.zeno-art-fx {
    position: absolute;
    inset: 0;
    z-index: 3;
    overflow: hidden;
    pointer-events: none;
}
.zeno-art-spark {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: var(--size);
    height: var(--size);
    background: var(--spark-color, #52e5d5);
    box-shadow: 0 0 8px 2px color-mix(in srgb, var(--spark-color, #52e5d5) 55%, transparent);
}
.zeno-art-spark:nth-child(even) { --spark-color: #ffd45b; }
.zeno-hero-card-inner,
.zeno-float-card { position: relative; overflow: hidden; }
.zeno-motion-ready .zeno-hero-img,
.zeno-motion-ready .zeno-float-img { will-change: transform; }
@media (prefers-reduced-motion: reduce) {
    .zeno-hero-motion-bg { transform: none !important; inset: 0; will-change: auto; }
    .zeno-motion-ready .zeno-hero-card,
    .zeno-motion-ready .zeno-float-card,
    .zeno-motion-ready .zeno-feature-card,
    .zeno-motion-ready .zeno-social-card { will-change: auto; }
    .zeno-hero-atmosphere,
    .zeno-art-fx { display: none; }
}

/* Integer-grid UI symbols, independent of brand and product screenshots. */
.zeno-pixel-icon { display: inline-block; width: 32px; height: 32px; flex: 0 0 auto; background: currentColor; mask: var(--pixel-icon) center / contain no-repeat; -webkit-mask: var(--pixel-icon) center / contain no-repeat; }
.zeno-pricing-tab .zeno-pixel-icon { width: 24px; height: 24px; }
.zeno-pixel-icon-coin { --pixel-icon: url('../images/pixel/icons/coin.svg'); }
.zeno-pixel-icon-wallet { --pixel-icon: url('../images/pixel/icons/wallet.svg'); }
.zeno-pixel-icon-shield { --pixel-icon: url('../images/pixel/icons/shield.svg'); }
.zeno-pixel-icon-grid { --pixel-icon: url('../images/pixel/icons/grid.svg'); }
.zeno-pixel-icon-chat { --pixel-icon: url('../images/pixel/icons/chat.svg'); }
.zeno-pixel-icon-users { --pixel-icon: url('../images/pixel/icons/users.svg'); }
.zeno-pixel-icon-network { --pixel-icon: url('../images/pixel/icons/network.svg'); }
.zeno-pixel-icon-building { --pixel-icon: url('../images/pixel/icons/building.svg'); }
.zeno-pixel-icon-document { --pixel-icon: url('../images/pixel/icons/document.svg'); }
.zeno-pixel-icon-clock { --pixel-icon: url('../images/pixel/icons/clock.svg'); }
.zeno-pixel-icon-monitor { --pixel-icon: url('../images/pixel/icons/monitor.svg'); }
.zeno-pixel-icon-banner { --pixel-icon: url('../images/pixel/icons/banner.svg'); }
.zeno-pixel-icon-activity { --pixel-icon: url('../images/pixel/icons/activity.svg'); }
.zeno-pixel-icon-video { --pixel-icon: url('../images/pixel/icons/video.svg'); }
.zeno-pixel-icon-map { --pixel-icon: url('../images/pixel/icons/map.svg'); }
.zeno-pixel-icon-check { --pixel-icon: url('../images/pixel/icons/check.svg'); }
.zeno-pixel-icon-question { --pixel-icon: url('../images/pixel/icons/question.svg'); }
.zeno-pricing-features .zeno-pixel-icon { width: 16px; height: 16px; color: var(--pixel-green); margin-top: 3px; }
.zeno-pricing-faq-icon .zeno-pixel-icon { width: 24px; height: 24px; }
