/* Brand board crops are decorative; all content and controls remain live HTML. */
:root { --aegis-blue:#2563eb; --aegis-indigo:#6366f1; --aegis-cyan:#06b6d4; --aegis-navy:#0b1429; --aegis-ink:#0f172a; --aegis-slate:#64748b; --aegis-mist:#f1f5f9; }
body { font-family: Inter, -apple-system, BlinkMacSystemFont, "Noto Sans TC", "PingFang TC", sans-serif; color:var(--aegis-ink); -webkit-font-smoothing:antialiased; }
a, button, input, select, textarea { touch-action:manipulation; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline:3px solid #60a5fa; outline-offset:4px; }
body>nav { background:rgba(255,255,255,.97); backdrop-filter:blur(16px); }
body>nav>div { row-gap:16px; }
body>nav>div>div { gap:18px; }
body>nav a { transition:color .15s, background-color .15s; }
body>nav a:hover { color:var(--aegis-blue); }
body>nav a[href="/account/register/"] { background:var(--aegis-blue); color:#fff; border-radius:999px; }
.brand-lockup { display:inline-flex; align-items:center; gap:10px; flex:none; color:var(--aegis-ink); text-decoration:none; }
.brand-lockup img { width:40px; height:42px; object-fit:contain; }
.brand-wordmark { font-size:27px; font-weight:750; letter-spacing:-1px; line-height:1.1; }
.brand-wordmark small { display:block; margin-top:4px; font-size:9px; letter-spacing:0; font-weight:500; }
/* Keep the cropped orbit inside the artwork. No image text is used as page copy. */
.brand-hero { position:relative; isolation:isolate; overflow:hidden; color:#f8fafc; background:radial-gradient(ellipse at 84% 15%,#15346d66,transparent 50%),linear-gradient(135deg,#050e1c,#0b1429 65%,#102148); }
.brand-hero::after { position:absolute; content:""; z-index:-1; inset:auto -10% -500px 20%; height:600px; border-radius:50%; box-shadow:0 -1px 0 #60a5fa55,0 -25px 120px #2563eb26; transform:rotate(-12deg); pointer-events:none; }
.brand-hero>div { padding-top:80px; padding-bottom:56px; }
.hero-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:64px; align-items:center; margin-bottom:56px; }
.hero-intro { min-width:0; }
.hero-intro>p:first-child { border-color:#60a5fa40; background:#1e3a5f55; color:#bfdbfe; font-size:12px; letter-spacing:.03em; }
.hero-intro h1 { font-size:clamp(34px,3.8vw,52px); line-height:1.28; letter-spacing:-.045em; text-wrap:balance; }
.hero-intro h1>.text-blue-600 { color:#80baff; }
.hero-intro>p:not(:first-child) { color:#b9c8df; font-size:16px; line-height:1.95; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.brand-primary,.brand-secondary { display:inline-flex; min-height:48px; align-items:center; justify-content:center; gap:24px; padding:12px 22px; border-radius:999px; font-size:14px; font-weight:650; text-decoration:none; }
.brand-primary { background:var(--aegis-blue); color:#fff; box-shadow:0 4px 22px #2563eb24; }
.brand-primary:hover { background:#1d4ed8; }
.brand-secondary { color:#e2e8f0; border:1px solid #526482; }
.brand-secondary:hover { background:#ffffff0d; }
.hero-art { position:relative; min-height:376px; display:flex; flex-direction:column; justify-content:center; overflow:hidden; padding:34px; border:1px solid #6d94e333; border-radius:28px; background:linear-gradient(150deg,#14274955,#050e1ce6); box-shadow:0 28px 80px #0003,inset 0 1px #ffffff08; }
.hero-art-orbit { position:absolute; width:100%; height:100%; inset:0; background:url('/brand/aegis-orbit.webp') center top/100% auto no-repeat; opacity:.75; pointer-events:none; }
.hero-art-brand { position:relative; display:flex; align-items:center; justify-content:center; gap:16px; margin:0 0 34px; }
.hero-art-brand img { width:76px; height:80px; object-fit:contain; filter:drop-shadow(0 5px 22px #2563eb55); }
.hero-art-brand>span { font-size:40px; font-weight:700; letter-spacing:-1.5px; line-height:1.1; }
.hero-art-brand small { display:block; margin-top:6px; font-size:10px; letter-spacing:0; font-weight:400; }
.hero-path { position:relative; display:grid; gap:9px; }
.hero-path>div { display:flex; align-items:center; gap:13px; min-height:48px; padding:12px 16px; border:1px solid #c4d7ff1a; border-radius:12px; background:#10203cdd; font-size:13px; color:#d7e3f8; }
.path-number { color:#80baff; font-size:10px; font-weight:600; font-variant-numeric:tabular-nums; }
.path-glyph { margin-left:auto; color:#80baff; }
#url-preview { max-width:760px; margin:0 auto 24px; padding:24px 28px; border-radius:20px; border:1px solid #55739955; background:#0e1e38; box-shadow:0 16px 60px #0002; }
#url-preview label { color:#f1f5f9; }
#tool-url { color:var(--aegis-ink); background:#fff; }
#url-preview button[type=submit] { background:var(--aegis-blue); }
#url-help { color:#adbed8; font-size:12px; line-height:1.8; }
#url-error { color:#fca5a5; }
.brand-hero>div>noscript p,.brand-hero>div>p:last-child { color:#a6b8d2; text-align:center; }
.brand-hero>div>div:last-of-type a { color:#c5d8f5; }
#preview-next { color:var(--aegis-ink); box-shadow:0 20px 60px #0002; }
/* Existing content, forms, IDs and service flags remain unchanged. */
#how { background:#fff; }
#how h2,#pricing h2 { letter-spacing:-.035em; }
#how .grid>div { border:1px solid #e2e8f0; border-radius:18px; padding:24px; background:linear-gradient(160deg,#fff,#f8faff); }
#how .grid>div>p:first-child { display:inline-block; font-size:12px; letter-spacing:.1em; }
#modules { background:var(--aegis-navy); }
#modules .grid>div { background:#14233c; border:1px solid #273b5d; border-radius:16px; }
#pricing { background:#f5f8fc; }
#pricing .grid>div { border-radius:20px; }
#pricing .grid>div:nth-child(2) { background:var(--aegis-navy); border-color:var(--aegis-blue); box-shadow:0 15px 40px #2563eb12; }
#contact { background:linear-gradient(130deg,#0b1429,#152c55); }
.brand-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px; }
.brand-footer img { object-fit:contain; }
@media(min-width:1100px) { body>nav>div { max-width:1280px; } }
@media(max-width:1023px) { .hero-layout { gap:30px; } .hero-art { padding:24px; } body>nav>div>div { gap:12px; } }
@media(max-width:767px) {
  body>nav { position:relative; }
  body>nav>div { padding-top:16px; padding-bottom:16px; }
  body>nav>div { position:relative; }
  .brand-language { position:absolute; top:16px; right:16px; }
  body>nav>div>div { width:100%; font-size:12px; column-gap:16px; row-gap:12px; }
  .brand-hero>div { padding-top:46px; padding-bottom:36px; }
  .hero-layout { grid-template-columns:1fr; gap:32px; margin-bottom:32px; }
  .hero-intro h1 { font-size:clamp(32px,7.5vw,48px); }
  .hero-intro>p:not(:first-child) { font-size:15px; }
  .hero-art { min-height:300px; padding:28px; border-radius:22px; }
  .hero-art-brand { margin-bottom:26px; }
  .hero-art-brand img { width:64px; height:68px; }
  .hero-art-brand>span { font-size:34px; }
  #url-preview { padding:20px; border-radius:16px; }
  .brand-primary,.brand-secondary { padding:12px 19px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } body>nav a { transition:none; } }
