:root{--bg:#f5f2ed;--surface:#fff;--border:#141c1e14;--border-h:#141c1e2e;--text-1:#1c2126;--text-2:#5d6778;--text-3:#9aa3b3;--a1:#0d888e;--a2:#c8923c;--a3:#bf5a7a;--a4:#6e9f7e;--font-display:"Playfair Display",Georgia,serif;--font-body:"IBM Plex Mono",monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--text-1);-webkit-font-smoothing:antialiased;font-size:13px;line-height:1.6;overflow:hidden}.stage{height:100vh;display:flex;position:relative;overflow:hidden}.stage-ambient{z-index:0;pointer-events:none;background:radial-gradient(70% 40% at 20% 10%,#0d888e0d 0%,#0000 60%),radial-gradient(40% 50% at 85% 30%,#c8923c0a 0%,#0000 50%),radial-gradient(50% 40% at 60% 85%,#bf5a7a08 0%,#0000 50%);position:fixed;inset:0}.stage-glow{z-index:0;pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 60px,#141c1e06 60px 61px);position:fixed;inset:0}.rail{z-index:2;border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:200px;padding:36px 24px;display:flex;position:relative}.rail-brand{align-items:center;gap:10px;margin-bottom:40px;display:flex}.rail-mark{background:linear-gradient(135deg,var(--a1),var(--a2));border-radius:1px;width:8px;height:8px;transform:rotate(45deg)}.rail-name{letter-spacing:-.02em;font-size:15px;font-weight:600;font-family:var(--font-display)}.rail-nav{flex-direction:column;flex:1;gap:2px;display:flex}.rail-link{color:var(--text-2);border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:12px;text-decoration:none;transition:background .25s,color .25s;display:flex}.rail-link:hover{background:var(--bg);color:var(--text-1)}.rl-index{color:var(--text-3);letter-spacing:.06em;font-feature-settings:"tnum";min-width:20px;font-size:10px;font-weight:500}.rl-label{font-weight:500}.rail-link:hover .rl-label{color:var(--rk)}.rail-foot{border-top:1px solid var(--border);margin-top:auto;padding-top:24px}.rail-legal{color:var(--text-3);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:500}.canvas{z-index:1;flex:1;grid-template-rows:auto 1fr;grid-template-columns:1.2fr .8fr;gap:0;padding:48px 56px 40px;display:grid;position:relative}.canvas-intro{grid-column:1;align-self:end;padding-bottom:24px}.canvas-grid{grid-area:2/1/auto/3;grid-template-columns:repeat(3,1fr);align-content:start;gap:12px;display:grid}.canvas-float{grid-area:1/2;place-self:start end;position:relative}.float-mol{opacity:0;width:200px;height:200px;animation:1.8s .3s forwards molAppear}@keyframes molAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.float-mol circle,.float-mol line{animation:4s ease-in-out infinite molPulse}.float-mol circle:nth-child(2){animation-delay:.3s}.float-mol circle:nth-child(3){animation-delay:.6s}.float-mol circle:nth-child(4){animation-delay:.9s}.float-mol circle:nth-child(5){animation-delay:1.2s}@keyframes molPulse{0%,to{opacity:var(--mol-o,.4)}50%{opacity:calc(var(--mol-o,.4) * .4)}}.float-mol circle:first-child{--mol-o:.6}.float-mol circle:nth-child(2){--mol-o:.5}.float-mol circle:nth-child(3){--mol-o:.4}.float-mol circle:nth-child(4){--mol-o:.55}.float-mol circle:nth-child(5){--mol-o:.35}.ci-kicker{color:var(--a1);letter-spacing:.16em;text-transform:uppercase;opacity:0;margin-bottom:14px;font-size:11px;font-weight:500;animation:.6s .1s forwards fadeUp}.ci-title{margin-bottom:16px;line-height:1.05}.cit-l{font-family:var(--font-display);letter-spacing:-.04em;color:var(--text-1);opacity:0;font-size:62px;font-weight:700;animation:.6s forwards fadeUp;display:block}.cit-l:first-child{animation-delay:.15s}.cit-l:nth-child(2){animation-delay:.25s}.cit-l:nth-child(3){animation-delay:.35s}.cit-l-glow{background:linear-gradient(135deg,var(--a1) 0%,var(--a2) 70%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.ci-desc{color:var(--text-2);opacity:0;max-width:46ch;font-size:14px;font-weight:300;line-height:1.6;animation:.6s .45s forwards fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.c-card{background:var(--surface);border:1px solid var(--border);color:inherit;opacity:0;border-radius:12px;flex-direction:column;padding:18px 20px 20px;text-decoration:none;transition:background .3s,border-color .3s,transform .3s;animation:.5s forwards fadeUp;display:flex;position:relative;overflow:hidden}.c-card:first-child{animation-delay:.2s}.c-card:nth-child(2){animation-delay:.3s}.c-card:nth-child(3){animation-delay:.4s}.c-card:nth-child(4){animation-delay:.5s}.c-card:nth-child(5){animation-delay:.6s}.c-card:before{content:"";background:radial-gradient(120% 80% at 80% 20%, var(--cc), transparent 70%);opacity:0;pointer-events:none;border-radius:12px;transition:opacity .5s;position:absolute;inset:0}.c-card:hover{border-color:var(--cc);transform:translateY(-2px);box-shadow:0 8px 28px #141c1e0f}.c-card:hover:before{opacity:.06}.cc-rule{background:var(--cc);border-radius:1px;width:28px;height:2px;margin-bottom:12px}.cc-index{font-family:var(--font-display);color:var(--cc);opacity:.2;letter-spacing:-.04em;font-size:32px;font-weight:600;line-height:1;position:absolute;top:16px;right:18px}.cc-tag{color:var(--cc);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:600}.c-card h3{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:4px;font-size:18px;font-weight:600;line-height:1.2}.c-card p{color:var(--text-2);font-size:12px;line-height:1.55}.cc-arrow{color:var(--text-3);align-self:flex-end;margin-top:auto;padding-top:12px;font-size:16px;transition:transform .25s,color .25s}.c-card:hover .cc-arrow{color:var(--cc);transform:translate(4px)}@media (width<=1024px){.canvas{grid-template-columns:1fr;gap:24px;padding:32px}.canvas-float{display:none}.canvas-grid{grid-column:1;grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.stage{flex-direction:column;overflow:auto}.rail{border-right:none;border-bottom:1px solid var(--border);width:100%;padding:20px}.rail-brand{margin-bottom:20px}.rail-nav{flex-flow:wrap;gap:4px}.rail-link{flex:1;min-width:90px;padding:8px 10px}.rail-foot{display:none}.canvas-grid{grid-template-columns:1fr}.cit-l{font-size:40px}}
