.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.td-banner{position:sticky;top:0;z-index:20;margin:0}
.td-top{border-bottom:1px solid #e5e7eb;background:#fff}
.td-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;flex-wrap:wrap}
.td-logo{font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:1.15rem}
.td-call{margin:0;min-height:48px}
.td-hero{position:relative}
.td-photo{margin:0;position:relative}
.td-photo img{display:block;width:100%;height:auto;max-height:420px;object-fit:cover}
.td-photo figcaption{position:absolute;top:10px;left:10px;margin:0}
.td-hero-copy{padding:20px 16px}
.td-badges,.td-grid{list-style:none;padding:0;display:grid;gap:12px}
.td-badges{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.td-badges li{border:1px solid #d1d5db;border-radius:8px;padding:10px;text-align:center;font-weight:600}
.td-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.td-steps{padding-left:1.25rem}.td-steps li{margin:8px 0}
.td-illus{border-left:4px solid currentColor;padding:8px 12px}
.td-small{font-size:.9rem;color:#4b5563}
.td-tools{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.td-form label{display:block;margin:10px 0 4px;font-weight:500}
.td-form input:not([type=radio]),.td-form select,.td-chat-form input{width:100%;min-height:44px;padding:8px 10px;font:inherit;border:1px solid #9ca3af;border-radius:6px;box-sizing:border-box}
.td-form fieldset{border:0;padding:0;margin:10px 0}.td-form fieldset label{display:flex;align-items:center;gap:8px;min-height:44px;margin:0}
.td-form input[type=radio]{width:20px;height:20px}
.td-form .btn{margin-top:14px}
.td-out{font-weight:600;min-height:1.5em}
details{border-bottom:1px solid #e5e7eb;padding:10px 0}summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}
.td-tier{margin:24px auto}
.td-chat{position:fixed;right:12px;bottom:12px;z-index:2147483000;max-width:calc(100vw - 24px)}
.td-chat-open{margin:0}
#td-chat-box{width:min(320px,calc(100vw - 24px));margin-bottom:8px;background:#fff}
.td-log{list-style:none;padding:0;max-height:220px;overflow:auto}
.td-log li{padding:6px 10px;border-radius:8px;margin:6px 0;background:#f3f4f6}.td-log li.me{background:#dbeafe;text-align:right}
.td-chat-form{display:flex;gap:8px}.td-chat-form .btn{margin:0}
footer{padding-bottom:80px}
html.cb-open .td-chat{display:none}
