/* Compact, consistently aligned footer for phones and narrow screens. */
@media(max-width:800px){
 .footer{padding:32px 0 24px}
 .footer>.wrap{width:calc(100% - 36px);max-width:620px}
 .footer-cta{padding:0 6px 28px}
 .footer-cta h2{font-size:26px;line-height:1.4;text-align:center;letter-spacing:-.5px}
 .footer-cta .button{display:inline-flex;justify-content:center;max-width:100%;font-size:14px;padding:12px 20px;line-height:1.5;white-space:normal}
 .footer-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;padding-top:26px;border-top:1px solid #ffffff26}
 .footer-columns>div{min-width:0;grid-column:1/-1;text-align:center}
 .footer-columns>div:first-child{padding:0 12px 8px}
 .footer .wordmark{font-size:24px;padding:9px 14px;line-height:1.3;letter-spacing:-1.1px;border-radius:12px}
 .footer-columns>div:first-child>a{display:inline-block}
 .footer-columns p{font-size:12px;line-height:1.9;margin:12px auto 0;color:#d4e6d9;max-width:350px;overflow-wrap:anywhere}
 .footer-columns>div:nth-child(2),.footer-columns>div:nth-child(3){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:18px;border:1px solid #ffffff24;border-radius:18px;background:#ffffff07}
 .footer-columns h3{font-size:16px;line-height:1.5;margin:0 0 10px;text-align:center;grid-column:1/-1;color:#fff}
 .footer .footer-columns>div:nth-child(2)>a,.footer .footer-columns>div:nth-child(3)>a,.footer .footer-columns>div:nth-child(3)>button{display:flex;justify-content:center;align-items:center;min-height:42px;padding:9px 6px;border-radius:9px;background:#ffffff08;font-size:12px;line-height:1.5;text-align:center;color:#e5f1e8;overflow-wrap:anywhere}
 .footer-columns>div:last-child{padding:18px 10px 8px;border-top:1px solid #ffffff24}
 .footer .footer-columns>div:last-child>a{display:block;width:fit-content;max-width:100%;margin:4px auto;padding:6px 8px;text-align:center;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
 .footer-columns>div:last-child>a[href^="tel:"]{font-size:20px;font-weight:700;color:#c7f474}
 .footer-columns>div:last-child>a[href^="https://line"]{margin-top:9px;padding:10px 20px;background:#ffffff10;border:1px solid #ffffff22;border-radius:999px}
 .affiliate{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px;padding-top:22px;border-top:1px solid #ffffff26;text-align:center}
 .affiliate strong{grid-column:1/-1;font-size:14px;padding-bottom:6px}
 .affiliate a{font-size:11px;line-height:1.5;min-height:36px;display:flex;align-items:center;justify-content:center;padding:8px 5px;background:#ffffff08;border-radius:8px}
 .copyright{text-align:center;font-size:10px;line-height:1.8;padding:0;margin:22px auto 0;max-width:290px;color:#b9d4c1}
 .footer{padding-bottom:88px}
 .footer a:focus-visible,.footer button:focus-visible{outline:2px solid #b9f13b;outline-offset:3px}
}
@media(max-width:800px){.footer-cta h2{text-wrap:balance;font-size:24px}.footer .footer-columns>div:nth-child(2)>a,.footer .footer-columns>div:nth-child(3)>a,.footer .footer-columns>div:nth-child(3)>button{font-size:13px;min-height:44px}}
