/* Public navigation and layout repairs from the 2026-10-25 read-only report. */
.tnx-public-header,.tnx-public-footer,.tnx-public-simple{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;box-sizing:border-box}
.tnx-public-header{position:sticky;top:0;z-index:80;background:#fff;color:#16365b;border-bottom:1px solid #dce5ef;line-height:1.4}
.tnx-public-head-inner{width:min(1460px,calc(100% - 40px));height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.tnx-public-brand{display:inline-flex;align-items:center;gap:9px;color:#123b71;text-decoration:none;font-size:21px;font-weight:800;letter-spacing:-.035em;flex-shrink:0}
.tnx-public-brand img{width:44px;height:44px;object-fit:contain}
.tnx-public-brand small{display:block;font-size:7px;letter-spacing:.17em;margin-top:4px}
.tnx-public-desktop{display:flex;align-items:center;gap:18px;flex-wrap:nowrap}
.tnx-public-desktop a,.tnx-public-actions a{color:#16477f;text-decoration:none;font-size:12px;font-weight:650;white-space:nowrap}
.tnx-public-header a:hover,.tnx-public-header a[aria-current="page"]{color:#075bb6;text-decoration:underline;text-underline-offset:5px}
.tnx-public-actions{display:flex;align-items:center;gap:15px}
.tnx-public-signin{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;border:1px solid #b7cce4;border-radius:10px;background:#edf5ff;color:#174d8a!important;text-decoration:none;font-size:13px;font-weight:700;box-sizing:border-box}
#tnx-public-menu-button{display:none;border:1px solid #b7cce4;background:#edf5ff;color:#174d8a;border-radius:9px;padding:5px 11px;min-height:42px;min-width:42px;font:22px/1 system-ui;cursor:pointer}
.tnx-public-menu[hidden]{display:none!important}
.tnx-public-menu{position:absolute;top:100%;left:0;right:0;background:#fff;padding:16px 20px;max-height:calc(100dvh - 76px);overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;box-shadow:0 12px 24px #16365b1a;border-bottom:1px solid #dce5ef}
.tnx-public-menu a{color:#16477f;text-decoration:none;background:#f1f6fc;border-radius:8px;padding:10px;font-size:13px}
.tnx-public-header :focus-visible,.tnx-public-footer :focus-visible{outline:3px solid #155fba;outline-offset:4px}
.tnx-public-footer{padding:0;background:#f5f8fc;color:#345374;border-top:1px solid #dce5ef;font-size:13px;line-height:1.7}
.tnx-public-footer-inner{width:min(1360px,calc(100% - 40px));margin:auto;display:flex;justify-content:space-between;gap:32px;padding:38px 0 20px}
.tnx-public-footer a{color:#174d8a;text-decoration:none}
.tnx-public-footer nav{display:flex;flex-wrap:wrap;gap:10px 18px;max-width:620px;align-content:start}
.tnx-public-footer nav a{font-size:12px}
.tnx-public-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;padding:20px;font-size:12px;line-height:1.6;border-top:1px solid #b5c9e240}
.tnx-public-legal a{text-decoration:underline;text-underline-offset:3px;color:inherit}
.tnx-public-copyright{text-align:center;margin:0;padding:0 20px 24px;font-size:12px}
.tnx-public-simple{min-height:56vh;max-width:1000px;margin:auto;padding:70px 24px;color:#183b64;background:#fff;line-height:1.75}
.tnx-public-simple h1{font-size:clamp(36px,5vw,64px);line-height:1.15}
.tnx-product-details{padding-block:30px 70px;scroll-margin-top:96px}
.tnx-product-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tnx-product-details article{padding:24px;border:1px solid #8eb4dd66;border-radius:16px;scroll-margin-top:96px;min-width:0}
.tnx-product-details a{text-decoration:underline;text-underline-offset:4px}
/* Match the capability pages' 1160px desktop-nav cutoff. */
@media(max-width:1160px){
 .q44-page .menu-button{display:block}
 .q44-page .mobile-menu{position:absolute;left:0;right:0;top:100%;background:#061a33;padding:19px 28px;border-bottom:1px solid #275e8a;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:calc(100dvh - 78px);overflow:auto}
 .q44-page .mobile-menu a{font-size:13px;color:#d7edff;padding:11px;border-radius:8px;background:#0c294a}
 .tnx-public-desktop{display:none}
 #tnx-public-menu-button{display:block}
}
/* Decorative orbits and generated capability cards must fit narrow screens. */
.q44-hero{overflow-x:hidden;overflow-x:clip}
#q44-grid{min-width:0;grid-template-columns:repeat(auto-fit,minmax(min(330px,100%),1fr))!important}
#q44-grid>*{min-width:0;overflow-wrap:anywhere}
/* The globe occupies its own row instead of covering login copy and workflow tiles. */
body.login-page .login-orb{position:relative;inset:auto;max-width:270px;width:min(55%,270px);margin:24px auto;opacity:.65}
body.login-page .login-story{min-height:0;padding-top:20px}
/* Keep decorative heartbeat work on compositor-friendly opacity/transform properties. */
.pulsing-dot{animation:none!important;box-shadow:none!important;position:relative}
.pulsing-dot::after{content:"";position:absolute;inset:-4px;border:1px solid currentColor;border-radius:50%;opacity:.5;animation:tnx-public-pulse 2.4s ease-out infinite}
@keyframes tnx-public-pulse{from{transform:scale(.6);opacity:.6}to{transform:scale(1.7);opacity:0}}
@media(prefers-reduced-motion:reduce){.pulsing-dot::after{animation:none}.pulsing-dot{animation:none!important}}
@media(max-width:760px){
 .tnx-public-head-inner{height:68px;width:calc(100% - 28px);gap:10px}
 .tnx-public-client{display:none}
 .tnx-public-actions{gap:8px}
 .tnx-public-brand{font-size:18px}
 .tnx-public-brand img{width:38px;height:38px}
 .tnx-public-menu{max-height:calc(100dvh - 68px)}
 .tnx-public-footer-inner{display:block}
 .tnx-public-footer nav{margin-top:20px}
 .tnx-product-details-grid{grid-template-columns:1fr}
 body.login-page .login-orb{width:170px;margin:12px auto;opacity:.35}
}
@media(max-width:470px){.q44-page .mobile-menu,.tnx-public-menu{grid-template-columns:1fr}}
/* Shared skip navigation works on standalone public pages too. */
.skip-link{position:absolute;top:-100px;left:16px;z-index:100;background:#fff;color:#123b71;padding:12px 16px;border:2px solid #155fba;border-radius:8px}
.skip-link:focus{top:10px}
body.tnx-public-page{margin:0;background:#fff;color:#183b64}
