/* Internal pages only: preserve the home page while sharing its navigation and footer language. */
.tc-internal-shell #header { min-height: 88px; }
.tc-internal-shell #header .navbar:not(.fixedmenu) { position: relative; min-height: 88px; }
.tc-internal-shell #header .navbar .tc-nav-project { border: 1px solid currentColor; border-radius: 6px; padding-inline: .8rem; }

/* The service content already sits inside the layout's container. */
.tc-internal-shell #tc-main-content .tc-service-page > .container { max-width: none !important; padding-inline: 0; }

.tc-internal-shell #site-footer { padding-top: clamp(32px, 4vw, 52px); background: #071b30; }
.tc-internal-shell #site-footer .footer_panel { padding-bottom: 24px; margin-bottom: 0; }
.tc-internal-shell #site-footer .footer_logo { display: inline-block; width: 180px; margin-bottom: 18px; }
.tc-internal-shell #site-footer p { margin-bottom: 14px; font-size: 14px; line-height: 1.65; }
.tc-internal-shell #site-footer h3 { margin-bottom: 14px; font-size: 18px; font-weight: 600; }
.tc-internal-shell #site-footer ul.links { margin-bottom: 0; }
.tc-internal-shell #site-footer ul.links li a { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 0; font-size: 14px; line-height: 1.4; }
.tc-internal-shell #site-footer ul.links li a::before { display: none; }
.tc-internal-shell #site-footer a { color: #fff; }
.tc-internal-shell #site-footer a:hover { color: #8de3b8; }
.tc-internal-shell #site-footer .tc-footer-contact { display: flex; flex-wrap: wrap; gap: 0 24px; margin-bottom: 12px; }
.tc-internal-shell #site-footer .tc-footer-contact p { margin: 0; min-width: 0; }
.tc-internal-shell #site-footer .tc-footer-contact a { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; overflow-wrap: anywhere; }
.tc-internal-shell .tc-social-icon { display: inline-block; flex: 0 0 22px; vertical-align: middle; }
.tc-internal-shell ul.tc-social-links { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; padding: 0; margin: 0; }
.tc-internal-shell ul.tc-social-links li { display: block; }
.tc-internal-shell ul.tc-social-links li a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-width: 44px; min-height: 44px; margin: 0; border: 1px solid #789b94; border-radius: 50%; background: #163b48; color: #fff; }
.tc-internal-shell ul.tc-social-links li a:hover,
.tc-internal-shell ul.tc-social-links li a:focus { color: #071b30; background: #8de3b8; border-color: #8de3b8; }
.tc-internal-shell #site-footer a:focus-visible,
.tc-internal-shell ul.tc-social-links li a:focus-visible { outline: 3px solid #8de3b8 !important; outline-offset: 3px; box-shadow: none !important; }
.tc-internal-shell #site-footer .sub-footer { border-top: 1px solid #345064; padding: 8px 0 20px; text-align: center; }
.tc-internal-shell #site-footer .tc-public-links { margin: 8px 0; gap: 4px 20px; }
.tc-internal-shell #site-footer .tc-public-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
.tc-internal-shell #site-footer .sub-footer span { font-size: 13px; line-height: 1.6; }

@media (max-width: 575px) {
    .tc-internal-shell #site-footer .footer_panel { padding-bottom: 20px; }
    .tc-internal-shell #site-footer .footer_logo { width: 164px; }
    .tc-internal-shell #site-footer ul.links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
}
