:root{--bg:#FFFFFF;--text:#1E1E1E;--muted:#545454;--muted-2:#6B6B6B;--line:#DDDDDD;--card:#F6F6F6;--accent:#FAD333;--accent-2:#FBDE66;--shadow:rgba(30,30,30,0.1);--radius:16px;--radius-lg:24px;--container:1224px}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.nowrap{white-space:nowrap}
.container{max-width:var(--container);margin:0 auto;padding:0 16px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:12px;border:1px solid transparent;font-weight:600;transition:.25s ease;cursor:pointer}
.btn-lg{padding:14px 22px;border-radius:14px}
.btn-primary{background:linear-gradient(180deg,var(--accent),var(--accent-2));color:#000}
.btn-primary:hover{filter:saturate(1.05) brightness(1.02); box-shadow:0 8px 20px var(--shadow)}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--text)}
.btn-ghost:hover{background:var(--card)}
.btn-secondary{background:#1E1E1E;color:#fff}
.btn-secondary:hover{background:#000}
.link{color:#0b57d0;text-decoration:underline}

.site-header{position:sticky;top:0;background:rgba(255,255,255,.8);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--line);z-index:50}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px}
.brand{font-weight:700;letter-spacing:.2px}
.main-nav ul{display:flex;gap:20px;list-style:none;margin:0;padding:0}
.main-nav a{padding:10px 8px;border-radius:10px;color:#1E1E1E}
.main-nav a:hover{background:var(--card)}
.header-cta{display:flex;align-items:center;gap:12px}
.contact-link{font-weight:500;color:#1E1E1E;opacity:.9}
.contact-link:hover{opacity:1}

.promo-bar{background:#1E1E1E;color:#fff}
.promo-row{display:flex;align-items:center;gap:16px;padding:10px 0}
.promo-label{background:linear-gradient(180deg,var(--accent),var(--accent-2));color:#000;padding:4px 8px;border-radius:999px;font-weight:700;font-size:12px}
.promo-text{margin:0;opacity:.95}
.countdown{margin-left:auto;display:flex;gap:12px}
.cd-item{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:6px 10px;border-radius:10px;text-align:center;min-width:64px}
.cd-item span{font-weight:700;font-size:18px;display:block}
.cd-item small{opacity:.8}

.hero{position:relative;isolation:isolate;color:#1E1E1E}
.hero-bg{position:absolute;inset:0;z-index:-1;background:
 radial-gradient(1200px 600px at 20% -10%, rgba(250,211,51,.25), transparent 60%),
 radial-gradient(1000px 500px at 80% 10%, rgba(251,222,102,.25), transparent 60%),
 linear-gradient(180deg,#fff, #fff)}
.hero-inner{padding:56px 0 40px;display:flex;flex-direction:column;gap:16px}
.hero-badge{display:inline-block;background:#F6F6F6;border:1px solid var(--line);padding:6px 10px;border-radius:999px;font-size:12px;font-weight:600}
.hero h1{font-size:36px;line-height:1.15;margin:8px 0 0}
.hero-sub{font-size:18px;color:var(--muted);max-width:800px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.hero-proof{display:flex;gap:24px;flex-wrap:wrap;margin-top:8px}
.kpi{background:var(--card);border:1px solid var(--line);padding:10px 14px;border-radius:12px;box-shadow:0 8px 24px var(--shadow)}
.kpi strong{font-size:20px}
.partners{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.pill{background:#fff;border:1px solid var(--line);padding:6px 10px;border-radius:999px;font-weight:600;box-shadow:0 6px 18px var(--shadow)}

.section{padding:48px 0}
.section.alt{background:#F6F6F6}
.section-head{margin-bottom:24px}
.section-head.center{text-align:center}
.section-head h2{font-size:28px;margin:0 0 6px}
.section-head .sub{color:var(--muted);margin:0}

.grid{display:grid;gap:16px}
.features-grid{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 30px var(--shadow);padding:18px}
.feature .icon{width:40px;height:40px;display:grid;place-items:center;background:#F6F6F6;border:1px solid var(--line);border-radius:12px;margin-bottom:8px}
.feature h3{margin:6px 0 6px;font-size:20px}
.feature p{margin:0 0 8px;color:var(--muted)}
.list{margin:0;padding-left:18px;color:#1E1E1E}
.list li{margin:4px 0}
.feature:hover{transform:translateY(-2px);box-shadow:0 16px 40px var(--shadow)}

.integrations{margin:8px 0 16px}
.integrations-row{display:flex;gap:10px;flex-wrap:wrap}
.chip{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-weight:600;box-shadow:0 6px 18px var(--shadow)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:12px}
.step-card{padding:18px;border-radius:16px;border:1px solid rgba(0,0,0,.06);background:linear-gradient(180deg,rgba(255,255,255,.65),rgba(255,255,255,.85));backdrop-filter:blur(8px)}
.step-card strong{font-size:28px;display:block}
.step-card h3{margin:4px 0 6px;font-size:18px}
.step-card p{margin:0;color:var(--muted)}
.glass{box-shadow:0 10px 30px var(--shadow)}

.trust-row{display:grid;grid-template-columns:1.2fr 1fr;gap:16px}
.testimonials{display:grid;gap:16px}
.quote p{margin:0 0 8px}
.quote footer{color:var(--muted);font-size:14px}

.cms-slider{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:16px;overflow:auto;padding-bottom:6px;scroll-snap-type:x mandatory}
.cms-slider .slide{scroll-snap-align:start;min-height:140px}

.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;overflow:auto;padding-bottom:6px}
.blog-card{border-radius:16px;border:1px solid var(--line);box-shadow:0 8px 24px var(--shadow);background:#fff;padding:0;display:flex;flex-direction:column}
.blog-card .cover{height:160px;border-radius:16px 16px 0 0;background:
 linear-gradient(120deg, rgba(250,211,51,.35), rgba(251,222,102,.15)),
 repeating-linear-gradient(45deg, #f7f7f7, #f7f7f7 10px, #f2f2f2 10px, #f2f2f2 20px)}
.blog-card .meta{padding:12px 16px 0}
.tag{display:inline-block;background:#1E1E1E;color:#fff;padding:4px 8px;border-radius:999px;font-size:12px;letter-spacing:.8px}
.blog-card h3{padding:6px 16px 0;margin:0;font-size:18px}
.blog-card .excerpt{padding:6px 16px 0;margin:0;color:var(--muted)}
.blog-card .author{padding:12px 16px 16px;margin-top:auto;display:flex;align-items:center;gap:10px}
.author-info strong{display:block}
.author-info span{color:var(--muted);font-size:12px}
.line-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.cta-section{background:linear-gradient(180deg,#F6F6F6,#FFFFFF)}
.cta-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px;border-radius:20px}
.cta-card.neon{box-shadow:0 0 0 1px var(--line), 0 20px 60px var(--shadow)}
.cta-content h2{margin:0 0 6px;font-size:24px}
.cta-content .sub{margin:0;color:var(--muted)}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap}

/* Contact form styles (for Step 10 injection) */
.contact-form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 10px 30px var(--shadow)}
.form-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.form-field label{font-weight:600}
.form-field input,.form-field textarea{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#F6F6F6;transition:.2s}
.form-field input:focus,.form-field textarea:focus{outline:none;border-color:#cfcfcf;background:#fff;box-shadow:0 0 0 4px rgba(250,211,51,.15)}
.form-field.consent{flex-direction:row;align-items:flex-start;gap:10px}
.contact-submit{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:12px;border:1px solid transparent;background:linear-gradient(180deg,var(--accent),var(--accent-2));color:#000;font-weight:700;cursor:pointer}
.contact-submit:hover{filter:saturate(1.05)}

.site-footer{background:#1E1E1E;color:#fff;padding:32px 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}
.brand-foot{font-weight:800;margin-bottom:6px}
.foot-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.site-footer .link,.site-footer a{color:#fff;opacity:.9}
.site-footer .link:hover,.site-footer a:hover{opacity:1}
.small{font-size:12px}
.muted{color:var(--muted)}

/* Ref strip */
.ref-strip{padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.ref-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.ref-item{border:1px dashed var(--line);border-radius:12px;padding:10px;text-align:center;color:var(--muted)}

/* Cookie banner */
.cookie-banner{position:fixed;inset:auto 12px 12px 12px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px var(--shadow);z-index:100;transition:.3s}
.cookie-banner.hide{opacity:0;pointer-events:none;transform:translateY(8px)}
.cookie-inner{display:flex;align-items:center;gap:12px;padding:12px}
.cookie-actions{margin-left:auto;display:flex;gap:8px}

/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.hero-inner, .features-grid .feature, .step-card, .quote, .blog-card, .cta-card{animation:fadeUp .6s ease both}

/* Responsive */
@media (max-width:1024px){
  .features-grid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .trust-row{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .ref-grid{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:480px){
  .main-nav{display:none}
  .hero h1{font-size:28px}
  .hero-sub{font-size:16px}
  .features-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .blog-grid{grid-template-columns:80%}
  .cms-slider{grid-auto-columns:80%}
  .cta-card{flex-direction:column;align-items:flex-start}
  .cookie-inner{flex-direction:column;align-items:flex-start}
  .footer-grid{grid-template-columns:1fr}
  .ref-grid{grid-template-columns:repeat(2,1fr)}
}

/* contact-details:start */
.contact-details {
  margin-top: 1.25rem;
  padding: 1rem 1.1rem;
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,252,0.92));
  border: 1px solid var(--border, rgba(148, 163, 184, 0.35));
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  display: grid;
  gap: 0.65rem;
  color: var(--text, #0f172a);
}

.contact-details strong {
  letter-spacing: 0.05em;
  font-size: 0.95rem;
  text-transform: uppercase;
  color: var(--muted, #475569);
}

.contact-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.contact-row .label {
  color: var(--muted, #475569);
  font-size: 0.95rem;
}

.contact-link {
  color: var(--text, #0f172a);
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.contact-link:hover {
  color: var(--color-accent, #2563eb);
}

@media (max-width: 540px) {
  .contact-row {
    flex-direction: column;
    align-items: flex-start;
  }
}
/* contact-details:end */

/* contrast-guard:start */
body {
  color: var(--text, #0f172a);
  background-color: var(--bg, #ffffff);
}

header, section, footer, .contact-panel, .cta-box, .feature-card, .contact-details {
  color: var(--text, #0f172a);
}

.dark, .dark-section, footer.dark, header.dark {
  background-color: var(--color-surface, #0f172a);
  color: var(--color-contrast, #f8fafc);
}

.contact-form input,
.contact-form textarea {
  color: var(--text, #0f172a);
  background: #ffffff;
}

.cta-btn, .contact-submit {
  color: #ffffff;
}
/* contrast-guard:end */

/* contact-wrapper-styles:start */
.contact-shell {
  position: relative;
  isolation: isolate;
}

.contact-panel {
  width: min(640px, 100%);
  margin-inline: auto;
  backdrop-filter: blur(18px);
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9));
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 24px;
  padding: clamp(1.75rem, 3vw, 2.5rem);
  box-shadow: var(--shadow-soft, 0 12px 24px rgba(15, 23, 42, 0.12));
}

.contact-form-card {
  width: 100%;
  max-width: 720px;
}

.contact-heading {
  display: grid;
  gap: 0.5rem;
  margin-bottom: 1.25rem;
}

.contact-kicker {
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: 0.85rem;
  opacity: 0.65;
  color: var(--color-accent, #2563eb);
}

.contact-title {
  margin: 0;
  font-size: clamp(1.6rem, 3vw, 2rem);
}

.contact-lead {
  margin: 0;
  color: var(--muted, #475569);
  max-width: 640px;
}

.contact-form-shell {
  margin-top: 1.25rem;
}

.contact-form {
  display: grid;
  gap: 1rem;
}

.form-field {
  display: grid;
  gap: 0.5rem;
  color: var(--text, #0f172a);
}

.form-field.consent {
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 0.75rem;
}

.form-field.consent span {
  text-transform: none;
  letter-spacing: 0;
  opacity: 0.85;
}

.form-field span {
  font-size: 0.95rem;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  opacity: 0.65;
}

.form-field input,
.form-field textarea {
  padding: 0.9rem 1rem;
  border-radius: 14px;
  border: 1px solid var(--border, rgba(148, 163, 184, 0.45));
  background: #fff;
  color: inherit;
  resize: vertical;
  min-height: 54px;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
  transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

.form-field input::placeholder,
.form-field textarea::placeholder {
  color: var(--muted, #6b7280);
}

.contact-form input[type="checkbox"] {
  width: auto;
  min-height: auto;
  accent-color: var(--color-accent, #2563eb);
}

.form-field textarea {
  min-height: 140px;
}

.form-field input:focus,
.form-field textarea:focus {
  outline: none;
  border-color: rgba(56, 189, 248, 0.85);
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.2);
  transform: translateY(-2px);
}

.contact-submit {
  justify-self: start;
  padding: 1rem 2.6rem;
  border-radius: 999px;
  border: none;
  background: linear-gradient(135deg, var(--color-accent, #2563eb) 0%, var(--color-accent-strong, #22d3ee) 100%);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  letter-spacing: 0.02em;
  transition: transform 0.35s ease, box-shadow 0.35s ease, filter 0.35s ease;
}

.contact-submit:hover {
  transform: translateY(-3px) scale(1.01);
  box-shadow: 0 18px 45px rgba(244, 114, 182, 0.32);
  filter: brightness(1.05);
}

@media (max-width: 640px) {
  .contact-panel {
    padding: 1.25rem;
  }
}
/* contact-wrapper-styles:end */

