/* Site footer (all pages). Scoped to .pl-footer so older footer rules in site/booking-dialog CSS never apply. */
body footer.pl-footer{position:relative;overflow:hidden;background:#071b43;color:#dfe9f8;padding:56px 0 28px;border:0;font-size:15px;line-height:1.6}
body footer.pl-footer:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(900px 420px at 85% -10%,#1d4f9c55,transparent 70%),radial-gradient(700px 380px at -5% 110%,#0f3a7a66,transparent 70%)}
footer.pl-footer .wrap{position:relative}
footer.pl-footer a{display:inline;margin:0;color:inherit;text-decoration:none}
footer.pl-footer h2{font:700 12px/1.4 Arial,sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:#8fb2e6;margin:0 0 18px}
footer.pl-footer ul{list-style:none;margin:0;padding:0}
/* The site-wide header nav style must not leak into footer link groups. */
footer.pl-footer nav{display:block;min-height:0;gap:0;align-items:initial}

/* Call-to-action card */
.pl-footer-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:34px 38px;margin:0 0 56px;border-radius:24px;background:linear-gradient(135deg,#1a55b8,#0f3479);box-shadow:0 20px 50px -20px #000a,inset 0 1px 0 #ffffff25}
.pl-footer-cta h2.pl-footer-cta-title{font:400 clamp(24px,2.6vw,32px)/1.2 Georgia,serif;letter-spacing:-.5px;text-transform:none;color:#fff;margin:0 0 8px}
.pl-footer-cta p{margin:0;max-width:560px;color:#d6e4fb;font-size:15px}
.pl-footer-cta-actions{display:flex;gap:12px;flex-wrap:wrap;flex-shrink:0}
footer.pl-footer .pl-btn{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:40px;font-weight:700;font-size:15px;white-space:nowrap;transition:transform .2s,box-shadow .2s,background .2s}
footer.pl-footer .pl-btn img,footer.pl-footer .pl-btn svg{width:22px;height:22px;flex:0 0 22px}
footer.pl-footer .pl-btn-wa{background:#fff;color:#0c2d62;box-shadow:0 8px 22px #0003}
footer.pl-footer .pl-btn-ghost{border:1px solid #ffffff70;color:#fff;background:#ffffff12}
footer.pl-footer .pl-btn:hover{transform:translateY(-2px)}
footer.pl-footer .pl-btn-ghost:hover{background:#ffffff22}

/* Main columns */
.pl-footer-grid{display:grid;grid-template-columns:1.1fr .75fr .95fr 1.35fr .65fr;gap:30px}
footer.pl-footer .pl-footer-logo{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.pl-footer-logo img{width:84px;height:84px;border-radius:50%;flex:0 0 84px;box-shadow:0 10px 26px #0006,0 0 0 4px #ffffff14}
.pl-footer-logo strong{display:block;font:400 25px/1.1 Georgia,serif;color:#fff}
footer.pl-footer .pl-footer-logo small{display:block;border:0;padding:0;margin-top:7px;font-size:11px;letter-spacing:2.4px;color:#9fbde9}
.pl-footer-brand p{margin:0;max-width:330px;color:#b9cbe6;font-size:14.5px}
.pl-footer-links li{margin:0 0 11px}
footer.pl-footer .pl-footer-links a{color:#e8f0fc;font-size:14.5px;transition:color .2s,padding .2s}
footer.pl-footer .pl-footer-links a:hover{color:#fff;padding-left:4px}
.pl-contact li{display:flex;align-items:flex-start;gap:12px;margin:0 0 14px;font-size:14.5px;color:#e8f0fc}
.pl-contact .pl-ico{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:12px;background:linear-gradient(150deg,#ffffff1f,#ffffff08);border:1px solid #ffffff2e;box-shadow:inset 0 1px 0 #ffffff30}
.pl-contact .pl-ico svg{width:22px;height:22px}
.pl-contact .pl-ico img{width:20px;height:20px}
.pl-contact li>a,.pl-contact li>span:last-child{padding-top:6px;overflow-wrap:anywhere}
footer.pl-footer .pl-contact a:hover,footer.pl-footer .pl-footer-bottom a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.pl-social{display:flex;flex-direction:column;gap:10px}
footer.pl-footer .pl-social a{display:inline-flex;align-items:center;gap:11px;width:max-content;padding:7px 16px 7px 7px;border-radius:40px;background:#ffffff0d;border:1px solid #ffffff1f;font-size:14px;color:#fff;transition:background .2s,transform .2s}
.pl-social a span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff}
.pl-social img{width:20px;height:20px}
footer.pl-footer .pl-social a:hover{background:#ffffff1f;transform:translateY(-2px)}

/* Bottom line */
.pl-footer .translation-note{margin:34px 0 0;font-size:12px;color:#9fb6d8}
.pl-footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:40px;padding-top:22px;border-top:1px solid #ffffff1a;font-size:13px;color:#9fb6d8}
.pl-footer .translation-note+.pl-footer-bottom{margin-top:16px}
footer.pl-footer .pl-footer-bottom nav{display:flex;gap:22px;flex-wrap:wrap}
footer.pl-footer .pl-footer-bottom a{color:#c9d8ef}

@media(max-width:1240px) and (min-width:1001px){.pl-footer-grid{grid-template-columns:.8fr 1fr 1.3fr .7fr;gap:36px 28px}.pl-footer-brand{grid-column:1/-1}}
@media(max-width:1000px){.pl-footer-grid{grid-template-columns:1fr 1fr;gap:36px 28px}.pl-footer-brand{grid-column:1/-1}.pl-footer-cta{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){
 body footer.pl-footer{padding:36px 0 96px}
 .pl-footer-cta{padding:28px 22px;margin-bottom:40px;border-radius:20px}
 .pl-footer-cta-actions{width:100%}
 footer.pl-footer .pl-btn{flex:1 1 100%;justify-content:center}
 .pl-footer-grid{gap:34px 18px}
 .pl-footer-grid>div:nth-child(4){grid-column:1/-1;grid-row:2}
 .pl-footer-bottom{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){footer.pl-footer *{transition:none!important}}
footer.pl-footer .pl-footer-logo:hover,footer.pl-footer .pl-footer-logo:hover *{text-decoration:none}
/* Letter-spacing splits Devanagari and CJK characters apart, so drop it in those languages. */
:is(:lang(ne),:lang(hi),:lang(zh-CN),:lang(ja),:lang(ko)) footer.pl-footer h2,:is(:lang(ne),:lang(hi),:lang(zh-CN),:lang(ja),:lang(ko)) footer.pl-footer .pl-footer-logo small{letter-spacing:0;font-size:13px}
