/* Page loader and the free-call offer. Loaded on every page. */
#kuwa-loader{position:fixed;inset:0;z-index:2000;background:#0A0A0A;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4rem;pointer-events:none;animation:kLoadOut 0.4s ease 0.8s forwards}
#kuwa-loader img{width:72px;height:72px;display:block;animation:kLoadPop 0.6s cubic-bezier(.2,.7,.2,1) both}
#kuwa-loader i{display:block;width:120px;height:2px;background:rgba(255,255,255,0.14);position:relative;overflow:hidden}
#kuwa-loader i::after{content:'';position:absolute;inset:0;background:#E63815;transform:translateX(-100%);animation:kLoadBar 0.75s ease-out 0.05s forwards}
@keyframes kLoadPop{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:none}}
@keyframes kLoadBar{to{transform:none}}
@keyframes kLoadOut{to{opacity:0;visibility:hidden}}
@media(prefers-reduced-motion:reduce){#kuwa-loader{display:none}}

#kuwa-offer{position:fixed;right:1.5rem;bottom:calc(var(--wa-bottom,1.5rem) + 4.6rem);max-height:calc(100vh - 7rem);overflow:auto;z-index:140;width:min(380px,calc(100vw - 2rem));background:#0A0A0A;color:#fff;border:1px solid rgba(255,255,255,0.16);box-shadow:0 18px 50px rgba(0,0,0,0.45);padding:1.6rem 1.6rem 1.35rem;font-family:'Instrument Sans',sans-serif;opacity:0;transform:translateY(16px);transition:opacity 0.4s ease,transform 0.4s ease}
#kuwa-offer.in{opacity:1;transform:none}
#kuwa-offer h2{font-family:'ClashDisplay-Variable','Clash Display',sans-serif;font-size:1.4rem;font-weight:500;line-height:1.2;margin:0 2rem 0.5rem 0;letter-spacing:-0.01em;color:#fff}
#kuwa-offer p{font-size:0.93rem;line-height:1.6;color:rgba(255,255,255,0.75);margin:0 0 1rem}
#kuwa-offer label{display:block;font-size:0.78rem;color:rgba(255,255,255,0.65);margin:0 0 0.3rem}
#kuwa-offer input[type=text],#kuwa-offer input[type=email],#kuwa-offer textarea{width:100%;box-sizing:border-box;background:#141414;border:1px solid rgba(255,255,255,0.22);color:#fff;font:inherit;font-size:0.95rem;padding:0.7rem 0.8rem;margin:0 0 0.8rem;border-radius:0;min-height:44px}
#kuwa-offer textarea{resize:vertical;min-height:84px;display:block}
#kuwa-offer input:focus,#kuwa-offer textarea:focus{outline:2px solid #F79F1B;outline-offset:1px}
#kuwa-offer .ko-row{display:flex;gap:0.7rem}
#kuwa-offer .ko-row>div{flex:1;min-width:0}
#kuwa-offer button.ko-go{width:100%;justify-content:center;min-height:44px;cursor:pointer}
#kuwa-offer .ko-x{position:absolute;top:0.6rem;right:0.6rem;width:44px;height:44px;background:transparent;border:0;color:rgba(255,255,255,0.7);font-size:1.5rem;line-height:1;cursor:pointer}
#kuwa-offer .ko-x:hover{color:#fff}
#kuwa-offer .ko-alt{margin:0.9rem 0 0;font-size:0.82rem;color:rgba(255,255,255,0.6)}
#kuwa-offer .ko-alt a{color:#F79F1B;text-decoration:underline}
#kuwa-offer .ko-err{display:none;color:#ff8a73;font-size:0.82rem;margin:-0.3rem 0 0.7rem}
#kuwa-offer .ko-err.show{display:block}
#kuwa-offer .ko-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
@media(max-width:600px){#kuwa-offer{left:1rem;right:1rem;width:auto;bottom:5rem}}
@media(prefers-reduced-motion:reduce){#kuwa-offer{transition:none}}

#kuwa-offer-wrap{position:fixed;inset:0;z-index:2100;background:rgba(0,0,0,0.66);display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;transition:opacity 0.35s ease}
#kuwa-offer-wrap.in{opacity:1}
#kuwa-offer.ko-center{position:relative;right:auto;bottom:auto;width:min(460px,100%);opacity:1;transform:none;max-height:calc(100vh - 2rem)}
@media(prefers-reduced-motion:reduce){#kuwa-offer-wrap{transition:none}}

/* WhatsApp button: replaces the old floating call-to-action */
.wa-float{transition:bottom 0.25s ease;position:fixed;right:1.5rem;bottom:var(--wa-bottom,1.5rem);left:auto;top:auto;z-index:130;width:58px;height:58px;padding:0;margin:0;border:0;border-radius:0;line-height:0;font-size:0;display:flex !important;align-items:center;justify-content:center;background:#25D366;color:#fff;text-decoration:none;opacity:1;transform:none;pointer-events:auto;box-shadow:0 6px 20px rgba(37,211,102,0.45);animation:waBounce 6s ease-in-out infinite,waGlow 2.6s ease-out infinite}
.wa-float:hover{background:#1ebe5b}
.wa-float:focus-visible{outline:3px solid #F79F1B;outline-offset:3px}
@keyframes waBounce{0%,76%,100%{transform:translateY(0)}80%{transform:translateY(-16px)}84%{transform:translateY(0)}88%{transform:translateY(-8px)}92%{transform:translateY(0)}}
@keyframes waGlow{0%{box-shadow:0 6px 20px rgba(37,211,102,0.45),0 0 0 0 rgba(37,211,102,0.55)}70%,100%{box-shadow:0 6px 20px rgba(37,211,102,0.45),0 0 0 20px rgba(37,211,102,0)}}
@media(prefers-reduced-motion:reduce){.wa-float{animation:none}}
@media(max-width:600px){.wa-float{right:1rem;width:54px;height:54px}}

/* One-question quote strip (product pages) and the result strip (free resources) */
.quote-strip{background:#005B50;color:#fff;padding:3rem 3.5rem}
.quote-strip .qs-in{max-width:none;margin:0;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.quote-strip h2{font-family:'ClashDisplay-Variable','Clash Display',sans-serif;font-size:clamp(1.3rem,2.2vw,1.75rem);font-weight:500;line-height:1.25;margin:0;max-width:22ch;letter-spacing:-0.01em;color:#fff}
.quote-strip form{display:flex;gap:0.75rem;align-items:stretch;flex-wrap:wrap}
.quote-strip input[type=number]{width:9rem;min-height:48px;background:#0F1F1C;border:1px solid rgba(255,255,255,0.25);color:#fff;font:inherit;font-size:1rem;padding:0.6rem 0.8rem;border-radius:0}
.quote-strip input:focus{outline:2px solid #F79F1B;outline-offset:1px}
.quote-strip .qs-alt{font-size:0.88rem;color:rgba(255,255,255,0.8);align-self:center}
.quote-strip .qs-alt a{color:#fff;text-decoration:underline}
@media(max-width:980px){.quote-strip{padding:2.5rem 1.5rem}}
