.tn-tools { padding: clamp(70px, 9vw, 120px) 0 clamp(80px, 10vw, 140px); background: var(--ink-3); }
.tn-tools-shell { padding: clamp(24px, 4vw, 56px); border-radius: 26px; background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015)); border: 1px solid rgba(255,255,255,.08); }
.tn-tools-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 36px; }
.tn-tool { display: flex; flex-direction: column; gap: 12px; padding: 24px; border-radius: 16px; background: rgba(6,13,23,.6); border: 1px solid rgba(255,255,255,.09); transition: transform .6s var(--ease-out), border-color .4s; }
.tn-tool:hover { transform: translateY(-4px); border-color: rgba(255,255,255,.2); }
.tn-tool h3 { margin: 6px 0 0; font: 700 20px/1.2 var(--f-ui); }
.tn-tool p { margin: 0; flex: 1; color: var(--muted); font: 400 15px/1.6 var(--f-body); }
.tn-faq { margin-top: 50px; }
.tn-faq-title { margin: 0 0 16px; font: 800 clamp(26px, 2.6vw, 34px)/1 var(--f-display); text-transform: uppercase; }
.tn-faq details { border-bottom: 1px solid rgba(255,255,255,.09); }
.tn-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 60px; cursor: pointer; list-style: none; font: 600 17px/1.35 var(--f-ui); }
.tn-faq summary::-webkit-details-marker { display: none; }
.tn-faq summary i { flex: 0 0 auto; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; border: 1px solid rgba(255,255,255,.12); color: var(--lime); font-size: 12px; transition: transform .45s var(--ease-out); }
.tn-faq details[open] summary i { transform: rotate(45deg); }
.tn-faq details p { margin: 0 0 20px; color: var(--text-2); font: 400 16px/1.65 var(--f-body); max-width: 70ch; }
@media (max-width: 1023px) { .tn-tools-grid { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .tn-tools-shell { padding: 22px 16px; border-radius: 18px; } }
