/* Final brand questionnaire repair layer. */
html{
  text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
  overflow-x:hidden !important;
}

body{
  font-size:17px;
  line-height:1.68;
  overflow-x:hidden !important;
}

.topbar{
  background:rgba(12,63,81,.88) !important;
  -webkit-backdrop-filter:blur(22px) saturate(1.22);
  backdrop-filter:blur(22px) saturate(1.22);
  border-bottom:1px solid rgba(255,255,255,.14);
}

.topbar-name{
  font-size:12px !important;
  letter-spacing:1.8px !important;
  max-width:none !important;
}

.home-btn,
.lang-btn{
  min-height:40px;
  font-size:13px !important;
}

.main{
  background:
    radial-gradient(circle at 18% 8%,rgba(189,211,226,.32),transparent 32%),
    linear-gradient(180deg,#F7F6F4 0%,#EFE7DD 100%);
}

.step{
  width:min(720px,100% - 28px) !important;
  padding-top:clamp(28px,5vw,52px) !important;
  box-sizing:border-box;
  overflow:hidden;
}

.step-title,
.intro-hook,
.final-title{
  font-size:clamp(32px,6vw,46px) !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
  max-width:100%;
  overflow-wrap:break-word;
}

.step-sub,
.intro-sub,
.final-sub,
.option-desc,
.hint{
  color:#334B55 !important;
  font-size:clamp(16px,2vw,18px) !important;
  line-height:1.72 !important;
}

.option-card,
.final-package,
.fast-hero,
.fast-form{
  background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,255,255,.54)) !important;
  border:1px solid rgba(255,255,255,.78) !important;
  -webkit-backdrop-filter:blur(22px) saturate(1.22) !important;
  backdrop-filter:blur(22px) saturate(1.22) !important;
  box-shadow:0 18px 52px rgba(12,63,81,.10),inset 0 1px 0 rgba(255,255,255,.84) !important;
}

.option-card{
  min-height:68px !important;
  padding:20px !important;
}

.option-title,
.form-label{
  font-size:clamp(16px,2vw,18px) !important;
}

.form-input,
.fast-fields input,
.fast-timing select{
  min-height:54px !important;
  font-size:17px !important;
  background:rgba(255,255,255,.86) !important;
}

.bottom-nav{
  background:rgba(247,246,244,.82) !important;
  -webkit-backdrop-filter:blur(24px) saturate(1.18) !important;
  backdrop-filter:blur(24px) saturate(1.18) !important;
  border-top:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 -18px 48px rgba(12,63,81,.10);
}

.btn-primary,
.btn-secondary,
.btn-wa,
.fast-submit{
  min-height:54px !important;
  font-size:17px !important;
}

html[dir="rtl"] .topbar,
html[dir="rtl"] .step,
html[dir="rtl"] .option-card,
html[dir="rtl"] .form-label,
html[dir="rtl"] .hint{
  text-align:right;
}

html[dir="ltr"] .topbar,
html[dir="ltr"] .step,
html[dir="ltr"] .option-card,
html[dir="ltr"] .form-label,
html[dir="ltr"] .hint{
  text-align:left;
}

@media(max-width:640px){
  body{
    font-size:16px;
  }

  .topbar{
    padding:10px 14px !important;
    max-width:100vw;
    overflow:hidden;
  }

  .topbar-name{
    max-width:128px !important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .step{
    width:min(100% - 22px,540px) !important;
    padding-inline:0 !important;
    max-width:calc(100vw - 22px) !important;
  }

  .step-title,
  .intro-hook,
  .final-title{
    font-size:clamp(30px,9vw,40px) !important;
  }

  .bottom-nav{
    padding:12px !important;
  }
}
