.wrap{max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:120px 0}.eyebrow{color:var(--accent);align-items:center;gap:8px;font-size:13px;font-weight:500;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);border-radius:2px;width:18px;height:2px}.h2{letter-spacing:-.035em;margin:14px 0 48px;font-size:clamp(32px,4.6vw,52px);font-weight:600;line-height:1.05}.h2 .soft{color:var(--faint)}.bento{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.tile{background:var(--surface);border:1px solid var(--line);color:inherit;border-radius:18px;flex-direction:column;min-height:300px;text-decoration:none;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.tile:hover{border-color:#d4d4d4;transform:translateY(-2px);box-shadow:0 24px 48px -28px #00000040}.dark .tile:hover{border-color:#3a3a3a;box-shadow:0 24px 48px -28px #000c}.tile[data-reveal].shown:hover,.tile[data-reveal].shown:focus-visible{transition:opacity .6s,transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .25s}.tile:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.wide{grid-column:span 2}.viz{background:var(--soft);border-bottom:1px solid var(--line);flex:1;min-height:180px;position:relative;overflow:hidden}.txt{justify-content:space-between;align-items:flex-end;gap:12px;padding:18px 20px 20px;display:flex}.txt h3{letter-spacing:-.01em;margin:0 0 3px;font-size:17px;font-weight:600}.txt p{color:var(--muted);margin:0;font-size:14px}.txt .go{color:var(--faint);white-space:nowrap;opacity:0;font-size:13px;transition:opacity .2s,transform .25s;transform:translate(-4px)}.tile:hover .go{opacity:1;color:var(--ink);transform:none}@media (max-width:900px){.bento{grid-template-columns:1fr}.wide{grid-column:auto}}.btn{border-radius:12px;align-items:center;gap:10px;height:48px;padding:0 20px;font-size:15px;font-weight:500;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,border-color .2s,background-color .2s;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:translateY(0)scale(.98)}.btn1{background:var(--ink);color:var(--bg);box-shadow:inset 0 1px #ffffff1f,0 8px 20px -10px #00000080}.btn1:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff1f,0 14px 28px -12px #0000008c}.btn1 svg{width:16px;height:16px;transition:transform .25s cubic-bezier(.16,1,.3,1)}.btn1:hover svg{transform:translate(3px)}.btn1:after{content:"";background:linear-gradient(90deg,#0000,#ffffff47,#0000);width:40%;animation:1.1s cubic-bezier(.65,0,.35,1) 1.6s both sheen;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-20deg)}.btn1:hover:after{animation:.9s cubic-bezier(.65,0,.35,1) sheen}.dark .btn1:after{background:linear-gradient(90deg,#0000,#00000024,#0000)}@keyframes sheen{0%{left:-60%}to{left:130%}}.btn2{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;font-size:14px}.btn2:hover{border-color:var(--faint);transform:translateY(-1px)}.btn2 .prompt{color:var(--faint)}.btn2 .copy{color:var(--faint);font-family:var(--font-sans), system-ui;align-items:center;gap:5px;font-size:12.5px;transition:color .2s;display:inline-flex}.btn2:hover .copy{color:var(--ink)}.btn2 .copy svg{width:15px;height:15px}.btn2.done .copy{color:var(--accent)}@media (prefers-reduced-motion:reduce){.btn,.btn1 svg,.tile{transition:none}.btn1:after{display:none}}
