/* Site-wide header. Unique names isolate it from page and document styles. */
#tm-site-header,#tm-site-header *{box-sizing:border-box}
#tm-site-header{display:block;position:relative;z-index:1000;width:100%;margin:0;padding:0;background:#082d46;color:#fff;border:0;border-bottom:1px solid #284a5f;font:normal 16px/1.4 Arial,sans-serif;text-align:left;letter-spacing:normal}
#tm-site-header .tm-site-inner{display:block;width:calc(100% - 40px);max-width:1180px;margin:0 auto;padding:12px 0 10px;position:relative}
#tm-site-header .tm-site-brand{display:flex;align-items:center;gap:16px;width:fit-content;max-width:calc(100% - 54px);margin:0 0 10px;padding:0;color:#fff;text-decoration:none;background:none;border:0;box-shadow:none;transform:none}
#tm-site-header .tm-site-logo{display:block;flex:0 0 104px;width:104px;height:98px;min-width:104px;max-width:104px;max-height:98px;margin:0;padding:6px;object-fit:contain;object-position:center;background:#fff;border:1px solid #e4eaf0;border-radius:10px;box-shadow:0 3px 14px #0002;filter:none;opacity:1}
#tm-site-header .tm-site-name{display:block;margin:0;padding:0;font:italic 700 26px/1.2 Georgia,serif;color:#fff;letter-spacing:normal;text-transform:none;white-space:normal}
#tm-site-header .tm-site-tagline{display:block;margin:6px 0 0;padding:0;font:600 16px/1.5 Arial,sans-serif;letter-spacing:.035em;color:#f5c66b;text-transform:none;opacity:1}
#tm-site-header .tm-site-nav{display:flex;position:static;align-items:center;justify-content:flex-start;flex-flow:row wrap;gap:5px;width:100%;margin:0;padding:9px 0 0;background:transparent;border:0;border-top:1px solid #ffffff26;box-shadow:none}
#tm-site-header .tm-site-nav a{display:block;position:relative;margin:0;padding:11px 9px;color:#fff;text-decoration:none;font:600 14px/1.2 Arial,sans-serif;text-transform:none;letter-spacing:normal;white-space:nowrap;border:0;border-radius:7px;background:transparent;box-shadow:none;transform:none}
#tm-site-header .tm-site-nav a:hover,#tm-site-header .tm-site-nav a[aria-current="page"]{background:#ffffff19}
#tm-site-header .tm-site-nav a[aria-current="page"]{box-shadow:inset 0 -2px #77c9c5}
#tm-site-header .tm-site-nav a::before,#tm-site-header .tm-site-nav a::after{display:none;content:none}
#tm-site-header .tm-site-nav .tm-site-quote{margin-left:auto;padding:11px 15px;background:#f0b84a;color:#102332}
#tm-site-header .tm-site-toggle{display:none;align-items:center;justify-content:center;position:absolute;right:0;top:24px;width:44px;height:44px;min-height:0;margin:0;padding:0;background:transparent;color:#fff;border:1px solid #ffffff70;border-radius:8px;cursor:pointer;font:600 23px/1 Arial,sans-serif;box-shadow:none}
#tm-site-header a:focus-visible,#tm-site-header button:focus-visible{outline:3px solid #f0b84a;outline-offset:3px}
.tm-workspace-bar{background:#edf3f6;border-bottom:1px solid #cbdbe3;color:#14394e;font:14px/1.4 Arial,sans-serif}
.tm-workspace-inner{width:calc(100% - 40px);max-width:1180px;margin:auto;padding:12px 0;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.tm-workspace-label{font-weight:700;white-space:nowrap}
.tm-workspace-inner nav{display:flex;flex-wrap:wrap;gap:5px}
.tm-workspace-inner nav a{display:block;padding:8px 10px;border-radius:6px;color:#14394e!important;text-decoration:none;font:600 13px/1.4 Arial,sans-serif}
.tm-workspace-inner nav a:hover,.tm-workspace-inner nav a[aria-current]{background:#d8e7ed}
/* Logged-in accounts show ONLY this account navigation; never the public site masthead. */
.tm-workspace-bar--account{position:relative;z-index:50;background:#082d46;border-bottom:3px solid #247b87;color:#fff}
.tm-workspace-bar--account .tm-workspace-inner{max-width:1280px;min-height:78px;padding:12px 0;gap:8px 20px}
.tm-workspace-bar--account .tm-workspace-label{font:700 19px/1.3 Arial,sans-serif;color:#fff;letter-spacing:.01em;margin-right:6px}
.tm-workspace-bar--account .tm-workspace-inner nav{flex:1 1 660px;justify-content:flex-end;gap:4px 5px;align-items:center}
.tm-workspace-bar--account .tm-workspace-inner nav a{font:600 13px/1.3 Arial,sans-serif;color:#edf7fb!important;padding:10px 11px;border:1px solid transparent;border-radius:8px;white-space:nowrap}
.tm-workspace-bar--account .tm-workspace-inner nav a:hover,.tm-workspace-bar--account .tm-workspace-inner nav a[aria-current="page"]{background:#ffffff20;color:#fff!important;border-color:#ffffff25}
.tm-workspace-bar--account .tm-workspace-inner nav a:last-child{color:#f5c66b!important}
.tm-workspace-bar--account a:focus-visible{outline:3px solid #f5c66b;outline-offset:2px}
@media(max-width:980px){.tm-workspace-bar--account .tm-workspace-inner{align-items:flex-start}.tm-workspace-bar--account .tm-workspace-label{flex:1 0 100%}.tm-workspace-bar--account .tm-workspace-inner nav{justify-content:flex-start;flex:1 0 100%}}
@media(max-width:560px){.tm-workspace-bar--account .tm-workspace-inner{width:calc(100% - 24px);padding:11px 0}.tm-workspace-bar--account .tm-workspace-label{font-size:17px}.tm-workspace-bar--account .tm-workspace-inner nav{gap:3px}.tm-workspace-bar--account .tm-workspace-inner nav a{padding:8px 9px;font-size:12px}}
body.tm-login-page{margin:0;background:#f4f7f9}
body.tm-login-page main.admin-login,body.tm-login-page main.portal-login{box-sizing:border-box;width:calc(100% - 32px);max-width:520px;margin:42px auto 60px;padding:0}
body.tm-login-page main .admin-grid{grid-template-columns:1fr}
body.tm-login-page main .admin-card__head,body.tm-login-page main .portal-card__head{padding:22px 24px}
body.tm-login-page main .admin-card__body,body.tm-login-page main .portal-card__body{padding:24px}
body.tm-login-page main h1{font:700 28px/1.2 Arial,sans-serif;margin:0 0 8px}
body.tm-login-page main button[type=submit]{width:100%;min-height:44px;font:700 15px/1.3 Arial,sans-serif}
@media(max-width:980px){
 #tm-site-header .tm-site-inner{padding:10px 0}
 #tm-site-header .tm-site-brand{gap:10px;margin:0;max-width:calc(100% - 54px)}
 #tm-site-header .tm-site-logo{flex-basis:78px;width:78px;height:74px;min-width:78px;max-width:78px;max-height:74px;padding:5px}
 #tm-site-header .tm-site-name{font-size:20px}
 #tm-site-header .tm-site-tagline{font-size:13px;margin-top:4px}
 #tm-site-header .tm-site-toggle{display:flex}
 #tm-site-header .tm-site-nav{display:none}
 #tm-site-header.tm-menu-open .tm-site-nav{display:flex;flex-direction:column;align-items:stretch;padding-top:12px;margin-top:10px;max-height:calc(100dvh - 120px);overflow:auto}
 #tm-site-header .tm-site-nav a{padding:12px 10px}
 #tm-site-header .tm-site-nav .tm-site-quote{margin:5px 0 0;text-align:center}
}
@media(max-width:400px){#tm-site-header .tm-site-inner{width:calc(100% - 24px)}#tm-site-header .tm-site-name{font-size:18px}#tm-site-header .tm-site-tagline{font-size:12px}}
@media print{#tm-site-header,.tm-workspace-bar{display:none!important}}


/* v47: Unified responsive ADMIN-only navigation. Use one clean row on
   desktop and evenly balanced rows at smaller widths. No public header. */
.tm-workspace-bar--admin .tm-workspace-inner{width:calc(100% - 48px);max-width:1580px;min-height:66px;flex-wrap:nowrap;gap:18px;padding:10px 0}
.tm-workspace-bar--admin .tm-workspace-label{flex:0 0 auto;font-size:18px;margin:0}
.tm-workspace-bar--admin .tm-workspace-inner nav{min-width:0;flex:1 1 auto;flex-wrap:nowrap;justify-content:space-between;gap:2px}
.tm-workspace-bar--admin .tm-workspace-inner nav a{padding:10px 6px;font-size:12.5px}
@media(max-width:1300px){
 .tm-workspace-bar--admin .tm-workspace-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;padding:12px 0}
 .tm-workspace-bar--admin .tm-workspace-inner nav{display:grid;width:100%;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px 6px}
 .tm-workspace-bar--admin .tm-workspace-inner nav a{text-align:center;padding:9px 4px;min-width:0}
}
@media(max-width:800px){.tm-workspace-bar--admin .tm-workspace-inner nav{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:470px){
 .tm-workspace-bar--admin .tm-workspace-inner{width:calc(100% - 28px)}
 .tm-workspace-bar--admin .tm-workspace-inner nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
 .tm-workspace-bar--admin .tm-workspace-inner nav a{font-size:13px;padding:11px 6px}
}
