/* Coordinated public palettes, selected before the first paint. */
:root[data-public-palette="teal"] {
    --home-accent: #087f76;
    --home-strong: #065f58;
    --home-soft: #eaf8f5;
    --home-dark-accent: #5ed3be;
    --home-dark-strong: #9be5d7;
    --home-dark-soft: #203c38;
}
:root[data-public-palette="blue"] {
    --home-accent: #2563eb;
    --home-strong: #1d4ed8;
    --home-soft: #eff6ff;
    --home-dark-accent: #8bb8ff;
    --home-dark-strong: #b9d4ff;
    --home-dark-soft: #23324b;
}
:root[data-public-palette="indigo"] {
    --home-accent: #4f46e5;
    --home-strong: #3730a3;
    --home-soft: #eef2ff;
    --home-dark-accent: #aaa3ff;
    --home-dark-strong: #cecaff;
    --home-dark-soft: #302c48;
}
:root[data-public-palette="coral"] {
    --home-accent: #c0442e;
    --home-strong: #9a341f;
    --home-soft: #fff2ed;
    --home-dark-accent: #ffab96;
    --home-dark-strong: #ffd0c2;
    --home-dark-soft: #442d29;
}
:root[data-public-palette="copper"] {
    --home-accent: #9a5c37;
    --home-strong: #78452a;
    --home-soft: #fff5ee;
    --home-dark-accent: #e9b18c;
    --home-dark-strong: #f5d0b8;
    --home-dark-soft: #3c3028;
}
:root[data-public-palette="violet"] {
    --home-accent: #7047d9;
    --home-strong: #5131a0;
    --home-soft: #f3efff;
    --home-dark-accent: #bea0ff;
    --home-dark-strong: #d8c5ff;
    --home-dark-soft: #342c46;
}

/* Public home follows the workspace foundation; themes are applied before paint. */
body:has(.landing-page) {
    --bg: #f7f7fa;
    --surface: #fff;
    --surface-muted: #f5f6f9;
    --text: #282535;
    --muted: #746f83;
    --border: #e9e7ef;
    --primary: var(--home-accent, #087f76);
    --primary-strong: var(--home-strong, #065f58);
    --primary-soft: var(--home-soft, #eaf8f5);
    --on-primary: #fff;
    --positive: #087f5b;
    --negative: #c53c50;
    --shadow: 0 4px 24px -16px #26345122;
    background: var(--bg);
    color: var(--text);
    color-scheme: light;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
:root[data-appearance="dark"] body:has(.landing-page) {
    --bg: #16171c;
    --surface: #202127;
    --surface-muted: #272830;
    --text: #f0eef5;
    --muted: #b0acbd;
    --border: #363640;
    --primary: var(--home-dark-accent, #5ed3be);
    --primary-strong: var(--home-dark-strong, #9be5d7);
    --primary-soft: var(--home-dark-soft, #203c38);
    --on-primary: #16171c;
    --positive: #6dd9ac;
    --negative: #ff93a4;
    --shadow: none;
    color-scheme: dark;
}
.landing-page { background: var(--bg); color: var(--text); }
.landing-page::before, .landing-product-preview::before, .landing-import-demo::before,
.landing-feature-grid article::after, .landing-final-cta::after { display: none; }
.landing-page :is(h1, h2, h3, strong) { color: var(--text); }
.landing-page :is(.landing-lead, .landing-section-heading > p, .landing-security-heading > p, .landing-import-copy > p, .landing-feature-grid p, .landing-security-grid p, .landing-proof span, .landing-import-benefits p, .landing-public-footer, .landing-public-footer a) { color: var(--muted); }
.landing-public-header { min-height: 86px; border-bottom: 1px solid var(--border); }
.landing-brand-mark { display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 42px; border-radius: 11px; background: var(--primary); color: var(--on-primary); }
.landing-brand-mark .brand-mark-svg { display: block; width: 36px; height: 36px; }
.landing-public-header .landing-brand strong { font-size: 1.3rem; font-weight: 650; letter-spacing: -.05em; }
.landing-public-header nav { gap: 18px; }
.landing-public-header nav a { color: var(--muted); font-weight: 500; }
.landing-page .landing-nav-login { color: var(--primary) !important; border-color: var(--border); background: var(--surface); }
.landing-theme-switch { display: flex; padding: 3px; gap: 2px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); }
.landing-theme-switch button { display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 7px; background: transparent; color: var(--muted); cursor: pointer; }
.landing-theme-switch button[aria-pressed="true"] { background: var(--primary-soft); color: var(--primary); }
.landing-theme-switch .icon-svg { width: 16px; height: 16px; }
.landing-page :is(a, button, input):focus-visible { outline: 2px solid var(--primary); outline-offset: 4px; }
.landing-hero { min-height: 560px; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 52px; padding: 72px 0; }
.landing-page .landing-copy h1 { font-size: clamp(2.2rem,3.7vw,3.4rem); font-weight: 600; letter-spacing: -.05em; line-height: 1.1; }
.landing-copy { gap: 20px; }
.landing-page .landing-eyebrow { color: var(--primary); font-weight: 600; letter-spacing: .1em; }
.landing-page :is(.landing-section-heading h2, .landing-security-heading h2, .landing-import-copy h2, .landing-final-cta h2) { font-size: clamp(1.8rem,3vw,2.6rem); font-weight: 600; line-height: 1.15; letter-spacing: -.04em; }
.landing-release-pill { border-color: var(--border); background: var(--surface); color: var(--primary); font-weight: 500; box-shadow: none; backdrop-filter: none; }
.landing-page .landing-primary { background: var(--primary); border-color: var(--primary); color: var(--on-primary); box-shadow: none; font-weight: 600; border-radius: 9px; }
:root[data-appearance="dark"] .landing-page .landing-primary { color: var(--on-primary); }
.landing-page .landing-primary:hover { background: var(--primary-strong); box-shadow: none; }
.landing-page .landing-secondary { background: var(--surface); color: var(--text); border-color: var(--border); box-shadow: none; font-weight: 500; }
.landing-hero-trust { color: var(--muted); font-weight: 500; }
.landing-page :is(.landing-hero-trust .icon-svg, .landing-format-list .icon-svg, .landing-text-link) { color: var(--primary); }
.landing-product-preview { padding: 0; border: 1px solid var(--border); border-radius: 16px; background: var(--surface); box-shadow: var(--shadow); transform: none; backdrop-filter: none; }
.landing-preview-topbar { height: 50px; padding: 0 16px; border-bottom: 1px solid #ffffff14; border-radius: 15px 15px 0 0; background: #25272d; }
.landing-preview-topbar strong { color: #f0eef5; font-weight: 500; }
.landing-preview-topbar > .landing-preview-brand { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 7px; background: var(--primary); color: var(--on-primary); }
.landing-preview-brand .icon-svg { width: 15px; height: 15px; }
.landing-preview-workspace { display: grid; grid-template-columns: 108px minmax(0,1fr); }
.landing-preview-sidebar { display: flex; flex-direction: column; gap: 7px; padding: 18px 8px; background: #25272d; border-radius: 0 0 0 15px; }
.landing-preview-sidebar > span { display: flex; align-items: center; gap: 7px; padding: 9px 6px; border-radius: 6px; color: #c8cbd2; }
.landing-preview-sidebar .is-active { color: var(--home-dark-accent, #5ed3be); background: #ffffff0d; }
.landing-preview-sidebar .icon-svg { flex-shrink: 0; width: 13px; height: 13px; }
.landing-preview-sidebar small { font-size: .55rem; overflow-wrap: anywhere; }
.landing-preview-content { min-width: 0; grid-template-columns: 1fr; gap: 12px; padding: 18px; background: var(--bg); border-radius: 0 0 15px; }
.landing-preview-balance { background: var(--primary-soft); border-color: var(--border); border-radius: 10px; }
.landing-preview-balance small { color: var(--muted); }
.landing-preview-balance strong { font-size: 1.75rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.landing-preview-balance span { color: var(--positive); background: var(--surface); font-weight: 500; }
.landing-preview-chart { display: none; }
.landing-preview-rows { background: var(--surface); border-color: var(--border); border-radius: 10px; }
.landing-preview-rows header { padding: 12px; color: var(--muted); font-size: .62rem; border-bottom: 1px solid var(--border); }
.landing-preview-rows > div { border-color: var(--border); }
.landing-preview-rows span strong { color: var(--text); font-weight: 500; }
.landing-preview-rows span small { color: var(--muted); }
.landing-preview-rows b { background: var(--primary-soft); color: var(--primary); }
.landing-preview-rows em { color: var(--negative); font-weight: 600; font-variant-numeric: tabular-nums; }
.landing-preview-rows em.is-positive { color: var(--positive); }
.landing-preview-float { position: static; margin: 0; padding: 12px 18px; border: 0; border-top: 1px solid var(--border); border-radius: 0 0 15px 15px; background: var(--surface); box-shadow: none; }
.landing-preview-float small { color: var(--muted); }
.landing-preview-float > span { background: var(--primary-soft); color: var(--primary); }
.landing-proof { background: var(--surface); border-color: var(--border); border-radius: 16px; box-shadow: var(--shadow); backdrop-filter: none; }
.landing-proof > div { border-color: var(--border); }
.landing-page :is(.landing-import-demo, .landing-feature-grid article, .landing-security-grid article) { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; box-shadow: var(--shadow); }
.landing-page .landing-feature-grid article:hover { transform: none; border-color: var(--primary); box-shadow: var(--shadow); }
.landing-page :is(.landing-feature-grid article > span, .landing-security-grid article > span, .landing-import-benefits li > span, .landing-import-label > span) { color: var(--primary); background: var(--primary-soft); border-radius: 10px; }
.landing-security { border-color: var(--border); }
.landing-page .landing-security-grid article.is-featured { background: var(--primary-soft); }
.landing-page .landing-format-list span { color: var(--muted); border-color: var(--border); background: var(--surface); font-weight: 500; }
.landing-import-drop { background: var(--primary-soft); border-color: var(--primary); }
.landing-import-drop > span, .landing-import-progress span { background: var(--primary); color: var(--on-primary); }
.landing-page :is(.landing-import-drop small, .landing-import-label small) { color: var(--muted); }
.landing-import-table, .landing-import-table > div { border-color: var(--border); }
.landing-import-table > div { background: var(--surface); }
.landing-import-table .is-head, .landing-import-summary > span { background: var(--surface-muted); }
.landing-import-table span { color: var(--muted); }
.landing-import-table span b { color: var(--text); }
.landing-import-table .is-head span { color: var(--muted); }
.landing-page :is(.landing-import-table span small, .landing-import-table .is-positive, .landing-import-summary > strong, .landing-import-label em) { color: var(--positive); }
.landing-import-table .is-negative { color: var(--negative); }
.landing-page .landing-final-cta { background: var(--primary-soft); border: 1px solid var(--border); border-radius: 16px; box-shadow: none; }
.landing-final-cta h2 { color: var(--text); }
/* Authentication drawers and language menu inherit the public theme too. */
.landing-page :is(.language-menu > summary, .language-menu-popover, .landing-auth-drawer, .landing-auth-surface, .landing-auth-head, .landing-auth-body) { background: var(--surface); color: var(--text); border-color: var(--border); }
.landing-page :is(.landing-auth-head p, .landing-auth-intro, .landing-auth-links, .landing-auth-form label) { color: var(--muted); }
.landing-page .landing-auth-form :is(input, select) { background: var(--bg); color: var(--text); border-color: var(--border); }
.landing-page .landing-auth-icon { background: var(--primary-soft); color: var(--primary); }
.landing-page .landing-auth-form .button { background: var(--primary); color: var(--on-primary); }
@media (max-width: 980px) {
    .landing-hero { grid-template-columns: 1fr; gap: 36px; padding: 48px 0; }
    .landing-product-preview { width: min(100%,680px); }
}
@media (max-width: 640px) {
    .landing-public-header { gap: 10px; flex-wrap: wrap; padding: 14px 0; }
    .landing-public-header nav { gap: 8px; flex-wrap: wrap; }
    .landing-public-header .landing-brand strong { font-size: 1.2rem; }
    .landing-theme-switch button { width: 28px; height: 30px; }
    .landing-page .landing-copy h1 { font-size: clamp(2rem,8vw,2.8rem); }
    .landing-preview-workspace { grid-template-columns: 1fr; }
    .landing-preview-sidebar { display: none; }
    .landing-preview-content { padding: 12px; border-radius: 0; }
    .landing-proof > div { border-bottom-color: var(--border); }
    .landing-page .landing-final-cta { padding: 24px; }
}
.landing-page .landing-auth-close { background: var(--surface-muted); color: var(--muted); border-color: var(--border); }
.landing-page .landing-auth-form ul { background: var(--surface-muted); color: var(--negative); border-color: var(--negative); }
.landing-page .landing-import-progress { background: var(--surface-muted); }
.landing-page .landing-import-drop > b { background: var(--surface); color: var(--positive); }
.landing-page .landing-import-summary > span { color: var(--muted); }

/* Living background and expressive product motion. */
.landing-page { isolation: isolate; }
.landing-atmosphere { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; mask-image: linear-gradient(transparent, #000 3%, #000 96%, transparent); }
.landing-aura { position: absolute; display: block; border-radius: 50%; background: radial-gradient(ellipse, color-mix(in srgb, var(--primary) 34%, transparent), transparent 70%); animation: landing-aura-drift 7s ease-in-out infinite alternate; }
.landing-aura--one { width: 850px; height: 850px; top: -230px; right: -160px; }
.landing-aura--two { width: 650px; height: 650px; top: 170px; left: -350px; opacity: .65; animation-delay: -8s; animation-duration: 9s; }
.landing-aura--three { width: 600px; height: 600px; top: 370px; right: 12%; opacity: .6; animation-delay: -13s; }
.landing-orbit { position: absolute; border: 1px dashed color-mix(in srgb, var(--primary) 26%, transparent); border-radius: 50%; width: 760px; height: 760px; top: -70px; left: 56%; animation: landing-orbit-turn 18s linear infinite; }
.landing-orbit::before { content: ''; position: absolute; top: 16%; left: 12%; width: 11px; height: 11px; border-radius: 50%; background: var(--primary); box-shadow: 0 0 24px color-mix(in srgb, var(--primary) 45%, transparent); opacity: .8; }
.landing-orbit--two { width: 940px; height: 940px; top: -160px; left: 49%; animation-duration: 26s; animation-direction: reverse; opacity: .6; }
.landing-stars i { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--primary); box-shadow: 0 0 16px color-mix(in srgb, var(--primary) 50%, transparent); opacity: .4; animation: landing-star-float 4s ease-in-out infinite; }
.landing-stars i:nth-child(1) { top: 150px; left: 36%; }
.landing-stars i:nth-child(2) { top: 490px; left: 7%; animation-delay: -3s; }
.landing-stars i:nth-child(3) { top: 640px; left: 55%; animation-delay: -5s; }
.landing-stars i:nth-child(4) { top: 130px; right: 8%; animation-delay: -7s; }
.landing-stars i:nth-child(5) { top: 760px; right: 14%; animation-delay: -2s; }
.landing-public-header { background: color-mix(in srgb, var(--bg) 65%, transparent); }
.landing-brand-mark { box-shadow: 0 5px 18px color-mix(in srgb, var(--primary) 23%, transparent); transition: transform .25s ease, box-shadow .25s ease; }
.landing-brand:hover .landing-brand-mark { transform: rotate(-7deg); box-shadow: 0 8px 24px color-mix(in srgb, var(--primary) 35%, transparent); }
.landing-copy > * { animation: landing-enter .8s cubic-bezier(.2,.65,.3,1) both; }
.landing-copy > :nth-child(2) { animation-delay: .07s; }
.landing-copy > :nth-child(3) { animation-delay: .14s; }
.landing-copy > :nth-child(4) { animation-delay: .21s; }
.landing-copy > :nth-child(5) { animation-delay: .28s; }
.landing-copy > :nth-child(6) { animation-delay: .35s; }
.landing-page .landing-copy h1 { background: linear-gradient(115deg, var(--text) 35%, var(--primary)); background-clip: text; -webkit-background-clip: text; color: transparent; }
.landing-release-pill { background: color-mix(in srgb, var(--surface) 75%, transparent); border-color: color-mix(in srgb, var(--primary) 20%, var(--border)); }
.landing-release-pill > span { background: var(--primary); box-shadow: 0 0 0 4px color-mix(in srgb, var(--primary) 12%, transparent); animation: landing-beacon 3s ease-in-out infinite; }
.landing-page .landing-primary { position: relative; overflow: hidden; box-shadow: 0 6px 22px -8px color-mix(in srgb, var(--primary) 50%, transparent); transition: transform .22s ease, box-shadow .22s ease, background .22s ease; }
.landing-primary::after { content: ''; position: absolute; inset: -60% auto -60% -80%; width: 45%; background: linear-gradient(90deg, transparent, #ffffff24, transparent); transform: skewX(-20deg); animation: landing-button-sheen 4s ease-in-out infinite; pointer-events: none; }
.landing-page .landing-primary:hover { transform: translateY(-3px); box-shadow: 0 12px 30px -8px color-mix(in srgb, var(--primary) 50%, transparent); }
.landing-primary .icon-svg { transition: transform .2s ease; }
.landing-primary:hover .icon-svg { transform: translateX(3px); }
.landing-product-preview { box-shadow: 0 32px 70px -38px color-mix(in srgb, var(--primary) 40%, transparent), 0 8px 22px -16px #14172233; animation: landing-product-float 5s ease-in-out infinite; border-color: color-mix(in srgb, var(--primary) 20%, var(--border)); }
.landing-preview-balance { position: relative; overflow: hidden; }
.landing-balance-sparkline { position: absolute; width: 110px; height: 48px; right: 16px; bottom: 15px; color: var(--primary); }
.sparkline-line { stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 200; stroke-dashoffset: 200; animation: landing-chart-draw 5s .5s ease-in-out infinite; }
.sparkline-area { fill: currentColor; opacity: .07; }
.landing-balance-sparkline circle { fill: currentColor; }
.landing-preview-rows > div { animation: landing-enter .7s both; }
.landing-preview-rows > div:nth-of-type(1) { animation-delay: .4s; }
.landing-preview-rows > div:nth-of-type(2) { animation-delay: .55s; }
.landing-preview-rows > div:nth-of-type(3) { animation-delay: .7s; }
.landing-proof { background: color-mix(in srgb, var(--surface) 85%, transparent); }
.landing-page .landing-feature-grid article, .landing-page .landing-security-grid article { transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.landing-page .landing-feature-grid article:hover, .landing-page .landing-security-grid article:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--primary) 40%, var(--border)); box-shadow: 0 18px 38px -28px color-mix(in srgb, var(--primary) 45%, transparent); }
.landing-feature-grid article > span { transition: transform .25s ease; }
.landing-feature-grid article:hover > span { transform: rotate(-8deg) scale(1.08); }
.landing-page .landing-final-cta { background: radial-gradient(ellipse at 90% 0%, color-mix(in srgb, var(--primary) 14%, transparent), transparent 65%), var(--primary-soft); }
.landing-page .landing-import-progress span { position: relative; overflow: hidden; }
.landing-import-progress span::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, #ffffff99, transparent); animation: landing-progress-shine 4s ease-in-out infinite; }
.landing-motion-reveal { animation: landing-enter .8s cubic-bezier(.2,.65,.3,1) both; }
@keyframes landing-enter { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes landing-aura-drift { to { transform: translate(-140px, 100px) scale(1.25); } }
@keyframes landing-orbit-turn { to { transform: rotate(360deg); } }
@keyframes landing-star-float { 50% { transform: translate(35px, -65px); opacity: .85; } }
@keyframes landing-product-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-18px) rotate(.8deg); } }
@keyframes landing-beacon { 50% { box-shadow: 0 0 0 7px color-mix(in srgb, var(--primary) 4%, transparent); } }
@keyframes landing-button-sheen { 0%, 72% { left: -80%; } 92%, 100% { left: 150%; } }
@keyframes landing-chart-draw { 0%, 8% { stroke-dashoffset: 200; opacity: .35; } 45%, 90% { stroke-dashoffset: 0; opacity: 1; } 100% { stroke-dashoffset: 0; opacity: 0; } }
@keyframes landing-progress-shine { from { transform: translateX(-100%); } to { transform: translateX(100%); } }
@media (max-width: 640px) {
    .landing-aura--one { width: 550px; height: 550px; right: -260px; top: 20px; }
    .landing-aura--two, .landing-aura--three, .landing-orbit--two { display: none; }
    .landing-orbit--one { width: 520px; height: 520px; left: 24%; top: 200px; }
    .landing-balance-sparkline { width: 82px; opacity: .75; }
}

.landing-energy-lines { position: absolute; inset: 0; width: 100%; height: 900px; color: var(--primary); opacity: .32; }
.landing-energy-lines path { stroke: currentColor; stroke-width: 1.5; stroke-dasharray: 100 24 4 24; animation: landing-energy-flow 7s linear infinite; }
.landing-energy-lines path:nth-child(2) { opacity: .55; animation-direction: reverse; animation-duration: 10s; }
.landing-energy-lines path:nth-child(3) { opacity: .35; animation-duration: 12s; }
.landing-preview-rows > div { position: relative; overflow: hidden; }
.landing-preview-rows > div::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(100deg, transparent, color-mix(in srgb, var(--primary) 13%, transparent), transparent); transform: translateX(-100%); animation: landing-row-scan 6s ease-in-out infinite; }
.landing-preview-rows > div:nth-of-type(2)::after { animation-delay: .5s; }
.landing-preview-rows > div:nth-of-type(3)::after { animation-delay: 1s; }
@keyframes landing-energy-flow { to { stroke-dashoffset: -608; } }
@keyframes landing-row-scan { 0%, 15% { transform: translateX(-100%); } 55%, 100% { transform: translateX(100%); } }


/* Carry the atmosphere through the entire page, including long mobile layouts. */
.landing-aura--four { width: 800px; height: 800px; top: 30%; right: -220px; animation-delay: -3s; }
.landing-aura--five { width: 750px; height: 750px; top: 53%; left: -300px; animation-delay: -6s; animation-duration: 10s; }
.landing-aura--six { width: 850px; height: 850px; top: 78%; right: -280px; animation-delay: -2s; }
.landing-energy-lines--2 { top: 32%; transform: scaleX(-1); }
.landing-energy-lines--3 { top: 65%; }
.landing-stars i:nth-child(6) { top: 32%; left: 12%; animation-delay: -1s; }
.landing-stars i:nth-child(7) { top: 39%; right: 5%; animation-delay: -3s; }
.landing-stars i:nth-child(8) { top: 49%; left: 40%; animation-delay: -2s; }
.landing-stars i:nth-child(9) { top: 57%; right: 15%; animation-delay: -4s; }
.landing-stars i:nth-child(10) { top: 64%; left: 6%; animation-delay: -1s; }
.landing-stars i:nth-child(11) { top: 72%; right: 6%; animation-delay: -3s; }
.landing-stars i:nth-child(12) { top: 81%; left: 25%; animation-delay: -2s; }
.landing-stars i:nth-child(13) { top: 89%; right: 12%; animation-delay: -4s; }
.landing-stars i:nth-child(14) { top: 96%; left: 8%; animation-delay: -1s; }
.landing-import-demo { animation: landing-product-float 7s ease-in-out infinite; }
.landing-import-demo.landing-motion-reveal { animation: landing-enter .8s both, landing-product-float 7s .8s ease-in-out infinite; }
.landing-page .landing-import-drop > span { animation: landing-icon-bob 4s ease-in-out infinite; }
.landing-security-grid article > span, .landing-feature-grid article > span { animation: landing-icon-bob 5s ease-in-out infinite; }
.landing-security-grid article:nth-child(even) > span, .landing-feature-grid article:nth-child(even) > span { animation-delay: -2.5s; }
.landing-page .landing-final-cta { background: linear-gradient(115deg, var(--primary-soft) 10%, color-mix(in srgb, var(--primary) 25%, var(--surface)) 45%, var(--primary-soft) 80%); background-size: 220% 100%; animation: landing-cta-flow 7s ease-in-out infinite alternate; }
.landing-page .landing-final-cta.landing-motion-reveal { animation: landing-enter .8s both, landing-cta-flow 7s ease-in-out infinite alternate; }
@keyframes landing-icon-bob { 50% { transform: translateY(-6px) rotate(-7deg); } }
@keyframes landing-cta-flow { to { background-position: 100% 50%; } }
@media (max-width: 640px) {
    .landing-aura--four, .landing-aura--five, .landing-aura--six { width: 500px; height: 650px; }
    .landing-aura--four, .landing-aura--six { right: -300px; }
    .landing-aura--five { left: -300px; }
    .landing-energy-lines--2, .landing-energy-lines--3 { height: 1200px; opacity: .24; }
}

@media (prefers-reduced-motion: reduce) {
    .landing-page *, .landing-page *::before, .landing-page *::after { animation: none !important; transition: none !important; }
    .sparkline-line { stroke-dashoffset: 0; }
    .landing-preview-rows > div::after { display: none; }
}
