/* Shared header and footer (static pages and SPA). Brand: #310d1f, #ef4b17, #e7ac36. */
.tn-header{position:sticky;top:0;z-index:50;background:#310d1f;border-bottom:1px solid #ffffff14;box-shadow:0 4px 14px #17071024;font-family:Inter,"Segoe UI",Arial,sans-serif}
.tn-header-inner{max-width:1180px;margin:0 auto;height:64px;padding:0 28px;display:flex;align-items:center;gap:28px;box-sizing:border-box}
.tn-header .tn-logo .brand,.tn-footer .tn-footer-brand .brand{display:inline-flex;align-items:center;gap:9px;color:#fff8f0;font-weight:700;font-size:19px;letter-spacing:-.4px;text-decoration:none}
.tn-header .tn-logo .brand-mark,.tn-footer .tn-footer-brand .brand-mark{margin:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#e7ac36;color:#310d1f}
.tn-logo{text-decoration:none;flex:0 0 auto}
.tn-nav{display:flex;gap:26px;margin-left:12px}
.tn-nav a,.tn-signin,.tn-menu nav a{color:#ead4dc;text-decoration:none;font-size:14px;font-weight:550}
.tn-nav a:hover,.tn-signin:hover,.tn-nav a[aria-current="page"]{color:#fff8f0}
.tn-nav a[aria-current="page"]{box-shadow:inset 0 -2px #e7ac36}
.tn-actions{display:flex;align-items:center;gap:20px;margin-left:auto}
.tn-signin{background:none;border:0;padding:0;cursor:pointer;font-family:inherit}
.tn-trial{display:inline-flex;align-items:center;background:#ef4b17;color:#fff;font-weight:650;font-size:14px;padding:10px 16px;border-radius:7px;text-decoration:none;white-space:nowrap;border:0;cursor:pointer;font-family:inherit}
.tn-trial:hover{background:#d63f10}.tn-trial[aria-disabled="true"]{opacity:.7}
.tn-header a:focus-visible,.tn-header summary:focus-visible,.tn-header button:focus-visible,.tn-footer a:focus-visible,.tn-footer button:focus-visible{outline:2px solid #e7ac36;outline-offset:3px;border-radius:4px}
.tn-menu{display:none;position:relative}
.tn-menu summary{list-style:none;cursor:pointer;color:#fff8f0;font-size:14px;font-weight:600;padding:8px 10px;border:1px solid #ffffff33;border-radius:7px}
.tn-menu summary::-webkit-details-marker{display:none}
.tn-menu summary::before{content:"☰";margin-right:6px}
.tn-menu[open] summary::before{content:"✕"}
.tn-menu nav{position:absolute;right:0;top:calc(100% + 10px);min-width:220px;background:#3f1529;border:1px solid #ffffff1f;border-radius:10px;padding:8px;display:grid;box-shadow:0 12px 30px #0006}
.tn-menu nav a{display:block;padding:13px 14px;font-size:16px;border-radius:7px}
.tn-menu nav a:hover,.tn-menu nav a[aria-current="page"]{background:#ffffff12;color:#fff8f0}
@media(max-width:760px){.tn-header-inner{height:56px;padding:0 16px;gap:12px}.tn-nav,.tn-signin{display:none}.tn-menu{display:block}.tn-actions{gap:10px}.tn-trial{font-size:13px;padding:8px 12px}.tn-header .tn-logo .brand{font-size:17px;gap:7px}.tn-header .tn-logo .brand-mark{width:28px;height:28px}}
@media(max-width:360px){.tn-header .tn-logo .brand{font-size:0;gap:0}}
.tn-footer{background:#310d1f;color:#ead4dc;border-top:1px solid #ffffff14;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px}
.tn-footer-inner{max-width:1180px;margin:0 auto;padding:44px 28px 32px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,2fr);gap:40px;box-sizing:border-box}
.tn-footer-brand p{margin:14px 0 18px;max-width:300px;line-height:1.6;color:#dec6cf}
.tn-footer-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tn-footer-title{margin:0 0 12px;color:#fff8f0;font-weight:650;font-size:13px}
.tn-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tn-footer ul a{color:#ead4dc;text-decoration:none}.tn-footer ul a:hover{color:#e7ac36;text-decoration:underline}
.tn-legal{max-width:1180px;margin:0 auto;padding:16px 28px 26px;border-top:1px solid #ffffff14;display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;font-size:12px;color:#b99aa7;box-sizing:border-box}
.tn-legal a,.tn-legal button{color:#b99aa7;text-decoration:none;background:none;border:0;padding:0;font:inherit;cursor:pointer}
.tn-legal a:hover,.tn-legal button:hover{color:#e7ac36}
@media(max-width:760px){.tn-footer-inner{grid-template-columns:1fr;padding:36px 16px 24px;gap:28px}.tn-footer-cols{grid-template-columns:1fr 1fr}.tn-footer ul a{display:inline-block;padding:4px 0}.tn-legal{padding:16px 16px 24px}}
