.ko-gw{font-family:"TT Norms",Arial,sans-serif;color:#252525}.ko-gw *{box-sizing:border-box}.ko-gw [hidden]{display:none!important}.ko-gw button,.ko-gw input{font:inherit}.ko-gw-launcher{position:fixed;right:24px;bottom:110px;z-index:9990;display:grid;justify-items:center;padding:18px 15px 12px;background:#fff;border-radius:18px;box-shadow:0 8px 35px #0002}.ko-gw-open{border:0;background:none;cursor:pointer;color:#242424;padding:0}.ko-gw-open span{display:block;font-size:52px;line-height:1.1;margin-bottom:10px}.ko-gw-open strong{display:block;background:#f31329;color:#fff;border-radius:8px;padding:10px 14px;font-size:14px}.ko-gw-hide,.ko-gw-close{position:absolute;right:8px;top:6px;border:0;background:transparent;color:#666;cursor:pointer;font-size:25px!important;line-height:1;padding:4px}.ko-gw-dialog{border:0;padding:0;width:min(1440px,94vw);max-width:none;max-height:92vh;border-radius:30px;background:#f8f8f9;color:#252525;overflow:auto;box-shadow:0 30px 100px #0005}.ko-gw-dialog::backdrop{background:#0009}.ko-gw-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:30px;align-items:center;padding:clamp(24px,4vw,64px)}.ko-gw-close{right:18px;top:14px;font-size:34px!important;z-index:3}.ko-gw-title{font-size:clamp(28px,3.5vw,56px)!important;line-height:1.15!important;font-weight:750!important;margin:0 0 24px!important;color:#252525!important}.ko-gw-title em{font-style:normal;color:#f31329}.ko-gw-copy{font-size:clamp(18px,1.6vw,26px);line-height:1.4;margin:0 0 22px}.ko-gw-promise{display:inline-block;border:1px solid #f3132966;border-radius:99px;padding:12px 20px;font-size:16px;margin:0 0 25px}.ko-gw-form label{display:block;font-size:16px}.ko-gw-phone{display:block;width:100%;padding:20px 24px;border:1px solid #d8d8da;border-radius:99px;background:#fff;color:#252525;margin:10px 0 18px;font-size:20px!important;min-width:0}.ko-gw-submit{display:block;width:100%;background:#f31329;color:white;border:0;border-radius:99px;padding:20px 24px;cursor:pointer;font-size:20px!important;font-weight:500}.ko-gw-submit:disabled{opacity:.65;cursor:wait}.ko-gw-consent{display:flex!important;gap:9px;align-items:flex-start;font-size:12px!important;margin:16px 0;line-height:1.5}.ko-gw-consent input{accent-color:#f31329;margin-top:3px;flex:none}.ko-gw-consent a{color:inherit;text-decoration:underline}.ko-gw-terms{font-size:13px;line-height:1.5;color:#666}.ko-gw-wheelbox{position:relative;width:100%;aspect-ratio:1;min-width:0;padding:12px}.ko-gw-wheel{width:100%;height:auto;display:block;border-radius:50%;filter:drop-shadow(0 15px 13px #0003);transition:transform 6s cubic-bezier(.13,.67,.13,1)}.ko-gw-pointer{position:absolute;top:calc(50% - 21px);left:0;width:0;height:0;border-top:21px solid transparent;border-bottom:21px solid transparent;border-left:42px solid #20ad76;filter:drop-shadow(3px 2px 3px #0004);z-index:2}.ko-gw-result{margin-top:18px;font-size:20px;line-height:1.4;color:#126641;font-weight:650}.ko-gw-error{color:#b20c20}.ko-gw-hp{position:absolute;left:-10000px;width:1px;height:1px}.ko-gw button:focus-visible,.ko-gw input:focus-visible{outline:3px solid #21a575;outline-offset:4px}@media(max-width:767px){.ko-gw-layout{grid-template-columns:1fr;padding:40px 20px 24px;gap:12px}.ko-gw-wheelbox{grid-row:1;max-width:320px;margin:auto}.ko-gw-title{font-size:28px!important}.ko-gw-launcher{right:12px;bottom:80px;padding:14px 10px 10px}.ko-gw-open span{font-size:36px}.ko-gw-open strong{font-size:12px;padding:9px}.ko-gw-dialog{border-radius:22px}.ko-gw-copy{font-size:18px}.ko-gw-promise{font-size:14px}.ko-gw-submit{font-size:17px!important}}@media(prefers-reduced-motion:reduce){.ko-gw-wheel{transition:none}}

/* Isolate controls from Elementor global form styles. */
.ko-gw .ko-gw-phone{width:100%!important;padding:20px 24px!important;min-height:66px;border:1px solid #d8d8da!important;border-radius:99px!important;background:#fff!important;color:#252525!important}.ko-gw .ko-gw-submit{width:100%!important;padding:20px 24px!important;min-height:66px;border:0!important;border-radius:99px!important;background:#f31329!important;color:#fff!important}.ko-gw .ko-gw-submit:hover{background:#d90b20!important}.ko-gw .ko-gw-close,.ko-gw .ko-gw-hide{border:0!important;background:transparent!important;color:#666!important;border-radius:0!important}.ko-gw .ko-gw-open{border:0!important;background:transparent!important}.ko-gw .ko-gw-consent input{width:15px;height:15px;padding:0!important}

/* The rotating square must not change the scrollable size of the dialog. */
.ko-gw .ko-gw-dialog{width:min(1320px,94vw);max-height:94dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
.ko-gw-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:36px;gap:24px}
.ko-gw-layout>div{min-width:0}
.ko-gw-wheelbox{contain:paint;overflow:hidden;width:100%;padding:12px}
.ko-gw-wheel{transition:none!important;filter:none;will-change:transform}
.ko-gw .ko-gw-title{font-size:clamp(28px,3vw,46px)!important;margin-bottom:18px!important}
.ko-gw-copy{font-size:clamp(18px,1.6vw,23px);margin-bottom:16px}
.ko-gw-promise{margin-bottom:16px;padding:9px 16px}
.ko-gw-result{min-height:56px;margin:12px 0 0;font-size:18px;overflow-wrap:anywhere}
.ko-gw .ko-gw-submit:disabled{cursor:default!important;opacity:1;background:#17734d!important}
.ko-gw-form[aria-busy=true] .ko-gw-submit:disabled{background:#bc1023!important}
.ko-gw-hp{left:0!important;top:0;clip-path:inset(50%);overflow:hidden}
@media(max-width:767px){.ko-gw-layout{grid-template-columns:minmax(0,1fr);padding:40px 20px 24px;gap:8px}.ko-gw-wheelbox{grid-row:1;max-width:290px;margin:auto}}
/* Broad reference layout; rotation stays clipped to its own square. */
.ko-gw .ko-gw-dialog{width:min(94vw,1900px);max-height:94dvh;border-radius:36px}
.ko-gw-layout{grid-template-columns:minmax(0,46fr) minmax(0,54fr);padding:clamp(28px,3.5vw,74px);gap:2vw}
.ko-gw .ko-gw-title{font-size:clamp(34px,3.5vw,76px)!important;line-height:1.14!important;margin-bottom:28px!important}
.ko-gw-copy{font-size:clamp(21px,1.65vw,36px);line-height:1.35;margin-bottom:24px}
.ko-gw-promise{font-size:clamp(17px,1.2vw,26px);padding:14px 20px;margin-bottom:28px}
.ko-gw-form{max-width:560px}.ko-gw-form label{font-size:clamp(17px,1.1vw,24px)}
.ko-gw .ko-gw-phone,.ko-gw .ko-gw-submit{min-height:clamp(68px,5.2vw,110px);font-size:clamp(20px,1.25vw,28px)!important}
.ko-gw-consent{font-size:clamp(13px,.8vw,17px)!important}.ko-gw-terms{font-size:clamp(13px,.85vw,18px)}
.ko-gw-wheelbox{padding:12px;max-width:none}.ko-gw-pointer{border-top-width:28px;border-bottom-width:28px;border-left-width:52px;top:calc(50% - 28px)}
.ko-gw-result{font-size:clamp(18px,1.1vw,24px);min-height:56px}
@media(min-width:768px) and (max-height:800px){.ko-gw-layout{padding:28px;gap:20px}.ko-gw .ko-gw-title{font-size:clamp(32px,3vw,46px)!important;margin-bottom:16px!important}.ko-gw-copy{font-size:20px;margin-bottom:14px}.ko-gw-promise{font-size:16px;padding:9px 15px;margin-bottom:16px}.ko-gw .ko-gw-phone,.ko-gw .ko-gw-submit{min-height:60px;padding:16px 20px!important}.ko-gw-consent{margin:10px 0}.ko-gw-terms{font-size:12px;margin:8px 0}.ko-gw-result{font-size:16px;min-height:44px}}
@media(max-width:767px){.ko-gw-layout{grid-template-columns:1fr;padding:40px 20px 24px;gap:14px}.ko-gw-wheelbox{max-width:390px;grid-row:1}.ko-gw .ko-gw-title{font-size:32px!important;margin-bottom:18px!important}.ko-gw-copy{font-size:19px}.ko-gw-promise{font-size:16px;margin-bottom:18px}.ko-gw-form{max-width:none}.ko-gw-pointer{border-top-width:17px;border-bottom-width:17px;border-left-width:32px;top:calc(50% - 17px)}}

/* v1.4.0 — contact fields: name + phone + optional email. */
.ko-gw .ko-gw-field{
 display:block;width:100%!important;min-width:0;min-height:58px!important;
 padding:15px 20px!important;margin:7px 0 11px!important;
 border:1px solid #d8d8da!important;border-radius:99px!important;
 background:#fff!important;color:#252525!important;font-size:18px!important;
}
.ko-gw .ko-gw-field:focus{border-color:#21a575!important;box-shadow:0 0 0 1px #21a575!important}
.ko-gw .ko-gw-optional{font-size:.82em;color:#777;font-weight:400}
.ko-gw .ko-gw-submit{margin-top:4px}
@media(max-width:767px){
 .ko-gw .ko-gw-field{min-height:54px!important;padding:13px 17px!important;font-size:16px!important;margin-bottom:9px!important}
}
