
/* ===== v34 CRO ===== */
.home31 .h31-hero h1{
  max-width:900px;
  font-size:clamp(48px,5.7vw,78px);
}
.home31 .h31-hero-copy{max-width:880px}
.home31 .h31-hero p{max-width:760px}
.home31 .h31-hero-rotate{white-space:nowrap}
.home31 .h31-value-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:28px;
}
.home31 .h31-value-card{
  min-height:250px;
  padding:28px;
  border:1px solid #dfe7ea;
  border-radius:24px;
  background:#fff;
}
.home31 .h31-value-no{
  width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;
  background:linear-gradient(135deg,rgba(18,205,227,.14),rgba(81,226,140,.18));
  color:#12866f;font-size:11px;font-weight:900;margin-bottom:24px;
}
.home31 .h31-value-card h3{
  margin:0 0 10px;
  font-size:27px;line-height:1.05;letter-spacing:-.04em;
}
.home31 .h31-value-card p{
  margin:0;color:#71828a;font-size:14px;line-height:1.5;
}
.home31 .h31-value-card a{
  display:inline-flex;margin-top:20px;
  font-size:12px;font-weight:900;color:#174b61
}

/* Project solution examples */
.home31 .h31-projects{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:16px;margin-top:28px
}
.home31 .h31-project{
  overflow:hidden;
  border:1px solid #dfe7ea;
  border-radius:24px;
  background:#fff
}
.home31 .h31-project-img{
  height:230px;overflow:hidden
}
.home31 .h31-project-img img{width:100%;height:100%;object-fit:cover}
.home31 .h31-project-copy{padding:22px}
.home31 .h31-project-tag{
  display:inline-flex;padding:6px 9px;border-radius:999px;
  background:#eef6f5;color:#56716a;
  font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase
}
.home31 .h31-project h3{
  margin:12px 0 8px;font-size:25px;line-height:1.05;letter-spacing:-.04em
}
.home31 .h31-project p{
  margin:0;color:#71828a;font-size:13px;line-height:1.48
}
.home31 .h31-project-stack{
  margin-top:17px;padding-top:14px;border-top:1px solid #edf1f2;
  color:#445a63;font-size:11px;line-height:1.5;font-weight:800
}
.home31 .h31-project a{
  display:flex;justify-content:space-between;align-items:center;
  margin-top:17px;font-size:12px;font-weight:900;color:#174b61
}

/* Existing system conversion block */
.home31 .h31-existing{
  display:grid;grid-template-columns:.92fr 1.08fr;
  overflow:hidden;
  border-radius:30px;
  border:1px solid #dce6e9;
  background:#fff
}
.home31 .h31-existing-copy{padding:42px}
.home31 .h31-existing h2{
  margin:0;font-size:clamp(36px,4vw,52px);line-height:1;letter-spacing:-.055em
}
.home31 .h31-existing-copy>p{
  margin:15px 0 0;color:#71828a;font-size:15px;line-height:1.55
}
.home31 .h31-existing-list{display:grid;gap:10px;margin:22px 0}
.home31 .h31-existing-list div{
  display:flex;gap:9px;color:#40555e;font-size:13px;line-height:1.4
}
.home31 .h31-existing-list i{
  width:8px;height:8px;border-radius:50%;background:#2bc878;margin-top:5px;flex:0 0 8px
}
.home31 .h31-existing-visual{
  min-height:440px;position:relative;overflow:hidden
}
.home31 .h31-existing-visual img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover
}
.home31 .h31-existing-badge{
  position:absolute;left:22px;bottom:22px;
  max-width:330px;padding:16px 18px;border-radius:16px;
  background:rgba(255,255,255,.93);backdrop-filter:blur(10px);
  box-shadow:0 15px 38px rgba(8,30,40,.12)
}
.home31 .h31-existing-badge b{display:block;font-size:14px;margin-bottom:4px}
.home31 .h31-existing-badge span{font-size:11px;line-height:1.4;color:#6d7e86}

/* Quiz */
.home31 .h31-quiz{
  display:grid;grid-template-columns:.78fr 1.22fr;
  gap:22px;
  align-items:stretch
}
.home31 .h31-quiz-intro{
  padding:34px;border-radius:26px;background:#0d2635;color:#fff
}
.home31 .h31-quiz-intro .h31-kicker{color:#8aa7b1}
.home31 .h31-quiz-intro h2{
  margin:0;font-size:clamp(34px,3.8vw,48px);line-height:1;letter-spacing:-.05em
}
.home31 .h31-quiz-intro p{
  margin:13px 0 0;color:rgba(255,255,255,.67);font-size:13px;line-height:1.5
}
.home31 .h31-quiz-proof{
  display:grid;gap:9px;margin-top:24px
}
.home31 .h31-quiz-proof div{
  padding:11px 13px;border-radius:13px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.74);font-size:11px;line-height:1.4
}
.home31 .h31-quiz-box{
  padding:34px;border:1px solid #dfe7ea;border-radius:26px;background:#fff
}
.home31 .h31-quiz-progress{
  display:flex;gap:6px;margin-bottom:26px
}
.home31 .h31-quiz-progress span{
  height:5px;flex:1;border-radius:999px;background:#e7edef
}
.home31 .h31-quiz-progress span.active{
  background:linear-gradient(90deg,#12cde3,#51e28c)
}
.home31 .h31-quiz-step{display:none}
.home31 .h31-quiz-step.active{display:block}
.home31 .h31-quiz-step small{
  display:block;color:#8a9aa2;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase
}
.home31 .h31-quiz-step h3{
  margin:10px 0 20px;font-size:29px;line-height:1.06;letter-spacing:-.045em
}
.home31 .h31-quiz-options{
  display:grid;grid-template-columns:1fr 1fr;gap:10px
}
.home31 .h31-quiz-option{
  min-height:62px;padding:13px 15px;
  border:1px solid #dce6e9;border-radius:14px;background:#fff;
  text-align:left;color:#233943;font-size:13px;font-weight:800;cursor:pointer
}
.home31 .h31-quiz-option:hover{background:#f2f8f6;border-color:#cce4dd}
.home31 .h31-quiz-option.selected{
  background:#eaf7f3;border-color:#8ed4be;color:#155e4e
}
.home31 .h31-quiz-nav{
  display:flex;justify-content:space-between;align-items:center;margin-top:22px
}
.home31 .h31-quiz-nav button{
  height:42px;padding:0 15px;border-radius:11px;border:1px solid #dbe5e8;background:#fff;
  font-size:12px;font-weight:900;cursor:pointer
}
.home31 .h31-quiz-nav button.primary{
  border:0;background:linear-gradient(135deg,#12cde3,#51e28c);color:#06313b
}
.home31 .h31-quiz-nav button:disabled{opacity:.35;cursor:default}
.home31 .h31-quiz-result{display:none}
.home31 .h31-quiz-result h3{
  margin:0 0 8px;font-size:32px;line-height:1.05;letter-spacing:-.045em
}
.home31 .h31-quiz-result p{
  margin:0;color:#71828a;font-size:14px;line-height:1.55
}
.home31 .h31-quiz-result ul{
  list-style:none;padding:0;margin:18px 0;display:grid;gap:9px
}
.home31 .h31-quiz-result li{
  font-size:13px;color:#415861
}
.home31 .h31-quiz-result li:before{
  content:"✓";color:#27c876;font-weight:900;margin-right:8px
}
.home31 .h31-quiz-result .result-actions{
  display:flex;gap:9px;flex-wrap:wrap;margin-top:18px
}
.home31 .h31-quiz-result .result-actions a,
.home31 .h31-quiz-result .result-actions button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 16px;border-radius:11px;
  font-size:12px;font-weight:900;cursor:pointer
}
.home31 .h31-quiz-result .result-actions a{
  background:linear-gradient(135deg,#12cde3,#51e28c);color:#06313b
}
.home31 .h31-quiz-result .result-actions button{
  border:1px solid #dbe5e8;background:#fff;color:#29424d
}

/* Shorter final form */
.home31 .h31-form-card{
  position:sticky;top:94px;align-self:start
}
.home31 .h31-form-card .form input[name="name"],
.home31 .h31-form-card .form input[name="phone"]{
  height:52px
}
.home31 .h31-form-card .form button{
  height:50px
}

/* Mobile sticky conversion bar */
.h31-mobile-cta{
  display:none
}
@media(max-width:1180px){
  .home31 .h31-value-grid,
  .home31 .h31-projects{grid-template-columns:1fr 1fr}
  .home31 .h31-project:last-child{grid-column:1/-1}
  .home31 .h31-existing,
  .home31 .h31-quiz{grid-template-columns:1fr}
  .home31 .h31-form-card{position:static}
}
@media(max-width:780px){
  .home31 .h31-value-grid,
  .home31 .h31-projects,
  .home31 .h31-quiz-options{grid-template-columns:1fr}
  .home31 .h31-project:last-child{grid-column:auto}
  .home31 .h31-existing-copy{padding:27px}
  .home31 .h31-existing-visual{min-height:330px}
  .home31 .h31-quiz-intro,.home31 .h31-quiz-box{padding:25px}
  .home31 .h31-hero-rotate{white-space:normal}
  .h31-mobile-cta{
    position:fixed;left:0;right:0;bottom:0;z-index:160;
    display:grid;grid-template-columns:.8fr 1.2fr;gap:8px;
    padding:9px 11px;
    background:rgba(255,255,255,.96);backdrop-filter:blur(12px);
    border-top:1px solid #dce6e9
  }
  .h31-mobile-cta a{
    min-height:45px;display:flex;align-items:center;justify-content:center;
    border-radius:11px;font-size:12px;font-weight:900
  }
  .h31-mobile-cta a:first-child{border:1px solid #dbe5e8;background:#fff;color:#1a3946}
  .h31-mobile-cta a:last-child{background:linear-gradient(135deg,#12cde3,#51e28c);color:#06313b}
  body{padding-bottom:62px}
}
