/* Configurable, server-rendered footer. Theme color variables cover light and dark. */
#tni-footer {padding-top:42px;}
#tni-footer .tni-footer-layout {display:grid;grid-template-columns:minmax(210px,1fr) minmax(0,3.4fr);gap:48px;padding-bottom:12px;}
#tni-footer .tni-footer-brand {min-width:0;max-width:290px;}
#tni-footer .tni-footer-brand .tni-wordmark {display:inline-flex;line-height:1;margin-bottom:8px;}
#tni-footer .tni-footer-brand p {font-size:13px;line-height:1.8;color:var(--shell-muted);margin:14px 0;overflow-wrap:anywhere;}
#tni-footer .tni-footer-brand .tni-footer-company {font-size:12px;}
#tni-footer .tni-footer-contact {display:inline-flex;align-items:center;gap:5px;color:var(--shell-accent);font-size:13px;font-weight:600;text-decoration:none;min-height:36px;}
#tni-footer .tni-footer-columns {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;min-width:0;}
#tni-footer .tni-footer-columns[data-columns="1"] {grid-template-columns:1fr;}
#tni-footer .tni-footer-columns[data-columns="2"] {grid-template-columns:repeat(2,minmax(0,1fr));}
#tni-footer .tni-footer-columns[data-columns="3"] {grid-template-columns:repeat(3,minmax(0,1fr));}
#tni-footer .tni-footer-columns[data-columns="5"] {grid-template-columns:repeat(3,minmax(0,1fr));}
/* The homepage has generic nav flex rules; each footer nav must remain a full-width column. */
#tni-footer .tni-footer-column {display:block;min-width:0;width:100%;margin:0;gap:0;text-align:left;}
#tni-footer .tni-footer-column h3,#tni-footer .tni-footer-hours h3 {margin:0 0 15px;font:700 14px/1.5 Arial,Helvetica,sans-serif;letter-spacing:0;color:var(--shell-ink);white-space:normal;word-break:normal;overflow-wrap:break-word;}
#tni-footer .tni-footer-hours h3 {margin:20px 0 6px;}
#tni-footer .tni-footer-hours p {margin:0 0 12px;}
#tni-footer .tni-footer-column ul {display:block;min-width:0;width:100%;list-style:none;margin:0;padding:0;}
#tni-footer .tni-footer-column li {margin:0;padding:0;}
#tni-footer .tni-footer-column a {display:block;padding:7px 0;color:var(--shell-muted);font:400 13px/1.6 Arial,Helvetica,sans-serif;text-decoration:none;white-space:normal;word-break:normal;overflow-wrap:break-word;}
#tni-footer .tni-footer-column a:hover,#tni-footer .tni-footer-contact:hover {color:var(--shell-accent);text-decoration:underline;text-underline-offset:3px;}
#tni-footer .tni-footer-external {font-size:11px;white-space:nowrap;}
#tni-footer .tni-footer-bottom {margin-top:30px;}
@media(min-width:1250px){#tni-footer .tni-footer-columns[data-columns="5"]{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}}
@media(max-width:1050px){#tni-footer .tni-footer-layout{grid-template-columns:minmax(180px,1fr) minmax(0,3fr);gap:30px}#tni-footer .tni-footer-columns,#tni-footer .tni-footer-columns[data-columns="5"]{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(max-width:780px){#tni-footer .tni-footer-layout{grid-template-columns:1fr;gap:30px}#tni-footer .tni-footer-brand{max-width:600px}#tni-footer .tni-footer-columns[data-columns="3"]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){#tni-footer{padding-top:30px}#tni-footer .tni-footer-columns{gap:26px 20px}#tni-footer .tni-footer-column a{min-height:40px;padding:9px 0}#tni-footer .tni-footer-columns[data-columns="1"]{grid-template-columns:1fr}}
