/* NiyamWale footer and global floating contact controls */
/* Premium responsive footer */
.premium-footer{padding:58px 0 26px;background:#f4f7f9;color:#d7e3ef}.premium-footer .footer-panel{overflow:hidden;border:1px solid rgba(20,196,201,.22);border-radius:8px;background:#061c3d;box-shadow:0 24px 55px rgba(6,28,61,.2)}.footer-help{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:24px 38px;border-bottom:1px solid rgba(61,194,201,.22)}.footer-help__lead{display:flex;align-items:center;gap:18px;min-width:0}.footer-help__icon{width:58px;height:58px;display:grid;place-items:center;flex:0 0 58px;border-radius:50%;background:#073c5c;color:#10ced0;font-size:25px;box-shadow:inset 0 0 0 8px rgba(9,198,201,.06)}.footer-help h2{margin:0;color:#fff;font-size:22px;line-height:1.3}.footer-help h2 em{color:#10c5c8;font-style:normal}.footer-help p{margin:5px 0 0;color:#aebed0;font-size:13px}.footer-help__actions{display:flex;align-items:center;gap:14px;padding-left:34px;border-left:1px solid rgba(255,255,255,.16)}.footer-help__actions a{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 20px;border:1px solid #0fc5c8;border-radius:6px;color:#fff;font-size:14px;font-weight:700;white-space:nowrap;transition:transform .24s ease,background-color .24s ease,box-shadow .24s ease}.footer-help__actions a i{font-size:20px}.footer-help__actions .footer-call{background:#0aabb3;box-shadow:0 10px 22px rgba(10,171,179,.2)}.footer-help__actions a:hover{transform:translateY(-3px);background:#0fc5c8;box-shadow:0 12px 25px rgba(10,190,195,.26)}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.18fr;gap:0;padding:48px 38px 38px}.footer-main>div{min-width:0;padding:0 32px;border-left:1px solid rgba(255,255,255,.14)}.footer-main>div:first-child{padding-left:0;border-left:0}.footer-main>div:last-child{padding-right:0}.footer-logo{display:block;width:min(270px,100%)}.footer-logo img{width:100%;filter:brightness(0) invert(1);opacity:.96}.footer-about>p{max-width:330px;margin:24px 0 17px;color:#b8c6d6;font-size:13px;line-height:1.85}.footer-accent,.footer-title-line{display:block;width:40px;height:2px;background:#10c5c8}.footer-socials{display:flex;gap:14px;margin-top:20px}.footer-socials a{width:41px;height:41px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;font-size:16px;transition:transform .23s ease,border-color .23s ease,background-color .23s ease}.footer-socials a:hover{transform:translateY(-3px);border-color:#10c5c8;background:#0b405e}.footer-main h3{margin:0;color:#11c9cb;font-size:14px;text-transform:uppercase}.footer-title-line{margin:11px 0 20px}.footer-column nav{display:grid;gap:0}.footer-column a{position:relative;display:block;padding:7px 0 7px 16px;color:#c7d3df;font-size:13px;line-height:1.45;transition:color .22s ease,transform .22s ease}.footer-column a::before{content:"\203A";position:absolute;left:0;color:#11c9cb;font-size:20px;line-height:17px}.footer-column a:hover{transform:translateX(4px);color:#fff}.premium-footer .footer-contact-list{display:grid;gap:15px}.premium-footer .footer-contact-list>a,.premium-footer .footer-contact-list>p{display:flex;align-items:center;gap:12px;margin:0;color:#c7d3df;font-size:13px;line-height:1.55}.footer-contact-list i{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;border-radius:7px;background:#073c5c;color:#fff;font-size:16px}.premium-footer .footer-contact-list a:hover{color:#10c5c8}.premium-footer .footer-bottom{min-height:64px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:14px 32px;border-top:1px solid rgba(16,197,200,.55);color:#99aabd;font-size:13px}.premium-footer .footer-bottom p{margin:0}.premium-footer .footer-bottom nav{display:flex;align-items:center;justify-content:center}.premium-footer .footer-bottom nav a{padding:0 16px;border-left:1px solid rgba(255,255,255,.24);color:#b8c6d6}.premium-footer .footer-bottom nav a:first-child{border-left:0}.premium-footer .footer-bottom nav a:hover{color:#10c5c8}.premium-footer .footer-bottom>span{justify-self:end;color:#b8c6d6}.premium-footer .footer-bottom>span i{margin-right:7px;color:#10c5c8}@media(max-width:1050px){.footer-help{align-items:flex-start;flex-direction:column}.footer-help__actions{width:100%;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.13);border-left:0}.footer-main{grid-template-columns:repeat(2,1fr);row-gap:38px}.footer-main>div:nth-child(3){padding-left:0;border-left:0}.premium-footer .footer-bottom{grid-template-columns:1fr;text-align:center}.premium-footer .footer-bottom nav{flex-wrap:wrap}.premium-footer .footer-bottom>span{justify-self:center}}@media(max-width:650px){.premium-footer{padding:34px 0 16px}.premium-footer .footer-panel{width:calc(100% - 20px)}.footer-help{padding:24px 20px}.footer-help__lead{align-items:flex-start}.footer-help__icon{width:50px;height:50px;flex-basis:50px}.footer-help h2{font-size:19px}.footer-help__actions{display:grid}.footer-help__actions a{width:100%;min-height:46px}.footer-main{grid-template-columns:1fr;padding:35px 20px 28px}.footer-main>div,.footer-main>div:nth-child(3){padding:28px 0 0;margin-top:28px;border-top:1px solid rgba(255,255,255,.13);border-left:0}.footer-main>div:first-child{padding-top:0;margin-top:0;border-top:0}.footer-logo{width:240px}.footer-about>p{max-width:none}.premium-footer .footer-bottom{padding:22px 16px;line-height:1.6}.premium-footer .footer-bottom nav{gap:8px}.premium-footer .footer-bottom nav a{padding:0 9px}.floating-whatsapp{width:50px;height:50px;font-size:24px}}
/* Premium floating actions */
.floating-actions{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:12px;pointer-events:none}
.floating-actions>*{pointer-events:auto}
.floating-actions .floating-whatsapp{position:relative;right:auto;bottom:auto;width:auto;height:58px;display:flex;align-items:center;gap:11px;padding:6px 15px 6px 6px;border:1px solid rgba(255,255,255,.72);border-radius:30px;background:linear-gradient(135deg,#0da955,#20c975);color:#fff;box-shadow:0 14px 34px rgba(12,130,70,.3),0 4px 12px rgba(7,43,84,.12);font-size:inherit;isolation:isolate;transition:transform .28s ease,box-shadow .28s ease,filter .28s ease}
.floating-actions .floating-whatsapp::before,.floating-actions .floating-whatsapp::after{content:"";position:absolute;inset:0;border:2px solid rgba(32,201,117,.52);border-radius:inherit;z-index:-1;animation:nw-whatsapp-ring 2.8s ease-out infinite}
.floating-actions .floating-whatsapp::after{animation-delay:1.4s}
.floating-whatsapp__icon{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:50%;background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);font-size:25px;animation:nw-whatsapp-breathe 2.4s ease-in-out infinite}
.floating-whatsapp__label{display:grid;gap:1px;white-space:nowrap}.floating-whatsapp__label strong{font-size:13px;line-height:1.2}.floating-whatsapp__label small{font-size:13px;line-height:1.2;color:rgba(255,255,255,.88)}
.floating-actions .floating-whatsapp:hover{transform:translateY(-4px);filter:saturate(1.08);box-shadow:0 20px 42px rgba(12,130,70,.38),0 6px 16px rgba(7,43,84,.14)}.floating-actions .floating-whatsapp:hover .floating-whatsapp__icon{transform:rotate(-7deg) scale(1.05)}
.back-to-top{width:50px;height:50px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:#082d61;color:#fff;box-shadow:0 12px 28px rgba(7,43,84,.24);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(18px) scale(.84);transition:opacity .28s ease,visibility .28s ease,transform .28s ease,background-color .22s ease}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.back-to-top:hover{transform:translateY(-3px) scale(1.04);background:#0a9fa8}.back-to-top i{font-size:16px;animation:nw-top-arrow 1.7s ease-in-out infinite}.back-to-top span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@keyframes nw-whatsapp-ring{0%{opacity:.62;transform:scale(.94)}72%,100%{opacity:0;transform:scale(1.28)}}@keyframes nw-whatsapp-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}@keyframes nw-top-arrow{0%,100%{transform:translateY(2px)}50%{transform:translateY(-3px)}}
@media(max-width:650px){.floating-actions{right:12px;bottom:12px;gap:9px}.floating-actions .floating-whatsapp{width:54px;height:54px;padding:4px;border-radius:50%}.floating-whatsapp__icon{width:44px;height:44px;flex-basis:44px}.floating-whatsapp__label{position:absolute;right:calc(100% + 10px);padding:8px 11px;border-radius:5px;background:#073766;box-shadow:0 8px 22px rgba(7,43,84,.2);opacity:0;visibility:hidden;transform:translateX(6px);transition:.22s}.floating-actions .floating-whatsapp:hover .floating-whatsapp__label,.floating-actions .floating-whatsapp:focus-visible .floating-whatsapp__label{opacity:1;visibility:visible;transform:translateX(0)}.back-to-top{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.floating-actions *,.floating-actions *::before,.floating-actions *::after{animation:none!important;scroll-behavior:auto!important}.floating-actions .floating-whatsapp,.back-to-top{transition-duration:.01ms}}
/* Stronger mobile WhatsApp visibility over light and dark sections */
@media(max-width:650px){
.floating-actions .floating-whatsapp{overflow:visible;border:3px solid #fff;background:#10b965;box-shadow:0 0 0 1px rgba(5,38,82,.18),0 12px 28px rgba(4,30,67,.38)}
.floating-actions .floating-whatsapp::before{inset:-5px;border:3px solid rgba(74,238,209,.9);animation:nw-mobile-wave 2.2s cubic-bezier(.2,.7,.3,1) infinite}
.floating-actions .floating-whatsapp::after{inset:-5px;border:2px solid rgba(255,255,255,.95);box-shadow:0 0 0 1px rgba(7,43,84,.2);animation:nw-mobile-wave 2.2s cubic-bezier(.2,.7,.3,1) 1.1s infinite}
.floating-whatsapp__icon{background:transparent;box-shadow:none;font-size:27px;animation:nw-mobile-icon 1.9s ease-in-out infinite}
}
@keyframes nw-mobile-wave{0%{opacity:.95;transform:scale(.88)}70%,100%{opacity:0;transform:scale(1.55)}}@keyframes nw-mobile-icon{0%,100%{transform:scale(1) rotate(0)}45%{transform:scale(1.12) rotate(-7deg)}60%{transform:scale(1.08) rotate(5deg)}}
/* High-visibility mobile WhatsApp pulse */
@media(max-width:650px) and (prefers-reduced-motion:no-preference){
.floating-actions .floating-whatsapp{
animation:nw-mobile-pulse-shadow 2.4s ease-out infinite;
}
.floating-actions .floating-whatsapp::before{
inset:-8px;
border:4px solid #55f2df;
filter:drop-shadow(0 0 5px rgba(85,242,223,.95));
animation:nw-mobile-wave-strong 2.4s ease-out infinite;
}
.floating-actions .floating-whatsapp::after{
inset:-8px;
border:3px solid #fff;
filter:drop-shadow(0 0 4px rgba(255,255,255,.9));
animation:nw-mobile-wave-strong 2.4s ease-out 1.2s infinite;
}
.floating-whatsapp__icon{
animation:nw-mobile-whatsapp-nudge 2.4s ease-in-out infinite;
}
}
@keyframes nw-mobile-wave-strong{0%{opacity:1;transform:scale(.78)}25%{opacity:.9}82%,100%{opacity:0;transform:scale(1.72)}}
@keyframes nw-mobile-pulse-shadow{0%,100%{box-shadow:0 0 0 0 rgba(85,242,223,.72),0 12px 28px rgba(4,30,67,.4)}45%{box-shadow:0 0 0 11px rgba(85,242,223,0),0 16px 34px rgba(4,30,67,.46)}}
@keyframes nw-mobile-whatsapp-nudge{0%,38%,62%,100%{transform:rotate(0) scale(1)}44%{transform:rotate(-12deg) scale(1.16)}50%{transform:rotate(10deg) scale(1.16)}56%{transform:rotate(-6deg) scale(1.1)}}
/* High-visibility desktop WhatsApp animation */
@media(min-width:651px) and (prefers-reduced-motion:no-preference){
.floating-actions .floating-whatsapp{
overflow:visible;
animation:nw-desktop-wa-glow 2.6s ease-in-out infinite;
}
.floating-actions .floating-whatsapp::before{
inset:-5px;
border:3px solid #4ff0dc;
filter:drop-shadow(0 0 5px rgba(79,240,220,.9));
animation:nw-desktop-wa-wave 2.6s ease-out infinite;
}
.floating-actions .floating-whatsapp::after{
inset:-5px;
border:2px solid rgba(255,255,255,.98);
filter:drop-shadow(0 0 4px rgba(255,255,255,.92));
animation:nw-desktop-wa-wave 2.6s ease-out 1.3s infinite;
}
.floating-actions .floating-whatsapp__icon{
animation:nw-desktop-wa-nudge 2.6s ease-in-out infinite;
}
.floating-actions .floating-whatsapp__label::after{
content:"";
display:block;
width:28px;
height:2px;
margin-top:3px;
border-radius:2px;
background:#fff;
transform-origin:left;
animation:nw-desktop-wa-line 2.6s ease-in-out infinite;
}
}
@keyframes nw-desktop-wa-wave{0%{opacity:1;transform:scale(.92)}75%,100%{opacity:0;transform:scale(1.23)}}
@keyframes nw-desktop-wa-glow{0%,100%{box-shadow:0 14px 34px rgba(12,130,70,.3),0 0 0 0 rgba(79,240,220,.58)}48%{box-shadow:0 18px 42px rgba(12,130,70,.42),0 0 0 9px rgba(79,240,220,0)}}
@keyframes nw-desktop-wa-nudge{0%,40%,62%,100%{transform:rotate(0) scale(1)}46%{transform:rotate(-10deg) scale(1.13)}52%{transform:rotate(9deg) scale(1.13)}58%{transform:rotate(-5deg) scale(1.07)}}
@keyframes nw-desktop-wa-line{0%,100%{opacity:.65;transform:scaleX(.45)}50%{opacity:1;transform:scaleX(1)}}
/* Keep floating contact control clear of footer content */
.floating-actions .floating-whatsapp{transition:opacity .26s ease,visibility .26s ease,transform .26s ease,box-shadow .28s ease,filter .28s ease}
.floating-actions.is-footer-visible .floating-whatsapp{opacity:0;visibility:hidden;transform:translateY(16px) scale(.82);pointer-events:none;animation:none!important}
.floating-actions.is-footer-visible .floating-whatsapp::before,.floating-actions.is-footer-visible .floating-whatsapp::after,.floating-actions.is-footer-visible .floating-whatsapp__icon{animation:none!important}
/* Left floating call action */
.floating-call{position:fixed;z-index:70;left:max(18px,env(safe-area-inset-left));bottom:max(18px,env(safe-area-inset-bottom));display:flex;min-height:58px;align-items:center;gap:11px;padding:6px 16px 6px 6px;border:3px solid #fff;border-radius:31px;background:linear-gradient(135deg,#0b3e72,#087f99);color:#fff;box-shadow:0 0 0 1px rgba(5,38,82,.16),0 14px 34px rgba(7,43,84,.32);isolation:isolate;transition:transform .28s,opacity .26s,visibility .26s,box-shadow .28s}.floating-call:before,.floating-call:after{position:absolute;z-index:-1;inset:-6px;border:2px solid rgba(16,197,200,.66);border-radius:inherit;content:"";animation:nw-call-wave 2.8s ease-out infinite}.floating-call:after{animation-delay:1.4s}.floating-call>span{display:grid;width:43px;height:43px;place-items:center;flex:0 0 43px;border-radius:50%;background:#0cc2c4;font-size:19px;animation:nw-call-icon 2s ease-in-out infinite}.floating-call>b,.floating-call small{display:block}.floating-call>b{font-size:13px;line-height:1.25;white-space:nowrap}.floating-call small{margin-bottom:2px;color:#bfe7ea;font-size:10px;font-weight:700}.floating-call:hover{transform:translateY(-4px);box-shadow:0 0 0 1px rgba(5,38,82,.16),0 20px 42px rgba(7,43,84,.4)}.floating-call.is-footer-visible{opacity:0;visibility:hidden;transform:translateY(16px) scale(.82);pointer-events:none}.ct-page>.ct-main{padding-top:52px}
@keyframes nw-call-wave{0%{opacity:.8;transform:scale(.96)}75%,100%{opacity:0;transform:scale(1.28)}}@keyframes nw-call-icon{0%,100%{transform:rotate(0)}45%{transform:rotate(-9deg)}55%{transform:rotate(7deg)}}
@media(max-width:650px){.floating-call{left:12px;bottom:12px;width:54px;height:54px;min-height:54px;padding:4px;border-radius:50%}.floating-call>span{width:40px;height:40px;flex-basis:40px}.floating-call>b{position:absolute;left:calc(100% + 10px);padding:8px 11px;border-radius:5px;background:#073766;box-shadow:0 8px 22px rgba(7,43,84,.2);opacity:0;visibility:hidden;transform:translateX(-6px);transition:.22s}.floating-call:hover>b,.floating-call:focus-visible>b{opacity:1;visibility:visible;transform:translateX(0)}.ct-page>.ct-main{padding-top:28px}}
@media(prefers-reduced-motion:reduce){.floating-call,.floating-call:before,.floating-call:after,.floating-call>span{animation:none!important}}
/* Contact column order */
.ct-main__grid{grid-template-columns:minmax(330px,.65fr) minmax(0,1.35fr);grid-template-areas:"info form"}.ct-info{grid-area:info}.ct-form-wrap{grid-area:form}
@media(max-width:900px){.ct-main__grid{grid-template-columns:1fr;grid-template-areas:"info" "form"}}
/* Compact floating call with tooltip */
.floating-call{width:58px;height:58px;min-height:58px;padding:5px;border-radius:50%;gap:0}.floating-call>span{width:42px;height:42px;flex-basis:42px}.floating-call>b{position:absolute;left:calc(100% + 13px);bottom:50%;min-width:178px;padding:10px 13px;border:1px solid rgba(16,197,200,.36);border-radius:6px;background:#073766;color:#fff;box-shadow:0 12px 28px rgba(7,43,84,.28);opacity:0;visibility:hidden;transform:translate(-7px,50%);transition:opacity .22s,visibility .22s,transform .22s;pointer-events:none}.floating-call>b:before{position:absolute;right:100%;bottom:50%;width:9px;height:9px;background:#073766;transform:translate(5px,50%) rotate(45deg);content:""}.floating-call:hover>b,.floating-call:focus-visible>b{opacity:1;visibility:visible;transform:translate(0,50%)}.floating-call small{font-size:10px}.floating-call>b{font-size:13px}
@media(max-width:650px){.floating-call>b{left:calc(100% + 11px);bottom:50%;transform:translate(-6px,50%)}.floating-call:hover>b,.floating-call:focus-visible>b{transform:translate(0,50%)}}
/* Mobile floating call safe inset */
@media(max-width:650px){.floating-call{left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom))}.floating-call:before,.floating-call:after{inset:-4px;animation-name:nw-call-wave-mobile}@keyframes nw-call-wave-mobile{0%{opacity:.76;transform:scale(.97)}75%,100%{opacity:0;transform:scale(1.2)}}}
/* Floating call stacking correction */
.floating-call{z-index:75}.floating-call:before,.floating-call:after{z-index:0;pointer-events:none}.floating-call>span{position:relative;z-index:2}.floating-call>b{z-index:3}
/* Mirror WhatsApp mobile placement */
@media(max-width:650px){.floating-call{left:12px;bottom:12px;width:54px;height:54px;min-height:54px;padding:4px}.floating-call>span{width:44px;height:44px;flex-basis:44px}}
/* Centre call icon inside compact button */
@media(max-width:650px){.floating-call{padding:0;justify-content:center}.floating-call>span{margin:0}}
/* Strong visible call waves */
.floating-call:before,.floating-call:after{inset:-4px;border-radius:50%;opacity:0;transform-origin:center;animation:nw-call-wave-visible 2.2s cubic-bezier(.2,.7,.3,1) infinite}.floating-call:before{border:3px solid rgba(52,235,225,.98);box-shadow:0 0 0 1px rgba(4,44,82,.38),0 0 15px rgba(22,210,205,.5)}.floating-call:after{border:2px solid rgba(255,255,255,.98);box-shadow:0 0 0 1px rgba(5,44,81,.45);animation-delay:1.1s}@keyframes nw-call-wave-visible{0%{opacity:.95;transform:scale(.94)}68%{opacity:.3}100%{opacity:0;transform:scale(1.16)}}
@media(max-width:650px){.floating-call:before,.floating-call:after{inset:-3px;animation-name:nw-call-wave-visible}}
