/* Shared reference footer. Specificity also overrides the imported page-level CSS. */
#cia-footer.vsce-site-footer {
 --vsce-footer-bg: #0a4025;
 box-sizing: border-box;
 width: 100vw;
 max-width: none;
 margin: 0 calc(50% - 50vw) !important;
 padding: 0 !important;
 background: var(--vsce-footer-bg);
 color: rgba(255,255,255,.72);
 font-family: 'DM Sans', sans-serif;
 font-size: 16px;
 font-weight: 300;
 line-height: 1.6;
 letter-spacing: -.1px;
 clear: both;
 text-align: left;
}
#cia-footer.vsce-site-footer *,
#cia-footer.vsce-site-footer *::before,
#cia-footer.vsce-site-footer *::after { box-sizing: border-box; }
#cia-footer.vsce-site-footer .footer-main { background: var(--vsce-footer-bg); padding: 60px 32px 48px; }
#cia-footer.vsce-site-footer .footer-inner { display: grid; grid-template-columns: 1.8fr 1fr 1fr; gap: 48px; align-items: start; max-width: 1040px; margin: 0 auto; padding: 0; }
#cia-footer.vsce-site-footer .footer-brand img { display: block; width: auto; height: 44px; margin: 0 0 14px; }
#cia-footer.vsce-site-footer .site-name { display: block; margin: 0 0 12px; font-family: 'Lora', serif; font-size: 1.2rem; font-weight: 700; line-height: 1.6; color: #fff; }
#cia-footer.vsce-site-footer .footer-brand p { max-width: 260px; margin: 0; font-size: .88rem; line-height: 1.75; color: rgba(255,255,255,.72); }
#cia-footer.vsce-site-footer .footer-col h4 { margin: 0 0 18px; font-family: inherit; font-size: 10px; font-weight: 600; line-height: 1.6; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,.72); }
#cia-footer.vsce-site-footer .footer-col ul { list-style: none; padding: 0; margin: 0; }
#cia-footer.vsce-site-footer .footer-col li { padding: 0; margin: 0 0 10px; }
#cia-footer.vsce-site-footer .footer-col a { font-family: inherit; font-size: .9rem; line-height: 1.6; color: rgba(255,255,255,.72); text-decoration: none; }
#cia-footer.vsce-site-footer .footer-divider { background: var(--vsce-footer-bg); padding: 0 32px; }
#cia-footer.vsce-site-footer .footer-divider-inner { max-width: 1040px; margin: 0 auto; border: 0; border-top: 1px solid rgba(255,255,255,.08); }
#cia-footer.vsce-site-footer .footer-payments { background: var(--vsce-footer-bg); padding: 32px; }
#cia-footer.vsce-site-footer .footer-payments-inner { max-width: 1040px; margin: 0 auto; }
#cia-footer.vsce-site-footer .payments-title { margin: 0 0 18px; font-size: 10px; line-height: 1.6; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,.35); }
#cia-footer.vsce-site-footer .payments-icons { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: flex-start; }
#cia-footer.vsce-site-footer .payments-icons img { display: block; width: 58px; height: 28px; margin: 0; padding: 0; object-fit: contain; background: rgba(255,255,255,.03); border: 0; border-radius: 6px; }
#cia-footer.vsce-site-footer .footer-bottom { background: var(--vsce-footer-bg); padding: 20px 32px 32px; }
#cia-footer.vsce-site-footer .footer-bottom-inner { max-width: 1040px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
#cia-footer.vsce-site-footer .footer-bottom p,
#cia-footer.vsce-site-footer .footer-bottom a { margin: 0; font-size: .82rem; line-height: 1.6; color: rgba(255,255,255,.68); text-decoration: none; }
#cia-footer.vsce-site-footer .footer-col a:hover,
#cia-footer.vsce-site-footer .footer-bottom a:hover { color: #fff !important; text-decoration: underline; text-underline-offset: 4px; }
#cia-footer.vsce-site-footer a:focus-visible { outline: 2px solid #8ee3cb; outline-offset: 4px; }
/* The language plugin inserts this row before the divider; retain its compact dropdown. */
#cia-footer.vsce-site-footer .vitalix-footer-languages { width: auto !important; margin: 0 !important; padding: 0 32px 28px; background: var(--vsce-footer-bg); }
#cia-footer.vsce-site-footer .vitalix-language-switcher { max-width: 1040px; margin: 0 auto; }
@media (max-width: 768px) {
 #cia-footer.vsce-site-footer .footer-main { padding: 48px 20px 40px; }
 #cia-footer.vsce-site-footer .footer-inner { grid-template-columns: 1fr; gap: 36px; }
 #cia-footer.vsce-site-footer .footer-brand p { max-width: 100%; }
 #cia-footer.vsce-site-footer .footer-divider { padding: 0 20px; }
 #cia-footer.vsce-site-footer .vitalix-footer-languages { padding: 0 20px 24px; }
 #cia-footer.vsce-site-footer .footer-payments { padding: 32px 20px; }
 #cia-footer.vsce-site-footer .payments-icons { display: grid; grid-template-columns: repeat(3, 58px); justify-content: center; }
 #cia-footer.vsce-site-footer .payments-title { text-align: center; }
 #cia-footer.vsce-site-footer .footer-bottom { padding: 18px 20px 28px; }
 #cia-footer.vsce-site-footer .footer-bottom-inner { flex-direction: column; align-items: flex-start; gap: 6px; }
 #cia-footer.vsce-site-footer .footer-col a,
 #cia-footer.vsce-site-footer .footer-bottom a { display: inline-flex; align-items: center; min-height: 44px; }
 #cia-footer.vsce-site-footer .footer-col li { margin-bottom: 2px; }
}
