.footer.site-footer{display:block;margin-top:48px;padding-top:48px;padding-bottom:32px;background:#fff;color:var(--muted);font-size:15px;border-top:1px solid var(--line)}
.site-footer .footer-main{display:grid;grid-template-columns:.9fr 1fr 1.25fr;gap:40px;align-items:stretch}
.site-footer .footer-main>div{min-width:0}
.site-footer .footer-main>div+div{border-left:1px solid var(--line);padding-left:40px}
.site-footer .footer-main-with-contact{grid-template-columns:.85fr 1fr 1.15fr 1.1fr;gap:28px}
.site-footer .footer-main-with-contact>div+div{padding-left:28px}
.site-footer .footer-contact-column .footer-contact{margin:0;padding:0;border:0}
.site-footer .footer-contact-column h3{font-size:18px;line-height:1.4;letter-spacing:-.3px;margin:0 0 16px}
.site-footer .footer-contact-column .footer-contact-items{font-size:14px}
.site-footer .footer-contact-column .footer-contact-items>a,.site-footer .footer-contact-column .footer-contact-address{align-items:flex-start;padding:10px 0}
.site-footer .footer-contact-column .footer-contact-items svg{margin-top:2px}
.site-footer .footer-brand img{display:block;width:180px;height:86px;max-width:100%;object-fit:contain;object-position:left center}
.site-footer .footer-brand p{max-width:250px;margin:16px 0 0;font-size:17px;line-height:1.6}
.site-footer h2{font-size:18px;line-height:1.4;letter-spacing:-.3px;color:var(--ink);margin:0 0 16px}
.site-footer .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.site-footer .footer-links a{display:block;padding:7px 0;line-height:1.5;overflow-wrap:anywhere}
.site-footer .footer-information-mobile{display:none}
.site-footer .footer-plans{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;margin-bottom:16px}
.site-footer .footer-plans>svg{display:none}
.site-footer .footer-app-actions{display:flex;flex-wrap:wrap;gap:8px}
.site-footer .footer-action{display:inline-flex;flex:1 1 140px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:10px 14px;border:1px solid var(--green);border-radius:7px;font-size:15px;font-weight:650;line-height:1.3;text-align:center;text-decoration:none}
.site-footer .footer-action svg{width:22px;height:22px}
.site-footer .footer-install{background:var(--green);color:#fff}
.site-footer .footer-install:hover{background:var(--deep)}
.site-footer .footer-share{background:#fff;color:var(--green)}
.site-footer .footer-share:hover{background:var(--mint)}
.site-footer .footer-admin{display:inline-block;margin-top:14px;padding:6px 0;font-size:13px}
.site-footer .footer-bottom{display:flex;justify-content:space-between;gap:12px 24px;margin-top:36px;padding-top:22px;border-top:1px solid var(--line)}
.site-footer .footer-bottom p{font-size:14px;line-height:1.6;margin:0}
/* Compact desktop rhythm; mobile keeps its existing touch targets. */
@media(min-width:701px){
  .footer.site-footer{margin-top:32px;padding-top:32px;padding-bottom:24px}
  .site-footer .footer-brand p{margin-top:10px;font-size:15px;line-height:1.45}
  .site-footer h2,.site-footer .footer-contact-column h3{line-height:1.3;margin-bottom:10px}
  .site-footer .footer-links{gap:2px}
  .site-footer .footer-links a{padding:4px 0;line-height:1.4}
  .site-footer .footer-contact-column .footer-contact-items{line-height:1.4}
  .site-footer .footer-contact-column .footer-contact-items>a,.site-footer .footer-contact-column .footer-contact-address{min-height:32px;padding:5px 0}
  .site-footer .footer-plans{min-height:30px;margin-bottom:10px;line-height:1.4}
  .site-footer .footer-action{min-height:42px;padding:8px 12px;gap:8px}
  .site-footer .footer-admin{margin-top:8px;padding:4px 0}
  .site-footer .footer-bottom{margin-top:24px;padding-top:16px}
  .site-footer .footer-bottom p{line-height:1.4}
}
@media(min-width:701px) and (max-width:1050px){
  .site-footer .footer-main{gap:24px}
  .site-footer .footer-main>div+div{padding-left:24px}
  .site-footer .footer-main-with-contact{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}
  .site-footer .footer-main-with-contact>.footer-contact-column{border-left:0;padding-left:0}
}
@media(max-width:700px){
  .footer.site-footer{display:block;margin-top:28px;padding:24px 20px 18px}
  .site-footer .footer-main{display:block}
  .site-footer .footer-main>div+div{border-left:0;padding-left:0}
  .site-footer .footer-brand{padding-bottom:20px;text-align:center}
  .site-footer .footer-brand img{width:120px;height:58px;margin-inline:auto;object-position:center}
  .site-footer .footer-brand p{max-width:none;margin-top:8px;font-size:14px;line-height:1.5}
  .site-footer .footer-information-desktop{display:none}
  .site-footer .footer-contact-column{display:none}
  .site-footer .footer-information-mobile{display:block;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .site-footer .footer-information-mobile summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;list-style:none;cursor:pointer;font-size:16px;font-weight:650;color:var(--ink)}
  .site-footer .footer-information-mobile summary::-webkit-details-marker{display:none}
  .site-footer .footer-information-mobile summary>svg{width:20px;height:20px;color:var(--green);transform:rotate(-90deg)}
  .site-footer .footer-information-mobile[open] summary>svg{transform:none}
  .site-footer .footer-links{display:block}
  .site-footer .footer-links a{display:flex;align-items:center;min-height:44px;padding:10px 0;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
  .site-footer .footer-community>h2{display:none}
  .site-footer .footer-plans{min-height:48px;margin:0 0 12px;border-bottom:1px solid var(--line);color:var(--ink);font-size:16px;font-weight:650}
  .site-footer .footer-plans>svg{display:block;width:20px;height:20px;color:var(--green)}
  .site-footer .footer-app-actions{display:flex;flex-wrap:nowrap;gap:8px}
  .site-footer .footer-action{flex:1 1 0;min-width:0;min-height:46px;padding:10px 8px;font-size:14px;gap:8px}
  .site-footer .footer-action svg{width:20px;height:20px}
  .site-footer .footer-bottom{flex-direction:column;align-items:center;gap:2px;margin-top:20px;padding-top:12px;text-align:center}
  .site-footer .footer-bottom p{font-size:12px}
}
