:root{--radius-pill: 999px;--radius-card: 6px;--radius-sm: 4px;--radius-xs: 3px;--shadow-subtle: 0 1px 0 rgba(17, 27, 25, .04);--shadow-card: 0 4px 10px -6px rgba(17, 27, 25, .12);--shadow-lift: 0 10px 24px -12px rgba(17, 27, 25, .22);--blur-glass: blur(8px);--glass-bg: rgba(255, 255, 255, .72);--glass-border: rgba(31, 34, 37, .08);--ink: #16181a;--ink-soft: #1f2225;--muted: #6b7178;--muted-2: #9a9b9e;--line: #e4e5e8;--paper: #ffffff;--panel: #f3f4f6;--sage: #3a3f44;--signal: #2f6df6;--signal-on-dark: #5b8dff;--clay: #c3beb4}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--navy: var(--ink);--navy-mid: var(--ink-soft);--slate: var(--muted);--text: var(--ink);--text-secondary: var(--muted);--text-muted: var(--muted-2);--border: #dcdde1;--bg: var(--paper);--bg-off: var(--panel);--accent: var(--signal);--accent-dim: #2456c9;--risk-low: #2a7d4f;--risk-med: #c47d15;--risk-high: #b93d3d}html{font-size:17px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,sans-serif;color:var(--text);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}.mono{font-family:IBM Plex Mono,monospace}.serif{font-family:Inter,sans-serif}.section-label{font-family:IBM Plex Mono,monospace;font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:uppercase;color:var(--sage);margin-bottom:1.05rem}.wrap{max-width:1320px;margin:0 auto;padding-left:2rem;padding-right:2rem}.site-breadcrumb-shell{padding:.85rem 0 0;background:transparent}.site-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:.42rem;font-family:IBM Plex Mono,monospace;font-size:.72rem;color:var(--text-muted)}.site-breadcrumb a{color:var(--text-secondary);transition:color .18s ease}.site-breadcrumb a:hover{color:var(--accent)}.site-breadcrumb-separator{color:var(--border)}.nav-shell{position:sticky;top:0;z-index:100;height:80px;display:flex;align-items:center;background:transparent}.nav-row{display:flex;align-items:center;width:100%;gap:1.5rem}.nav-brand{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;flex-shrink:0}.nav-brand-text{font-family:IBM Plex Mono,monospace;font-size:1.05rem;font-weight:500;letter-spacing:-.02em;color:#111b19}.nav-brand-text:after{content:"";display:inline-block;width:.5em;height:.92em;vertical-align:-.06em;margin-left:.06em;background:var(--signal);border-radius:1px}.nav-pill{margin-left:auto;margin-right:auto;display:inline-flex;align-items:center;gap:.15rem;padding:.4rem .5rem;background:#ffffffb8;border:1px solid var(--line);border-radius:999px;backdrop-filter:blur(14px) saturate(1.5);-webkit-backdrop-filter:blur(14px) saturate(1.5)}.nav-has-mega{position:static}.nav-pill-link,.nav-pill-trigger{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .95rem;border-radius:999px;font-family:Inter,sans-serif;font-size:.84rem;font-weight:500;color:#111b19b8;text-decoration:none;background:transparent;border:none;cursor:pointer;letter-spacing:0;transition:background .18s ease,color .18s ease}.nav-pill-link:hover,.nav-pill-trigger:hover,.nav-has-mega.is-open .nav-pill-trigger{background:var(--ink);color:#f4f4f2}.nav-chev{display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);opacity:.55;transition:transform .25s ease,opacity .2s ease}.nav-has-mega.is-open .nav-chev{transform:rotate(225deg) translate(-1px,-1px);opacity:.85}.nav-contact{display:inline-flex;align-items:center;padding:.55rem 1.1rem;background:var(--ink);color:#fff;font-family:Inter,sans-serif;font-size:.84rem;font-weight:500;border-radius:999px;text-decoration:none;letter-spacing:0;flex-shrink:0;transition:background .18s ease}.nav-contact:hover{background:var(--sage)}.mega{position:absolute;top:100%;left:0;right:0;z-index:99;visibility:hidden;opacity:0;transform:translateY(-6px);transition:opacity .22s ease,transform .22s ease,visibility .22s;pointer-events:none;padding:.6rem 2rem 1.5rem}.mega.is-open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.mega-inner{max-width:1020px;margin:0 auto;display:grid;grid-template-columns:1.05fr 1.1fr .95fr;gap:2.6rem;padding:2.4rem 2.6rem 2.6rem;border-radius:10px;background:var(--ink);border:1px solid rgba(255,255,255,.09);box-shadow:0 32px 72px -28px #00000094,0 12px 26px -14px #0000006b}.mega-col{display:flex;flex-direction:column;min-width:0}.mega-col--lead{border-right:1px solid rgba(255,255,255,.09);padding-right:2.2rem}.mega-eyebrow,.mega-label{display:inline-flex;align-items:center;gap:.5rem;font-family:IBM Plex Mono,monospace;font-size:.66rem;font-weight:600;letter-spacing:0;text-transform:uppercase;color:#ffffff85;margin-bottom:.85rem}.mega-eyebrow:before,.mega-label:before{content:"";display:inline-block;width:14px;height:1px;background:#ffffff4d}.mega-headline{font-family:Inter,sans-serif;font-size:clamp(1.6rem,2.1vw,1.95rem);font-weight:500;line-height:1.1;letter-spacing:-.012em;color:#f4f4f2;margin:0 0 .85rem}.mega-headline em{font-style:normal;color:inherit}.mega-desc{font-size:.92rem;line-height:1.6;color:#ffffff9e;margin:0 0 1.2rem}.mega-text-link{display:inline-block;margin-top:auto;font-family:IBM Plex Mono,monospace;font-size:.74rem;font-weight:600;color:var(--signal-on-dark);text-decoration:none;border-bottom:1px solid transparent;letter-spacing:0;transition:border-color .2s}.mega-text-link:hover{border-bottom-color:var(--signal-on-dark)}.mega-link{display:block;padding:.7rem 0;text-decoration:none;color:#f4f4f2;border-bottom:1px solid rgba(255,255,255,.09);transition:padding-left .2s ease,background .2s ease}.mega-link:last-child{border-bottom:none}.mega-link:hover{padding-left:.4rem;background:#ffffff0a}.mega-link strong{display:block;font-family:Inter,sans-serif;font-size:.92rem;font-weight:500;color:#f4f4f2;margin-bottom:.18rem;letter-spacing:-.005em}.mega-link span{display:block;font-size:.78rem;color:#ffffff85;line-height:1.5}.mega-link--upcoming strong{color:#ffffff57;font-weight:400}.mega-link--upcoming span{color:#ffffff42;font-style:italic}.mega-link--compact{padding:.55rem 0;font-family:Inter,sans-serif;font-size:.92rem;font-weight:500;letter-spacing:-.005em}.mega-tag{display:inline-block!important;margin-top:.4rem;font-family:IBM Plex Mono,monospace;font-size:.6rem!important;font-weight:600;text-transform:uppercase;color:var(--signal-on-dark)!important;border:1px solid rgba(91,141,255,.42);padding:.12rem .45rem;border-radius:999px;letter-spacing:0;line-height:1.3!important}.mega-feature{display:block;text-decoration:none;padding-top:.2rem;transition:opacity .2s}.mega-feature:hover{opacity:.78}.mega-feature em{display:block;font-family:Inter,sans-serif;font-style:normal;font-size:1.12rem;font-weight:600;line-height:1.3;letter-spacing:-.006em;color:#f4f4f2;margin-bottom:.55rem}.mega-feature span{display:block;font-size:.84rem;color:#ffffff9e;line-height:1.55}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:4px;margin-left:auto}.nav-toggle span{display:block;width:22px;height:2px;background:#111b19;transition:transform .2s ease,opacity .2s ease}.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-panel{position:absolute;top:calc(100% + 8px);left:12px;right:12px;z-index:99;background:#16181a;border:1px solid rgba(255,255,255,.09);border-radius:16px;box-shadow:0 32px 72px -28px #00000094,0 12px 26px -14px #0000006b;max-height:calc(100vh - 90px);overflow-y:auto;visibility:hidden;opacity:0;transform:translateY(-6px);transition:opacity .22s ease,transform .22s ease,visibility .22s}.nav-panel.open{visibility:visible;opacity:1;transform:translateY(0)}.nav-panel-inner{padding:.5rem 20px 1.5rem}.nav-panel-link{display:block;padding:.8rem 0;font-family:Inter,sans-serif;font-size:.98rem;font-weight:500;color:#f4f4f2;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.09);letter-spacing:-.005em}.nav-panel-link:hover{color:#fff}.nav-panel-group-trigger{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.8rem 0;font-family:Inter,sans-serif;font-size:.98rem;font-weight:500;color:#f4f4f2;background:none;border:none;border-bottom:1px solid rgba(255,255,255,.09);cursor:pointer;text-align:left;letter-spacing:-.005em;transition:color .2s,border-color .2s}.nav-panel-group-trigger:hover{color:#fff}.nav-panel-group-trigger.open{color:#f4f4f2;border-bottom-color:transparent}.nav-panel-chevron{font-size:1rem;color:#ffffff73;transition:transform .25s ease,color .2s ease}.nav-panel-group-trigger.open .nav-panel-chevron{transform:rotate(90deg);color:#fffc}.nav-panel-sub{display:none;flex-direction:column;background:none;margin:0 0 0 2px;padding:.1rem 0 .7rem 14px;border-left:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.09)}.nav-panel-sub.open{display:flex;animation:nav-sub-in .26s cubic-bezier(.22,1,.36,1)}.nav-panel-sub-link{display:block;padding:.5rem 0;font-family:Inter,sans-serif;font-size:.9rem;color:#ffffff9e;text-decoration:none;letter-spacing:0}.nav-panel-sub-link:hover{color:var(--signal-on-dark)}.nav-panel-footer{margin-top:1.2rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.09)}.nav-panel-email{font-family:IBM Plex Mono,monospace;font-size:.72rem;color:#ffffff85;text-decoration:none}.nav-panel-email:hover{color:var(--signal-on-dark)}@keyframes nav-sub-in{0%{opacity:0;transform:translateY(-4px)}}@media(max-width:920px){.nav-pill,.nav-contact,.mega{display:none}.nav-toggle{display:flex}.nav-shell{height:68px}}.contact-bar{background:transparent;padding:5.5rem 0 6rem}.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:2.4rem;max-width:1040px;margin:0 auto;background:var(--ink);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-card);padding:3.2rem 3.4rem;box-shadow:0 34px 74px -30px #14171a4d,0 12px 26px -16px #14171a24}.contact-bar h3{font-family:Inter,sans-serif;font-size:1.8rem;font-weight:560;color:#f4f4f2;letter-spacing:0;line-height:1.22;max-width:720px}.contact-bar h3 span{color:var(--signal-on-dark)}.contact-btn{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink);background:#fff;font-family:IBM Plex Mono,monospace;font-size:.82rem;font-weight:500;border:1px solid #ffffff;padding:.8rem 1.5rem;border-radius:var(--radius-pill);transition:all .3s;letter-spacing:0;flex-shrink:0}.contact-btn:hover{background:#ffffffe0;border-color:#ffffffe0}.contact-btn .arrow{transition:transform .3s}.contact-btn:hover .arrow{transform:translate(3px)}footer{border-top:none;background:transparent;padding:.5rem 0 4rem}footer>.wrap{position:relative;max-width:1040px;margin:0 auto;background:#f6f7f9;border:1px solid var(--line);border-radius:var(--radius-card);padding:3.5rem 2.4rem 1.4rem;overflow:hidden}footer>.wrap:before{content:"gridex.dev · site index";position:absolute;top:0;left:0;right:0;height:34px;display:flex;align-items:center;padding-left:3.6rem;font-family:IBM Plex Mono,monospace;font-size:.6rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='10'%3E%3Ccircle cx='5' cy='5' r='4' fill='%23f2564d'/%3E%3Ccircle cx='19' cy='5' r='4' fill='%23e0e0dc'/%3E%3Ccircle cx='33' cy='5' r='4' fill='%23e0e0dc'/%3E%3C/svg%3E") no-repeat 1rem center;border-bottom:1px solid #e9eaed}.footer-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.6rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}.footer-col-head{font-family:IBM Plex Mono,monospace;font-size:.58rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);margin-bottom:1rem}.footer-col-links{display:flex;flex-direction:column;gap:.55rem}.footer-col-links a{font-size:.82rem;color:var(--muted);transition:color .2s}.footer-col-links a:hover{color:var(--ink)}.footer-bar{display:flex;justify-content:space-between;align-items:center;padding-top:1.2rem}.footer-copy{font-family:IBM Plex Mono,monospace;font-size:.66rem;color:var(--muted-2);letter-spacing:0}.footer-social-link{color:var(--muted-2);transition:color .2s;display:flex}.footer-social-link:hover{color:var(--ink)}.logo-group{display:inline-flex;align-items:center;text-decoration:none}.logo-text{font-family:IBM Plex Mono,monospace;font-size:1.05rem;font-weight:500;letter-spacing:-.02em;color:var(--navy)}.logo-text:after{content:"";display:inline-block;width:.5em;height:.92em;vertical-align:-.06em;margin-left:.06em;background:var(--signal);border-radius:1px}.lp-header{height:64px;display:flex;align-items:center;border-bottom:1px solid var(--border)}.lp-header-inner{display:flex;justify-content:space-between;align-items:center;width:100%}.lp-cta{font-family:IBM Plex Mono,monospace;font-size:.78rem;font-weight:600;color:var(--navy);letter-spacing:.02em;border:1px solid var(--border);padding:.55rem 1.2rem;border-radius:999px;transition:background .25s,border-color .25s}.lp-cta:hover{background:var(--bg-off);border-color:var(--navy)}.lp-footer{padding:1.4rem 0;border-top:1px solid var(--border)}.lp-footer-inner{display:flex;justify-content:space-between;align-items:center}.lp-footer-copy{font-size:.7rem;color:var(--text-muted)}.lp-footer-link{font-family:IBM Plex Mono,monospace;font-size:.65rem;color:var(--text-muted);transition:color .2s}.lp-footer-link:hover{color:var(--accent)}@media(max-width:820px){html{font-size:16px}.nav-toggle{display:flex}.contact-inner{flex-direction:column;gap:1.2rem;text-align:center}.footer-nav{grid-template-columns:1fr 1fr;gap:1.5rem 2rem}.footer-bar{flex-direction:column;gap:.8rem;text-align:center}.nav-right{display:none}.lp-footer-inner{flex-direction:column;gap:.4rem;text-align:center}}::view-transition-old(root){animation:gx-fade-out .18s ease-out both}::view-transition-new(root){animation:gx-fade-in .22s ease-out both}@keyframes gx-fade-out{to{opacity:0}}@keyframes gx-fade-in{0%{opacity:0}}.gx-reveal{opacity:0;transform:translateY(16px);transition:opacity .5s ease-out,transform .5s ease-out;will-change:opacity,transform}.gx-reveal--in{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.gx-reveal{opacity:1;transform:none}::view-transition-old(root),::view-transition-new(root){animation:none}}
