.cs-front{--blue:#0877f9;--blue2:#2563eb;--navy:#0b1b4d;--text:#172033;--muted:#667085;--line:#e5edf7;--soft:#f7fbff;background:#fff;color:var(--text);overflow:hidden}.cs-front *{box-sizing:border-box}.cs-front a{text-decoration:none}.cs-front-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.cs-front-hero{padding:74px 0 58px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border-bottom:1px solid var(--line)}.cs-front-hero__grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:72px}.cs-front-pill{display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;background:#eaf4ff;color:#0871e8;font-size:13px;font-weight:800}.cs-front-hero h1,.cs-front-showcase h2,.cs-front-contact h2,.cs-front-final h2{color:var(--navy);letter-spacing:-.035em}.cs-front-hero h1{font-size:clamp(40px,5vw,68px);line-height:1.04;margin:20px 0}.cs-front-hero__content>p{font-size:18px;line-height:1.8;color:var(--muted);max-width:650px}.cs-front-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.cs-front-btn{min-height:48px;padding:0 21px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:14px;border:1px solid transparent;cursor:pointer;transition:.2s ease}.cs-front-btn--primary{background:var(--blue);color:#fff!important;box-shadow:0 12px 24px rgba(8,119,249,.18)}.cs-front-btn--primary:hover{background:#0068e2;transform:translateY(-2px)}.cs-front-btn--secondary{background:#fff;border-color:#a9cdf8;color:#075dbf!important}.cs-front-btn--secondary:hover{border-color:var(--blue);background:#f5faff}.cs-front-hero__visual{position:relative;padding:22px 20px 10px}.cs-front-browser{background:#fff;border:1px solid #dce6f1;border-radius:14px;padding:28px 9px 9px;box-shadow:0 28px 60px rgba(30,72,120,.16);position:relative;overflow:hidden}.cs-front-browser>span{position:absolute;top:10px;width:7px;height:7px;border-radius:50%;background:#cbd5e1}.cs-front-browser>span:nth-child(1){inset-inline-start:13px}.cs-front-browser>span:nth-child(2){inset-inline-start:25px}.cs-front-browser>span:nth-child(3){inset-inline-start:37px}.cs-front-browser img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:7px;display:block}.cs-front-device{position:absolute;width:29%;inset-inline-end:-2px;bottom:-15px;padding:7px;background:#101828;border-radius:20px;box-shadow:0 18px 40px rgba(15,23,42,.24)}.cs-front-device img{width:100%;aspect-ratio:9/17;object-fit:cover;border-radius:14px}.cs-front-trust{border-bottom:1px solid var(--line);background:#fff}.cs-front-trust__grid{display:grid;grid-template-columns:repeat(5,1fr)}.cs-front-trust__grid>div{padding:24px 16px;display:grid;grid-template-columns:36px 1fr;column-gap:9px;border-inline-end:1px solid var(--line)}.cs-front-trust__grid>div:last-child{border-inline-end:0}.cs-front-trust b{grid-row:1/3;width:34px;height:34px;border-radius:50%;background:#eef6ff;display:grid;place-items:center;color:var(--blue)}.cs-front-trust strong{font-size:13px;color:var(--navy)}.cs-front-trust span{font-size:11px;color:var(--muted);margin-top:3px}.cs-front-section{padding:88px 0}.cs-front-products{background:#fbfdff}.cs-front-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.cs-front-heading>div>span{color:var(--blue);font-weight:800;font-size:13px}.cs-front-heading h2{font-size:clamp(30px,4vw,46px);color:var(--navy);margin:9px 0 10px;letter-spacing:-.025em}.cs-front-heading p{color:var(--muted);margin:0;max-width:700px;line-height:1.7}.cs-front-heading>a{font-weight:800;color:var(--blue);white-space:nowrap}.cs-front-heading--center{justify-content:center;text-align:center}.cs-front-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cs-front-product-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(29,78,216,.05);transition:.2s}.cs-front-product-card:hover{transform:translateY(-4px);box-shadow:0 16px 35px rgba(29,78,216,.1)}.cs-front-product-card__image{display:block;padding:9px;background:#f7faff}.cs-front-product-card__image img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:7px}.cs-front-product-card__body{padding:18px}.cs-front-product-card h3{margin:0 0 5px;font-size:18px}.cs-front-product-card h3 a{color:var(--navy)}.cs-front-product-card__price{color:var(--blue);font-size:20px;font-weight:900;margin:6px 0}.cs-front-product-card__body p{font-size:13px;line-height:1.6;color:var(--muted);min-height:42px}.cs-front-product-card__actions .cs-front-btn{width:100%;min-height:42px}.cs-front-empty{padding:50px;text-align:center;border:1px dashed #bfdbfe;border-radius:16px;background:#fff}.cs-front-showcase{background:linear-gradient(135deg,#f6fbff,#eef7ff)}.cs-front-showcase__grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:75px}.cs-front-showcase__content h2{font-size:clamp(34px,4.5vw,54px);line-height:1.08;margin:18px 0}.cs-front-showcase__content>p{color:var(--muted);line-height:1.8;font-size:17px}.cs-front-showcase ul{list-style:none;padding:0;margin:25px 0;display:grid;gap:12px}.cs-front-showcase li:before{content:'✓';display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e3f1ff;color:var(--blue);font-weight:900;margin-inline-end:10px}.cs-front-steps{background:#fff}.cs-front-steps__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;text-align:center}.cs-front-steps__grid>div{padding:22px}.cs-front-steps i{font-style:normal;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:var(--blue);color:#fff;font-weight:900;box-shadow:0 8px 20px rgba(8,119,249,.22)}.cs-front-steps h3{color:var(--navy);font-size:17px}.cs-front-steps p{font-size:13px;line-height:1.7;color:var(--muted)}.cs-front-contact{background:#f7fbff;border-block:1px solid var(--line)}.cs-front-contact__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.cs-front-contact h2{font-size:clamp(34px,4vw,50px);line-height:1.1;margin:18px 0}.cs-front-contact__copy>p{font-size:17px;line-height:1.8;color:var(--muted)}.cs-front-contact__note{margin-top:30px;padding:18px;border-inline-start:4px solid var(--blue);background:#fff;border-radius:8px;display:flex;flex-direction:column;gap:5px}.cs-front-contact__note span{color:var(--muted);font-size:13px}.cs-front-contact__form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 18px 45px rgba(30,72,120,.08);display:grid;gap:16px}.cs-front-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cs-front-contact label{display:grid;gap:7px;font-size:13px;font-weight:800;color:#344054}.cs-front-contact input,.cs-front-contact select,.cs-front-contact textarea{width:100%;border:1px solid #d8e2ee;background:#fff;border-radius:8px;padding:12px 13px;font:inherit;color:var(--text);outline:none}.cs-front-contact input:focus,.cs-front-contact select:focus,.cs-front-contact textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #dbeafe}.cs-front-contact textarea{resize:vertical}.cs-front-hp{position:absolute!important;left:-9999px!important;opacity:0!important}.cs-front-alert{padding:12px 14px;border-radius:8px;font-size:13px;font-weight:700}.cs-front-alert--success{background:#ecfdf3;color:#067647}.cs-front-alert--error{background:#fef3f2;color:#b42318}.cs-front-final{padding:55px 0;background:#fff}.cs-front-final .cs-front-container{display:flex;justify-content:space-between;align-items:center;gap:30px}.cs-front-final h2{font-size:32px;margin:0 0 8px}.cs-front-final p{margin:0;color:var(--muted)}.cs-front-floating-contact{position:fixed;inset-inline-end:22px;bottom:22px;z-index:50;background:var(--blue);color:#fff!important;border-radius:999px;padding:13px 17px;box-shadow:0 14px 30px rgba(8,119,249,.28);font-size:13px;font-weight:800}.cs-front-floating-contact:hover{transform:translateY(-2px)}
@media(max-width:980px){.cs-front-hero__grid,.cs-front-showcase__grid,.cs-front-contact__grid{grid-template-columns:1fr}.cs-front-hero__content{text-align:center}.cs-front-hero__content>p{margin-inline:auto}.cs-front-actions{justify-content:center}.cs-front-trust__grid{grid-template-columns:repeat(2,1fr)}.cs-front-product-grid{grid-template-columns:repeat(2,1fr)}.cs-front-steps__grid{grid-template-columns:repeat(2,1fr)}.cs-front-showcase__visual{order:2}.cs-front-contact__grid{gap:35px}}
@media(max-width:640px){.cs-front-container{width:min(100% - 28px,1180px)}.cs-front-hero{padding:52px 0 38px}.cs-front-hero h1{font-size:39px}.cs-front-hero__grid{gap:36px}.cs-front-device{inset-inline-end:0}.cs-front-trust__grid{grid-template-columns:1fr 1fr}.cs-front-trust__grid>div{padding:16px 8px}.cs-front-section{padding:64px 0}.cs-front-heading{align-items:start;flex-direction:column}.cs-front-product-grid,.cs-front-steps__grid{grid-template-columns:1fr}.cs-front-form-row{grid-template-columns:1fr}.cs-front-contact__form{padding:20px}.cs-front-final .cs-front-container{align-items:flex-start;flex-direction:column}.cs-front-floating-contact span{display:none}.cs-front-floating-contact{width:48px;height:48px;padding:0;display:grid;place-items:center}.cs-front-showcase__grid{gap:38px}}


/* 1.1.17 visual refinement */
.cs-front-trust__grid > div { padding: 27px 18px; grid-template-columns: 42px 1fr; column-gap: 12px; align-items: center; }
.cs-front-trust b { width: 40px; height: 40px; font-size: 18px; }
.cs-front-trust strong { font-size: 15px; line-height: 1.35; }
.cs-front-trust span { font-size: 13px; line-height: 1.45; }

/* Three real products should fill the row instead of leaving a fourth-column gap. */
.cs-front-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.cs-front-product-card__body { padding: 20px; }
.cs-front-product-card h3 { font-size: 19px; line-height: 1.35; }
.cs-front-product-card__body p { font-size: 14px; line-height: 1.7; }
.cs-front-product-card__actions .cs-front-btn { min-height: 46px; }

.cs-front-steps .cs-front-heading h2 { font-size: clamp(36px, 4.4vw, 52px); }
.cs-front-steps .cs-front-heading > div > span { font-size: 14px; }
.cs-front-steps__grid { gap: 28px; }
.cs-front-steps__grid > div { padding: 28px 20px; }
.cs-front-steps i { width: 46px; height: 46px; font-size: 17px; margin-bottom: 18px; }
.cs-front-steps h3 { font-size: 20px; line-height: 1.35; margin: 0 0 10px; }
.cs-front-steps p { font-size: 15px; line-height: 1.75; margin: 0; }

@media(max-width:980px){.cs-front-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.cs-front-product-grid{grid-template-columns:1fr}.cs-front-trust strong{font-size:14px}.cs-front-trust span{font-size:12px}.cs-front-steps h3{font-size:19px}.cs-front-steps p{font-size:14px}}

/* 1.1.18 visual polish */
.cs-front-hero__content{max-width:660px}
.cs-front-hero h1{font-size:clamp(38px,4.25vw,58px);line-height:1.08;max-width:650px}
.cs-front-product-card__image{aspect-ratio:16/10;overflow:hidden}
.cs-front-product-card__image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;image-rendering:auto}
@media(max-width:640px){.cs-front-hero h1{font-size:36px;max-width:none}}


/* 1.1.19: balanced two-line desktop hero headline. */
@media (min-width: 1100px){
  .cs-front-hero__grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:56px}
  .cs-front-hero__content{max-width:720px}
  .cs-front-hero h1{font-size:clamp(42px,3.55vw,50px);line-height:1.10;max-width:720px;text-wrap:balance}
}

/* 1.1.23 — Mobile viewport / RTL overflow fix.
 * Do not park the anti-spam honeypot at -9999px: in RTL it can enlarge the
 * scrollable canvas and make the real page appear off-screen on mobile.
 */
.cs-front-hp{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  opacity:0!important;
  left:auto!important;
  right:auto!important;
}

@media (max-width: 720px){
  .cs-front,
  .cs-front-container,
  .cs-front-hero__grid,
  .cs-front-showcase__grid,
  .cs-front-contact__grid,
  .cs-front-product-grid,
  .cs-front-steps__grid{min-width:0;max-width:100%}
  .cs-front img,.cs-front svg,.cs-front video{max-width:100%;height:auto}
}

/* 1.1.26: keep floating contact label visible on phones */
@media(max-width:640px){.cs-front-floating-contact{display:inline-flex;width:auto;max-width:calc(100vw - 28px);height:auto;min-height:46px;padding:10px 15px;gap:7px;align-items:center;justify-content:center;white-space:nowrap}.cs-front-floating-contact span{display:inline!important}}
