/* Local asset and footer repairs; loaded after the legacy theme styles. */
.fa { font-family: FontAwesome !important; }
[class^="ti-"], [class*=" ti-"] { font-family: themify !important; }
.footer, .copyright { font-family: 'proxima_novaregular', Arial, sans-serif; }
.footer::before { display: none; }
.footer .footer-info {
    display: grid;
    grid-template-columns: 1.15fr .85fr 1.15fr 1.45fr;
    gap: 32px;
    padding: 48px 0;
    margin: 0;
    position: relative;
}
.footer .footer-info > [class*="col-"] {
    float: none;
    width: auto;
    min-width: 0;
    min-height: 0;
    padding: 0;
    margin: 0;
}
.footer .footer-info > :first-child { position: relative; padding: 0 20px; }
.footer .footer-info > :first-child::before {
    content: '';
    position: absolute;
    inset: -48px -16px -48px -100vw;
    background: #fdd750;
    transform: skewX(-8deg);
    pointer-events: none;
}
.footer .footer-info > :first-child > * { position: relative; }
.footer h4 {
    font-family: 'proxima_novabold', Arial, sans-serif;
    font-size: 20px;
    line-height: 1.3;
    margin: 0 0 22px;
}
.footer address, .footer .link-small a {
    display: block;
    padding-left: 28px;
    color: #493a0a;
    font-size: 14px;
    line-height: 1.6;
    font-style: normal;
    overflow-wrap: anywhere;
}
.footer .ti { line-height: 1.6; }
.footer .icons-hover-black {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 24px 0 0;
}
.footer .icons-hover-black a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    background: #1d1d1d;
    color: #fff;
    border-radius: 3px;
}
.footer .icons-hover-black a:hover, .footer .icons-hover-black a:focus-visible { background: #493a0a; }
.footer .icons-hover-black i {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    line-height: 1;
    font-size: 16px;
    background: transparent;
}
.footer .blog-link li { margin-bottom: 13px; }
.footer .link a { line-height: 1.5; overflow-wrap: anywhere; }
.footer .post-type-post.media { display: flex; align-items: flex-start; gap: 14px; margin: 0 0 20px; }
.footer .entry-thumbnail { float: none; flex: 0 0 64px; max-width: 64px; margin: 0 !important; }
.footer .entry-thumbnail img { width: 64px; height: 46px; object-fit: cover; }
.footer .post-content.media-body { display: block; width: auto; min-width: 0; }
.footer .footer-info p { font-family: inherit; font-size: 14px; line-height: 1.6; font-weight: normal; }
.footer .post-meta { font-size: 12px; margin-top: 5px; line-height: 1.5; color: #ccc; }
.footer .ft-logo img { display: block; width: 220px; max-width: 100%; height: auto; }
.footer .welcomeFooter-area p { margin-top: 18px; }
.copyright { padding: 18px 15px; font-size: 14px; line-height: 1.5; }
@media (max-width: 1199px) {
    .footer .footer-info { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }
    .footer .footer-info > :first-child { padding: 24px; background: #fdd750; border-radius: 4px; }
    .footer .footer-info > :first-child::before { display: none; }
}
@media (max-width: 600px) {
    .footer .footer-info { grid-template-columns: minmax(0, 1fr); gap: 30px; padding: 32px 0; }
    .footer h4 { margin-bottom: 18px; }
    .footer .ft-logo img { width: 200px; }
    .totop { right: 12px; bottom: 16px; }
}
.footer .footer-info::before, .footer .footer-info::after { display: none; content: none; }
/* The optional gallery strip is intentionally hidden on public pages. */
.hidegal { display: none !important; }
.footer .footer-info > :first-child::before { right: 12px; }
/* Keep icon font rendering independent of legacy theme typography. */

/* Keep the contact email on one line within the footer column. */
.footer .link-small a[href^="mailto:"] {
    white-space: nowrap;
    overflow-wrap: normal;
    font-size: 13px;
    padding-left: 24px;
    letter-spacing: -0.1px;
}
