:root{--bg: #0c0d10;--bg-elev: #14161b;--border: #23262e;--text: #e7e9ee;--text-dim: #9aa0ad;--accent: #5e6ad2;--accent-soft: rgba(94, 106, 210, .14);--radius: 14px;--maxw: 1080px;--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}.hero{padding:120px 0 80px;text-align:center}.eyebrow{display:inline-block;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:6px 14px;border-radius:999px;margin-bottom:24px}.hero h1{font-size:clamp(2.4rem,6vw,4rem);line-height:1.05;letter-spacing:-.02em;margin:0 0 20px}.hero p{font-size:clamp(1.05rem,2.5vw,1.3rem);color:var(--text-dim);max-width:640px;margin:0 auto}.section{padding:72px 0;border-top:1px solid var(--border)}.section h2{font-size:1.8rem;letter-spacing:-.01em;margin:0 0 8px}.section .lead{color:var(--text-dim);margin:0 0 40px;max-width:620px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.points-grid{margin-top:36px}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:28px;transition:border-color .18s ease,transform .18s ease}.card:hover{border-color:var(--accent);transform:translateY(-2px)}.card .tag{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.card h3{margin:10px 0 8px;font-size:1.25rem}.card p{margin:0;color:var(--text-dim);font-size:.97rem}.card-arrow{color:var(--accent);opacity:0;transition:opacity .18s ease,transform .18s ease;display:inline-block}.card:hover .card-arrow{opacity:1;transform:translate(3px)}.bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(150px,auto);gap:20px;grid-template-areas:"aoshq aoshq aoshq aoshq cphq cphq" "aoshq aoshq aoshq aoshq mail mail" "arch  arch  arch  about about about"}.tile{display:flex;flex-direction:column;position:relative;overflow:hidden}.tile h3{display:flex;align-items:center;gap:6px}.tile p{margin:0;padding-top:12px}.tile-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.tile-glyph{color:var(--tile-accent);display:inline-flex}.tile-glyph svg{width:26px;height:26px;display:block}.tile-index{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;letter-spacing:.12em;color:var(--text-dim);opacity:.7}.tile-system .tag,.tile-system .card-arrow{color:var(--tile-accent)}.tile-system:before{content:"";position:absolute;top:-45%;left:-25%;width:65%;height:90%;background:radial-gradient(closest-side,color-mix(in srgb,var(--tile-accent) 26%,transparent),transparent);opacity:.45;pointer-events:none;transition:opacity .2s ease}.tile-system:hover{border-color:color-mix(in srgb,var(--tile-accent) 55%,var(--border));box-shadow:0 10px 34px -14px color-mix(in srgb,var(--tile-accent) 55%,transparent)}.tile-system:hover:before{opacity:.85}.tile-feature h3{font-size:1.7rem}.tile-feature p{font-size:1.02rem;max-width:46ch}.tile-feature .tile-glyph svg{width:32px;height:32px}.tile-runs{margin-top:auto;padding-top:18px;display:flex;align-items:center;gap:8px;font-size:.85rem}.tile-runs span{color:var(--text-dim)}.tile-runs em{font-style:normal;font-size:.82rem;padding:3px 10px;border-radius:999px;color:color-mix(in srgb,var(--chip) 88%,white);border:1px solid color-mix(in srgb,var(--chip) 45%,transparent);background:color-mix(in srgb,var(--chip) 12%,transparent)}.tile-accent{background:transparent}.tile-accent .tag{color:var(--text-dim)}@media(max-width:900px){.bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(140px,auto);grid-template-areas:"aoshq aoshq" "cphq  mail" "arch  about"}.tile-feature h3{font-size:1.45rem}}@media(max-width:600px){.bento{grid-template-columns:1fr;grid-auto-rows:auto;grid-template-areas:"aoshq" "cphq" "mail" "arch" "about"}}.meta-note{color:var(--text-dim);font-size:.9rem;margin:0 0 20px}.backlink{color:var(--accent);font-size:.95rem}.backlink:hover{text-decoration:underline}.arch-diagram{display:flex;flex-direction:column;align-items:center;gap:0}.arch-node{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:18px 26px;text-align:center;min-width:200px}.arch-node strong{display:block;font-size:1.2rem;margin:4px 0 0}.arch-node .arch-tag{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.arch-node .arch-sub{display:block;color:var(--text-dim);font-size:.85rem;margin-top:4px}.arch-umbrella{background:var(--accent-soft);border-color:var(--accent)}.arch-hub{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.arch-stem{width:2px;height:28px;background:var(--border)}.arch-branches{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;width:100%;max-width:620px;margin-top:28px}.arch-branch{display:flex;flex-direction:column;align-items:center;gap:10px}.arch-link{color:var(--text-dim);font-size:.85rem}.media-frame{background:var(--bg-elev);border:1px dashed var(--border);border-radius:var(--radius);min-height:280px;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:.95rem;text-align:center;padding:24px}.nav{position:sticky;top:0;z-index:10;background:#0c0d10cc;backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}.brand{display:flex;align-items:center;gap:11px}.brand .logo{height:28px;width:auto;display:block}.wordmark{display:flex;flex-direction:column;justify-content:center;line-height:1}.wm-top{font-size:1.02rem;font-weight:700;font-style:italic;letter-spacing:-.005em}.wm-five{padding-left:.5px}.wm-sub{font-size:.62rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--text-dim);margin-top:3px}.nav-links{display:flex;gap:24px;font-size:.95rem;color:var(--text-dim)}.nav-links a{padding:4px 0}.nav-links a:hover{color:var(--text)}.nav-toggle{display:none;position:relative;width:40px;height:40px;margin:-8px -8px -8px 0;background:none;border:0;cursor:pointer;color:var(--text)}.nav-toggle-bars,.nav-toggle-bars:before,.nav-toggle-bars:after{content:"";position:absolute;left:11px;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s ease,opacity .2s ease}.nav-toggle-bars{top:19px}.nav-toggle-bars:before{top:-6px}.nav-toggle-bars:after{top:6px}.nav.open .nav-toggle-bars{background:transparent}.nav.open .nav-toggle-bars:before{transform:translateY(6px) rotate(45deg)}.nav.open .nav-toggle-bars:after{transform:translateY(-6px) rotate(-45deg)}.footer{border-top:1px solid var(--border);padding:40px 0;color:var(--text-dim);font-size:.9rem;text-align:center}@media(max-width:640px){.hero{padding:80px 0 56px}.nav-toggle{display:inline-flex}.nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:#0c0d10f7;backdrop-filter:blur(10px);border-bottom:1px solid var(--border);padding:8px 24px 16px;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease}.nav-links a{padding:13px 0;font-size:1.05rem;border-top:1px solid var(--border)}.nav-links a:first-child{border-top:0}.nav.open .nav-links{opacity:1;transform:none;pointer-events:auto}}.hero.aurora{background:radial-gradient(48% 56% at 30% 16%,rgba(94,106,210,.48),transparent 66%),radial-gradient(44% 52% at 72% 8%,rgba(139,148,232,.34),transparent 70%);background-repeat:no-repeat}.hero.aurora h1{background:linear-gradient(180deg,#fff,#c3c8ea);-webkit-background-clip:text;background-clip:text;color:transparent}@keyframes hero-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.hero.aurora .eyebrow,.hero.aurora h1,.hero.aurora p{animation:hero-rise .85s cubic-bezier(.16,1,.3,1) both}.hero.aurora .eyebrow{animation-delay:.05s}.hero.aurora h1{animation-delay:.18s}.hero.aurora p{animation-delay:.34s}.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}.reveal.in,.reveal-cards{opacity:1;transform:none}.reveal-cards .card{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s cubic-bezier(.16,1,.3,1)}.reveal-cards.in .card{opacity:1;transform:none}.reveal-cards.in .card:nth-child(1){transition-delay:.05s}.reveal-cards.in .card:nth-child(2){transition-delay:.16s}.reveal-cards.in .card:nth-child(3){transition-delay:.27s}.reveal-cards.in .card:nth-child(4){transition-delay:.38s}.reveal-cards.in .card:nth-child(5){transition-delay:.49s}@media(prefers-reduced-motion:reduce){.reveal-cards .card{opacity:1;transform:none;transition:none}.hero.aurora .eyebrow,.hero.aurora h1,.hero.aurora p{animation:none}.reveal{opacity:1;transform:none;transition:none}}.hero.accent-glow{background:radial-gradient(46% 56% at 30% 16%,color-mix(in srgb,var(--accent) 42%,transparent),transparent 66%),radial-gradient(42% 52% at 72% 8%,color-mix(in srgb,var(--accent) 28%,transparent),transparent 70%);background-repeat:no-repeat}.hero.accent-glow h1{background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--accent) 62%,#ffffff));-webkit-background-clip:text;background-clip:text;color:transparent}.hero.accent-glow .eyebrow,.hero.accent-glow h1,.hero.accent-glow p{animation:hero-rise .85s cubic-bezier(.16,1,.3,1) both}.hero.accent-glow .eyebrow{animation-delay:.05s}.hero.accent-glow h1{animation-delay:.18s}.hero.accent-glow p{animation-delay:.34s}@keyframes stem-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.arch-stem{transform-origin:top;animation:stem-grow .6s ease .15s both}@keyframes hub-pulse{0%,to{box-shadow:0 0 0 4px var(--accent-soft)}50%{box-shadow:0 0 0 9px color-mix(in srgb,var(--accent) 9%,transparent)}}.arch-hub{animation:hub-pulse 3.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.hero.accent-glow .eyebrow,.hero.accent-glow h1,.hero.accent-glow p,.arch-stem,.arch-hub{animation:none}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
