:root {
  color-scheme: dark;
  --bg: #0a0d0b;
  --bg-soft: #111512;
  --panel: #151a16;
  --panel-light: #e9eee5;
  --ink: #f3f6ef;
  --muted: #9ba59c;
  --muted-dark: #556057;
  --line: rgba(243, 246, 239, 0.14);
  --line-strong: rgba(243, 246, 239, 0.28);
  --signal: #baff63;
  --signal-dark: #85c735;
  --orange: #ffb05b;
  --ping-red: #ff3347;
  --ping-purple: #a855f7;
  --ping-blue: #3687ff;
  --ping-gradient: linear-gradient(105deg, var(--ping-red) 0%, var(--signal) 33%, var(--ping-purple) 67%, var(--ping-blue) 100%);
  --ping-loop: linear-gradient(90deg, var(--ping-red) 0%, var(--signal) 24%, var(--ping-purple) 49%, var(--ping-blue) 74%, var(--ping-red) 100%);
  --orbit-arcs: conic-gradient(from -18deg, transparent 0deg 13deg, rgba(255,51,71,.22) 16deg, var(--ping-red) 20deg 39deg, rgba(255,51,71,.22) 43deg, transparent 47deg 89deg, rgba(186,255,99,.18) 92deg, var(--signal) 96deg 115deg, rgba(186,255,99,.18) 119deg, transparent 123deg 179deg, rgba(168,85,247,.2) 182deg, var(--ping-purple) 186deg 205deg, rgba(168,85,247,.2) 209deg, transparent 213deg 269deg, rgba(54,135,255,.2) 272deg, var(--ping-blue) 276deg 295deg, rgba(54,135,255,.2) 299deg, transparent 303deg 360deg);
  --max: 1240px;
  --pad: clamp(20px, 4vw, 64px);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body { margin: 0; min-width: 0; overflow-x: hidden; background: var(--bg); color: var(--ink); line-height: 1.55; }
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--signal); outline-offset: 5px; }
.skip-link { position: fixed; z-index: 100; top: 12px; left: 12px; padding: 10px 14px; color: var(--bg); background: var(--signal); transform: translateY(-150%); }
.skip-link:focus-visible { transform: none; }
.shell { width: min(var(--max), calc(100% - (var(--pad) * 2))); margin-inline: auto; }

.site-header { position: relative; z-index: 10; display: flex; align-items: center; justify-content: space-between; height: 92px; padding: 0 var(--pad); border-bottom: 1px solid var(--line); background: rgba(10, 13, 11, 0.92); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; gap: 12px; }
.brand-word { font-size: 20px; font-weight: 760; letter-spacing: 0.16em; }
.brand-mark { position: relative; display: grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border-radius: 50%; background: radial-gradient(circle, transparent 0 3px, rgba(243,246,239,.4) 3.5px 4px, transparent 4.5px 7px, rgba(243,246,239,.26) 7.5px 8px, transparent 8.5px 11px, rgba(243,246,239,.19) 11.5px 12px, transparent 12.5px); }
.brand-mark::before, .brand-mark::after, .brand-mark span { content: ""; position: absolute; border-radius: 50%; background: var(--orbit-arcs); -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 1.6px), #000 calc(100% - 1.4px)); mask: radial-gradient(farthest-side, transparent calc(100% - 1.6px), #000 calc(100% - 1.4px)); animation: orbit-spin 9s linear infinite, orbit-fade 3.8s ease-in-out infinite; }
.brand-mark::before { inset: 1px; animation-delay: -1s, -.3s; }
.brand-mark::after { inset: 5px; opacity: .78; animation-duration: 10.5s, 4.2s; animation-delay: -3s, -1.5s; }
.brand-mark span { width: 11px; height: 11px; opacity: .68; animation-duration: 12s, 4.6s; animation-delay: -5s, -2.8s; }
.site-nav { display: flex; align-items: center; gap: clamp(20px, 3vw, 44px); color: var(--muted); font-size: 13px; font-weight: 650; letter-spacing: 0.04em; }
.site-nav a:hover, .site-nav a[aria-current="page"] { color: var(--ink); }
.site-nav .nav-contact { padding: 10px 16px; border: 1px solid transparent; background: linear-gradient(rgba(10,13,11,.98), rgba(10,13,11,.98)) padding-box, var(--ping-loop) border-box; color: var(--ink); transition: box-shadow .22s ease, transform .22s ease, filter .22s ease; }
.site-nav .nav-contact:hover { box-shadow: 0 0 0 1px rgba(243,246,239,.12), 0 0 22px rgba(186,255,99,.14); filter: brightness(1.18); transform: translateY(-1px); }

.hero { position: relative; display: grid; grid-template-columns: 0.92fr 1.08fr; align-items: center; gap: clamp(52px, 8vw, 118px); min-height: 760px; padding-block: 96px 120px; }
.hero::before { content: ""; position: absolute; z-index: -1; top: 1%; right: 7%; width: 540px; height: 540px; border-radius: 50%; background: radial-gradient(circle, rgba(186,255,99,.09), transparent 64%); filter: blur(10px); }
.eyebrow, .micro-label { margin: 0 0 22px; color: var(--muted); font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 11px; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; }
.signal-dot { display: inline-block; width: 7px; height: 7px; margin-right: 9px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 12px rgba(186,255,99,.7); }
h1, h2, h3, p { text-wrap: pretty; }
.hero h1, .contact-intro h1 { margin: 0; font-size: clamp(57px, 7.4vw, 108px); font-weight: 610; letter-spacing: -0.065em; line-height: 0.91; }
.hero h1 em, .contact-intro h1 em { color: var(--ink); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
/* Extend the painted area for italic overhangs and descenders without changing spacing. */
.spectrum-word { display: inline-block; padding: .08em .12em .22em; margin: -.08em -.12em -.22em; color: var(--signal); background: linear-gradient(90deg, var(--ping-red) 0%, var(--signal) 25%, var(--ping-purple) 50%, var(--ping-blue) 75%, var(--ping-red) 100%); background-size: 200% 100%; background-position: 0% 50%; background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; animation: ping-spectrum 5.5s linear infinite; }
.hero h1 .spectrum-word { font-size: .88em; letter-spacing: -.075em; }
.hero-lede { max-width: 620px; margin: 38px 0 0; color: #c2cac2; font-size: clamp(17px, 1.65vw, 21px); line-height: 1.65; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 42px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 20px; border: 1px solid var(--line-strong); font-size: 13px; font-weight: 720; }
.button-primary { border-color: var(--signal); background: var(--signal); color: var(--bg); }
.button-primary:hover { background: #ceff92; }
.button-secondary:hover { border-color: var(--ink); }
.button.button-spectrum { border: 1px solid rgba(243,246,239,.28); background: linear-gradient(180deg, #121612, #090c0a); color: var(--ink); box-shadow: inset 0 1px 0 rgba(255,255,255,.07), inset 0 -1px 0 rgba(0,0,0,.82), 0 1px 0 rgba(255,255,255,.04); transition: border-color .22s ease, background .22s ease, box-shadow .22s ease, transform .22s ease; }
.button.button-spectrum:hover { border-color: rgba(243,246,239,.68); background: linear-gradient(180deg, #181e19, #0b0f0c); box-shadow: inset 0 1px 0 rgba(255,255,255,.12), inset 0 -1px 0 rgba(0,0,0,.9), 0 0 22px rgba(186,255,99,.12); transform: translateY(-1px); }
.hero-note { margin: 20px 0 0; color: #6f796f; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }

.hero-console { position: relative; border: 1px solid var(--line-strong); background: linear-gradient(145deg, rgba(25,31,26,.94), rgba(11,14,12,.98)); box-shadow: 0 44px 100px rgba(0,0,0,.32); }
.hero-console::after { content: "ILLUSTRATION"; position: absolute; right: -1px; bottom: calc(100% + 8px); color: #647066; font-family: ui-monospace, monospace; font-size: 9px; letter-spacing: .18em; }
.console-topline { display: flex; justify-content: space-between; padding: 13px 16px; border-bottom: 1px solid var(--line); color: #758075; font-family: ui-monospace, monospace; font-size: 9px; letter-spacing: .14em; }
.console-state { color: var(--signal); }.console-state i { display: inline-block; width: 5px; height: 5px; margin-right: 6px; border-radius: 50%; background: currentColor; }
.goal-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding: 34px 34px 26px; }
.micro-label { display: block; margin: 0 0 8px; font-size: 9px; }
.goal-heading h2 { margin: 0; font-size: clamp(24px, 2.3vw, 35px); letter-spacing: -.04em; }
.goal-badge { padding: 5px 8px; border: 1px solid rgba(255,176,91,.45); color: var(--orange); font-family: ui-monospace, monospace; font-size: 8px; letter-spacing: .14em; }
.condition-list { border-top: 1px solid var(--line); }
.condition-row { display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 14px; min-height: 78px; padding: 13px 24px 13px 34px; border-bottom: 1px solid var(--line); }
.condition-icon { display: grid; width: 29px; height: 29px; place-items: center; border: 1px solid var(--line-strong); color: #849084; font-family: ui-monospace, monospace; font-size: 9px; }
.condition-row strong, .condition-row small { display: block; }.condition-row strong { font-size: 13px; }.condition-row small { margin-top: 3px; color: #758075; font-size: 11px; }
.condition-status { color: var(--signal); font-family: ui-monospace, monospace; font-size: 8px; letter-spacing: .11em; }.condition-status--pending { color: var(--orange); }
.console-footer { display: grid; grid-template-columns: auto auto 1fr auto auto; gap: 9px 14px; align-items: center; padding: 18px 24px 20px 34px; color: #6f796f; font-family: ui-monospace, monospace; font-size: 8px; letter-spacing: .1em; }
.console-footer strong { color: var(--ink); }.console-rule { height: 1px; background: var(--line); }

.principle-strip { display: grid; grid-template-columns: repeat(4, 1fr); border-block: 1px solid var(--line); }
.principle-strip div { display: flex; align-items: center; gap: 12px; min-height: 72px; padding: 0 var(--pad); border-right: 1px solid var(--line); color: #aeb7ae; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.principle-strip div:last-child { border: 0; }.principle-strip span { color: var(--signal); font-family: ui-monospace, monospace; font-size: 9px; }

.section { padding-block: 138px; }.section-intro { display: grid; grid-template-columns: .32fr .68fr; column-gap: 7vw; align-items: start; }.section-intro .eyebrow { grid-column: 1; }.section-intro h2 { grid-column: 1 / -1; max-width: 920px; margin: 12px 0 28px; font-size: clamp(45px, 6vw, 82px); font-weight: 570; letter-spacing: -.055em; line-height: .98; }.section-intro > p:last-child { grid-column: 2; max-width: 620px; margin: 10px 0 0; color: var(--muted); font-size: 17px; line-height: 1.7; }.section-intro--compact { display: block; }.section-intro--compact h2 { margin-top: 14px; }.section-intro--compact > p:last-child { max-width: 650px; }
.feature-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 1px; margin-top: 78px; background: var(--line); border: 1px solid var(--line); }
.feature-card { position: relative; min-height: 380px; padding: 34px; background: var(--bg-soft); }.feature-card--wide { grid-row: span 2; min-height: 761px; }.card-index { position: absolute; top: 24px; right: 26px; color: #59635a; font-family: ui-monospace, monospace; font-size: 9px; }
.feature-card h3 { max-width: 430px; margin: 0 0 18px; font-size: clamp(25px, 2.7vw, 38px); letter-spacing: -.04em; }.feature-card p { max-width: 440px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
.feature-symbol { position: relative; height: 170px; margin: 54px 0 55px; }.feature-card--wide .feature-symbol { height: 385px; }
.feature-symbol--target { --orbit-size: min(330px, 100%); display: grid; place-items: center; }
.spiral-orbit { width: var(--orbit-size); aspect-ratio: 1; overflow: visible; filter: drop-shadow(0 0 26px rgba(186,255,99,.06)); }
.spiral-guides circle, .spiral-core { fill: none; stroke: rgba(243,246,239,.2); stroke-width: 1; }
.spiral-core { stroke: rgba(186,255,99,.6); }
.spiral-blades { transform-box: fill-box; transform-origin: center; animation: orbit-spin 13s linear infinite; }
.spiral-blades path { fill: none; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; animation: spiral-arc-fade 4.4s ease-in-out infinite; }
.spiral-red { stroke: var(--ping-red); animation-delay: -.2s !important; }
.spiral-green { stroke: var(--signal); animation-delay: -1.3s !important; }
.spiral-purple { stroke: var(--ping-purple); animation-delay: -2.4s !important; }
.spiral-blue { stroke: var(--ping-blue); animation-delay: -3.5s !important; }
.feature-symbol--evidence { display: flex; align-items: end; gap: 10px; padding: 34px; border: 1px solid var(--line); }.feature-symbol--evidence i { flex: 1; height: 38%; border-top: 2px solid var(--signal); background: linear-gradient(rgba(186,255,99,.15), transparent); }.feature-symbol--evidence i:nth-child(2) { height: 82%; }.feature-symbol--evidence i:nth-child(3) { height: 57%; border-color: var(--orange); background: linear-gradient(rgba(255,176,91,.14), transparent); }
.feature-symbol--pulse { display: grid; place-items: center; overflow: hidden; border: 1px solid var(--line); }.feature-symbol--pulse::before { content: ""; width: 100%; height: 1px; background: linear-gradient(90deg, transparent 3%, #435044 3% 16%, transparent 16% 18%, #435044 18% 31%, transparent 31% 34%, var(--signal) 34% 35%, transparent 35% 38%, var(--signal) 38% 41%, transparent 41% 43%, var(--signal) 43% 44%, transparent 44% 46%, #435044 46% 72%, transparent 72% 74%, #435044 74% 97%, transparent 97%); box-shadow: 0 0 13px rgba(186,255,99,.35); }.feature-symbol--pulse i { position: absolute; width: 6px; height: 6px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 20px var(--signal); }

.use-cases { padding-top: 40px; }.case-list { margin-top: 76px; border-top: 1px solid var(--line); }.case-list article { display: grid; grid-template-columns: .24fr .4fr .36fr; gap: 32px; align-items: start; padding: 38px 0; border-bottom: 1px solid var(--line); }.case-list span { color: var(--signal); font-family: ui-monospace, monospace; font-size: 9px; letter-spacing: .13em; }.case-list h3, .case-list p { margin: 0; }.case-list h3 { max-width: 410px; font-size: 23px; line-height: 1.25; }.case-list p { color: var(--muted); font-size: 14px; }

.status-section { background: var(--panel-light); color: #111411; }.status-layout { display: grid; grid-template-columns: .7fr 1fr; gap: 10vw; align-items: start; }.status-section .eyebrow, .status-section .section-intro p { color: var(--muted-dark); }.status-section .section-intro h2 { font-size: clamp(42px, 5vw, 68px); }.status-list { margin: 0; padding: 0; border-top: 1px solid rgba(17,20,17,.2); list-style: none; }.status-item { display: grid; grid-template-columns: 40px 1fr auto; gap: 16px; align-items: center; min-height: 92px; border-bottom: 1px solid rgba(17,20,17,.2); }.status-item > span, .status-item > b { font-family: ui-monospace, monospace; font-size: 9px; letter-spacing: .1em; }.status-item > span { color: #7c867d; }.status-item strong, .status-item small { display: block; }.status-item strong { font-size: 14px; }.status-item small { color: #687269; }.status-item > b { color: #7d877e; }.status-item--complete > b { color: #3e7113; }.status-item--active > b { color: #9b5c0b; }

.about { display: grid; grid-template-columns: 130px 1fr auto; gap: 42px; align-items: center; border-bottom: 1px solid var(--line); }.about-mark { display: grid; width: 112px; height: 112px; place-items: center; border: 1px solid var(--line-strong); border-radius: 50%; color: var(--signal); font-family: Georgia, serif; font-size: 31px; font-style: italic; }.about .eyebrow { margin-bottom: 12px; }.about h2 { margin: 0 0 12px; font-size: clamp(34px, 4vw, 55px); letter-spacing: -.05em; }.about p:last-child { max-width: 650px; margin: 0; color: var(--muted); }.text-link { display: inline-flex; gap: 18px; align-items: center; border-bottom: 1px solid var(--line-strong); padding-bottom: 5px; font-size: 13px; font-weight: 700; }.text-link:hover { border-color: var(--signal); color: var(--signal); }
.closing { position: relative; display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-block: 110px; padding: clamp(36px, 6vw, 78px); background: var(--signal); color: var(--bg); }.closing::before { content: ""; position: absolute; top: 0; right: 0; left: 0; height: 5px; background: var(--ping-gradient); }.closing .eyebrow { color: #3c5d19; }.closing h2 { margin: 0; font-size: clamp(48px, 6vw, 84px); letter-spacing: -.06em; line-height: .94; }.button-light { border-color: var(--bg); white-space: nowrap; }.button-light:hover { background: var(--bg); color: var(--signal); }

.site-footer { display: grid; grid-template-columns: 1fr auto auto; gap: 50px; align-items: end; min-height: 210px; padding-block: 56px; border-top: 1px solid var(--line); }.brand--footer { margin-bottom: 14px; }.site-footer p { margin: 0; color: #707a71; font-size: 11px; }.footer-links { display: flex; gap: 28px; color: var(--muted); font-size: 12px; }.footer-links a:hover { color: var(--ink); }.copyright { text-align: right; }

.legal-page, .contact-page { padding-block: 92px 140px; }.legal-header { max-width: 900px; margin-bottom: 56px; }.legal-header h1, .contact-intro h1 { margin: 0; font-size: clamp(56px, 8vw, 106px); font-weight: 590; letter-spacing: -.065em; line-height: .95; }.legal-lede { max-width: 680px; margin: 30px 0 0; color: var(--muted); font-size: 19px; }.legal-meta { display: flex; gap: 28px; margin-top: 34px; color: #758075; font-family: ui-monospace, monospace; font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }.notice-box { margin: 0 0 70px; padding: 25px 28px; border-left: 2px solid var(--signal); background: rgba(186,255,99,.06); }.notice-box strong { color: var(--signal); font-family: ui-monospace, monospace; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }.notice-box p { margin: 9px 0 0; color: #b2bbb3; font-size: 14px; }
.legal-layout { display: grid; grid-template-columns: 250px 1fr; gap: clamp(50px, 8vw, 120px); align-items: start; }.legal-toc { position: sticky; top: 26px; display: grid; gap: 12px; padding-top: 20px; border-top: 1px solid var(--line-strong); }.legal-toc strong { margin-bottom: 9px; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; }.legal-toc a { color: var(--muted); font-size: 12px; }.legal-toc a:hover { color: var(--signal); }.legal-content { max-width: 750px; }.legal-content section { position: relative; padding: 18px 0 58px 58px; border-top: 1px solid var(--line); }.legal-number { position: absolute; top: 25px; left: 0; color: var(--signal); font-family: ui-monospace, monospace; font-size: 9px; }.legal-content h2 { margin: 0 0 20px; font-size: 27px; letter-spacing: -.035em; }.legal-content h3 { margin: 28px 0 8px; font-size: 14px; }.legal-content p, .legal-content li { color: #aeb7af; font-size: 14px; line-height: 1.75; }.legal-content a { color: var(--ink); text-decoration: underline; text-decoration-color: rgba(186,255,99,.5); text-underline-offset: 3px; }.legal-content li + li { margin-top: 10px; }.legal-contact { background: rgba(255,255,255,.025); padding-right: 34px !important; }.legal-contact .text-link { text-decoration: none; }

.contact-intro { max-width: 1020px; padding: 10px 0 76px; }.contact-intro p:last-child { max-width: 690px; margin: 35px 0 0; color: var(--muted); font-size: 18px; }.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; border: 1px solid var(--line); background: var(--line); }.contact-card { position: relative; min-height: 360px; padding: 38px; background: var(--bg-soft); transition: background .2s ease; }.contact-card:hover { background: #192019; }.contact-card small { display: block; margin: 42px 0 18px; color: var(--signal); font-family: ui-monospace, monospace; font-size: 9px; letter-spacing: .13em; }.contact-card h2 { margin: 0; overflow-wrap: anywhere; font-size: clamp(24px, 3.1vw, 42px); letter-spacing: -.045em; }.contact-card p { max-width: 460px; margin-top: 22px; color: var(--muted); font-size: 14px; }.contact-card b { position: absolute; bottom: 34px; left: 38px; font-size: 12px; }.contact-expectation { display: grid; grid-template-columns: .35fr .65fr; gap: 50px; align-items: center; margin-top: 60px; padding: 28px 0; border-block: 1px solid var(--line); }.contact-expectation strong { display: block; color: var(--orange); font-family: ui-monospace, monospace; font-size: 11px; letter-spacing: .1em; }.contact-expectation p { margin: 0; color: var(--muted); font-size: 14px; }
.not-found-intro { padding-top: 15vh; }

@media (max-width: 900px) {
  .site-nav a:not(.nav-contact) { display: none; }
  .hero { grid-template-columns: 1fr; min-height: 0; padding-block: 76px 100px; }
  .hero-console { max-width: 690px; }
  .principle-strip { grid-template-columns: 1fr 1fr; }.principle-strip div:nth-child(2) { border-right: 0; }.principle-strip div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .feature-grid, .status-layout { grid-template-columns: 1fr; }.feature-card--wide { grid-row: auto; min-height: 620px; }
  .case-list article { grid-template-columns: .25fr .75fr; }.case-list p { grid-column: 2; }
  .about { grid-template-columns: 112px 1fr; }.about > a { grid-column: 2; justify-self: start; }
  .legal-layout { grid-template-columns: 1fr; }.legal-toc { position: static; grid-template-columns: repeat(2, 1fr); }.legal-toc strong { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
  :root { --pad: 20px; }
  .site-header { height: 76px; }.site-nav { gap: 0; }.site-nav .nav-contact { padding: 8px 12px; }
  .hero { padding-top: 58px; }.hero h1, .contact-intro h1 { font-size: clamp(50px, 16vw, 72px); }
  .hero-actions { display: grid; }.button { width: 100%; }
  .goal-heading { padding: 26px 20px 20px; }.goal-badge { display: none; }.condition-row { grid-template-columns: 32px 1fr; padding: 14px 20px; }.condition-status { grid-column: 2; }.console-footer { grid-template-columns: 1fr auto; padding: 18px 20px; }.console-rule { display: none; }
  .principle-strip { grid-template-columns: 1fr; }.principle-strip div { min-height: 56px; border-right: 0; border-bottom: 1px solid var(--line); }.principle-strip div:last-child { border: 0; }
  .section { padding-block: 92px; }.section-intro { display: block; }.section-intro h2 { font-size: 47px; }.section-intro > p:last-child { margin-top: 20px; }
  .feature-grid { margin-top: 50px; }.feature-card { min-height: 350px; padding: 24px; }.feature-card--wide { min-height: 550px; }.feature-card--wide .feature-symbol { height: 300px; }.feature-symbol--target { --orbit-size: min(260px, 100%); }
  .case-list article { grid-template-columns: 1fr; gap: 12px; }.case-list p { grid-column: 1; }
  .status-layout { gap: 60px; }.status-item { grid-template-columns: 30px 1fr; }.status-item > b { grid-column: 2; }
  .about { grid-template-columns: 1fr; gap: 24px; }.about > a { grid-column: 1; }.about-mark { width: 86px; height: 86px; }
  .closing { align-items: stretch; flex-direction: column; }.closing .button { width: auto; }
  .site-footer { grid-template-columns: 1fr; gap: 25px; }.footer-links { flex-wrap: wrap; }.copyright { text-align: left; }
  .legal-page, .contact-page { padding-top: 65px; }.legal-header h1 { font-size: 62px; }.legal-meta { flex-direction: column; gap: 8px; }.legal-toc { display: none; }.legal-content section { padding-left: 34px; }.legal-number { left: 0; }.contact-grid { grid-template-columns: 1fr; }.contact-card { min-height: 330px; padding: 28px; }.contact-card b { left: 28px; }.contact-expectation { grid-template-columns: 1fr; gap: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@keyframes ping-spectrum {
  from { background-position: 0% 50%; }
  to { background-position: 200% 50%; }
}

@keyframes orbit-spin {
  to { transform: rotate(1turn); }
}

@keyframes orbit-fade {
  0%, 100% { opacity: .28; }
  38% { opacity: 1; }
  72% { opacity: .56; }
}

@keyframes spiral-arc-fade {
  0%, 100% { opacity: .18; stroke-width: 1.8; }
  38% { opacity: 1; stroke-width: 2.7; }
  72% { opacity: .5; stroke-width: 2.1; }
}
