/* Palette and light surfaces: every page shares the same soft white canvas. */
html,body,header,.hero,.page-hero,.ticker,.dark,footer,section.section,.feature,.pipeline,.card,.form,.catalog-card{background:#f8fafc;color:#10243a}
header{border-bottom:1px solid #dce5f0;background:#f8fafcf2;backdrop-filter:blur(16px)}
.hero:before{background:radial-gradient(ellipse at 80% 45%,#0066ff0c,transparent 55%)}
.hero h1 em{color:#0066ff}.hero p,.page-hero p,.dark .muted,footer,.hero-note{color:#52667c}
.button,.button.light{background:#0066ff;color:#fff;border-color:#0066ff;box-shadow:0 6px 20px #0066ff18}.button:hover,.button.light:hover{background:#0054d6;border-color:#0054d6;color:#fff}
.button.ghost,.button.outline{background:transparent;color:#0054d6;border-color:#b8ccec;box-shadow:none}.button.ghost:hover,.button.outline:hover{background:#edf4ff}
.brand,footer .brand{color:#10243a}nav a:hover,nav a[aria-current=page],.text-link,.error h1{color:#0054d6}
.eyebrow:before{background:#0066ff}.eyebrow{color:#3d5873}.ticker{border-top:1px solid #dce5f0;border-bottom:1px solid #dce5f0}.ticker span:before{color:#0066ff}
.orbital:before,.orbital:after{border-color:#0066ff30}.orb{background:linear-gradient(140deg,#81bcffcf,#0066ffdb 55%,#686ef1ad);box-shadow:inset 12px 10px 45px #ffffff7a,inset -30px -10px 40px #002b9f33,0 30px 90px #0066ff20}
.orb.two{background:linear-gradient(30deg,#a9b9ffb8,#0066ffe0,#6fc2ff9c);mix-blend-mode:multiply;box-shadow:inset 0 2px 20px #ffffff88}.orb.three{background:linear-gradient(10deg,#3361b1,#74bdff70);mix-blend-mode:screen}
.float-label{background:#f8fafce8;color:#24456c;border-color:#c4d8ef;box-shadow:0 8px 24px #163d6b0b}.coord{color:#526c89}
.card,.form,.pipeline,.feature,.catalog-card{border:1px solid #dce5f0}.card .icon,.card:nth-child(2) .icon,.card:nth-child(3) .icon{color:#0066ff;background:#e9f2ff}
.pill{color:#0054d6;border-color:#b8d0f3}.step-dot{background:#e5efff;color:#0054d6}.process b{color:#0054d6}.notice{background:#f0f5fd;border-color:#0066ff}.bottom{border-color:#dce5f0}
.menu{color:#10243a;border-color:#b8ccec}.feature{box-shadow:0 15px 55px #11386805}.catalog-intro{max-width:850px;color:#52667c}.catalog-tools{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin:32px 0 12px}.catalog-tools label{display:block;font-size:12px;margin-bottom:8px}.catalog-tools input,.catalog-tools select{background:#f8fafc;border-color:#c3d1e4}.catalog-count{font-size:12px;color:#52667c;margin-bottom:25px}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.catalog-card{padding:25px;border-radius:8px;display:flex;flex-direction:column;align-items:start;min-height:230px}.catalog-category{font-size:10px;color:#0054d6;text-transform:uppercase;letter-spacing:1px}.catalog-card h3{font-size:20px;margin:15px 0 10px}.catalog-card p{font-size:13px;color:#52667c;margin:0 0 23px}.catalog-card[hidden],#catalog-empty[hidden]{display:none}.catalog-note{margin-top:32px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Motion is finite, progressive, and disabled when reduced motion is requested. */
.card:hover,.catalog-card:hover{border-color:#8cb6f2;box-shadow:0 16px 35px #0066ff0b}
@keyframes orbital-drift{from{translate:0 0}to{translate:0 -12px}}
@media(prefers-reduced-motion:no-preference){.orb{animation:orbital-drift 2.2s ease-in-out 2 alternate}.orb.two{animation-delay:.25s}.orb.three{animation-delay:.45s}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready{opacity:1;transform:none}}
@media(max-width:950px){.catalog-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:740px){nav{background:#f8fafc;border-bottom:1px solid #dce5f0}.catalog-tools,.catalog-grid{grid-template-columns:1fr}.catalog-card{min-height:0}.hero h1{font-size:43px}.catalog-section{padding-top:55px!important}}

/* ASTARA: standalone transparent symbol and live Space Grotesk wordmark. */
.brand,.brand b,.brand small{text-decoration:none!important}
.logo-symbol{width:58px!important;height:58px!important;overflow:visible!important}.logo-symbol img{width:58px!important;height:58px!important;object-fit:contain!important}
.brand-reference{display:grid!important;grid-template-columns:110px 1fr;align-items:center;gap:25px;width:min(100%,620px);margin:0 auto 55px;padding:28px;border:1px solid #dce5f0;border-radius:12px}
.brand-reference img{width:110px;height:110px;object-fit:contain}.brand-reference b{display:block;font-size:clamp(23px,3vw,39px);letter-spacing:3px;line-height:1.2}.brand-reference small{display:block;font-size:12px;letter-spacing:3px;margin-top:8px}
@media(max-width:740px){.brand-reference{grid-template-columns:75px 1fr;gap:15px;padding:18px}.brand-reference img{width:75px;height:75px}.brand-reference b{font-size:23px}.brand-reference small{font-size:9px;letter-spacing:1.5px}}

/* Only the 2D hero composition may animate. All other content is immediate. */
html{scroll-behavior:auto!important}
*:not(.orb),*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.button:hover,.card:hover,.catalog-card:hover{transform:none}
