/* Photo-backed footer with large brand lettering and a deep-blue inset panel. */
#site-footer.hosle-footer { position: relative; padding: clamp(3rem,6vw,6rem) 0 2rem; isolation: isolate; background: linear-gradient(rgba(3,25,48,.52),rgba(3,25,48,.66)),url('../final.png') center / cover no-repeat !important; border: 0 !important; color: #fff !important; backdrop-filter: none !important; }
.hosle-footer-shell { max-width: 1440px; }
.hosle-footer-wordmark { text-align: center; font-family: var(--sans); font-size: clamp(3.5rem,12vw,11rem); font-weight: 600; letter-spacing: -.06em; line-height: .9; color: rgba(255,255,255,.42); white-space: nowrap; }
.hosle-footer-panel { position: relative; margin-top: -1rem; padding: clamp(1.7rem,3.4vw,3.5rem); background: #003e78; }
.hosle-footer-grid { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(0,.85fr) minmax(0,.85fr) minmax(0,1.15fr); gap: clamp(1.5rem,3vw,3rem); }
.hosle-footer-logo { display: flex; align-items: center; gap: .8rem; font-family: var(--sans); font-size: clamp(1.3rem,2vw,2rem); font-weight: 600; letter-spacing: -.04em; color: #fff; }
.hosle-footer-logo img { object-fit: contain; width: 56px; height: 48px; padding: 4px; background: #fff; }
.hosle-footer-brand > p { margin-top: 1.2rem; max-width: 340px; font-size: .85rem; line-height: 1.65; color: #dfedfa; }
.hosle-footer-actions { display: flex; gap: .5rem; margin-top: 2rem; }
.hosle-footer-actions a { display: grid; place-items: center; width: 40px; height: 40px; background: #007bc2; color: #fff; font-size: 1.3rem; }
.hosle-footer-links { display: flex; flex-direction: column; gap: .85rem; min-width: 0; }
.hosle-footer-links h3 { margin: .4rem 0 1rem; font-size: .85rem; font-family: var(--sans); font-weight: 600; text-transform: uppercase; color: #fff; }
.hosle-footer-links > a, .hosle-footer-links > p { color: #dfedfa; font-size: .8rem; line-height: 1.6; margin: 0; overflow-wrap: anywhere; }
.hosle-footer-links > a:hover { color: #fff; text-decoration: underline; }
.hosle-footer-links .hosle-footer-emergency { display: flex; flex-direction: column; align-self: flex-start; padding: .65rem .9rem; gap: .15rem; background: #dc2626; color: #fff; }
.hosle-footer-emergency span { font-size: .7rem; }
.hosle-footer-emergency strong { font-size: 1.15rem; }
.hosle-footer-bottom { display: flex; align-items: center; flex-wrap: wrap; gap: 1.1rem; border-top: 1px solid rgba(255,255,255,.2); margin-top: 3rem; padding-top: 1.7rem; }
.hosle-footer-bottom p, .hosle-footer-bottom > a { color: #dfedfa; font-size: .75rem; margin: 0; }
.hosle-footer-bottom > a { margin-left: auto; }
.hosle-footer-bottom small { color: #bacfe4; font-size: .65rem; }
.hosle-footer-bottom small a { color: #fff; }
@media (max-width: 980px) { .hosle-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2.5rem; } }
@media (max-width: 560px) { .hosle-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem 1rem; } .hosle-footer-brand, .hosle-footer-contact { grid-column: 1 / -1; } .hosle-footer-bottom { align-items: flex-start; flex-direction: column; } .hosle-footer-bottom > a { margin-left: 0; } .hosle-footer-wordmark { font-size: 12vw; } .hosle-footer-panel { margin-top: -.25rem; } }
