/* ==========================================================================
   OneTapReviews - get started page, 2026 redesign
   Loaded after landing-v2.css, so it inherits the same tokens, buttons,
   nav and header logo treatment. Only what this page adds lives here.
   ========================================================================== */

/* ---------- the navy band the form sits on ---------- */
.lead-hero{
  position:relative;overflow:hidden;padding:48px 0 76px;
  background:linear-gradient(165deg,var(--navy-950) 0%,var(--navy-900) 40%,var(--navy-800) 74%,var(--navy-700) 100%);
}
.lead-fx{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.lead-fx .aurora{position:absolute;border-radius:50%;filter:blur(90px)}
.lead-fx .a1{width:560px;height:560px;background:rgba(47,128,237,.5);top:-200px;right:-120px}
.lead-fx .a2{width:420px;height:420px;background:rgba(247,148,29,.28);bottom:-160px;left:-110px}
.lead-fx .a3{width:460px;height:460px;background:rgba(124,92,245,.24);top:40%;left:44%}
.lead-grid-bg{
  position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(80% 60% at 40% 6%,#000,transparent 78%);
  -webkit-mask-image:radial-gradient(80% 60% at 40% 6%,#000,transparent 78%);
}
.lead-hero .wrap{position:relative;z-index:2}
.lead-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:52px;align-items:start}

/* ---------- left: the pitch ---------- */
.lead-aside{padding-top:6px}
.lead-aside h1{font-size:clamp(30px,3.9vw,46px);color:#fff;margin:20px 0 0;letter-spacing:-.035em;line-height:1.1}
.lead-aside h1 .grad{
  background:linear-gradient(105deg,var(--amber-400),var(--amber-500) 70%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.lead-aside .lede{font-size:17px;line-height:1.7;color:#bed6f5;margin-top:20px;max-width:480px}

.lead-list{margin:30px 0 0;display:flex;flex-direction:column;gap:15px}
.lead-list li{display:flex;gap:13px;align-items:flex-start;font-size:15px;line-height:1.6;color:#c8dcf6}
.lead-list li i{color:var(--amber-400);font-size:18px;margin-top:1px;flex-shrink:0}
.lead-list li b{color:#fff;font-weight:700}

.lead-note{
  display:flex;align-items:center;gap:12px;margin-top:30px;padding:16px 18px;border-radius:var(--r);
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.17);backdrop-filter:blur(10px);
  color:#dbe8fb;font-size:13.5px;font-weight:600;line-height:1.5;
}
.lead-note i{color:var(--amber-400);font-size:17px;flex-shrink:0}

/* ---------- right: the form card ---------- */
.lead-card{
  background:var(--surface);border-radius:var(--r-xl);padding:32px;position:relative;overflow:hidden;
  box-shadow:0 34px 84px rgba(4,18,43,.44),0 0 0 1px rgba(255,255,255,.5);
}
.lead-card::before{
  content:"";position:absolute;inset:0 0 auto 0;height:4px;
  background:linear-gradient(90deg,var(--navy-800),var(--blue-500) 55%,var(--amber-500));
}
.lead-head{margin-bottom:22px}
.lead-head h2{font-size:25px;letter-spacing:-.03em}
.lead-head p{font-size:14.5px;color:var(--ink-soft);margin-top:9px;line-height:1.6}

/* grouped sections, so the form reads as two short asks not one long one */
.f-group{margin-bottom:20px}
.f-group:last-of-type{margin-bottom:14px}
.f-legend{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.f-legend span{
  width:28px;height:28px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;
  font-size:12.5px;font-weight:800;color:#fff;
  background:linear-gradient(135deg,var(--navy-800),var(--blue-500));
}
.f-legend b{font-size:15px;font-weight:800;letter-spacing:-.02em}
.f-legend i{flex:1;height:1px;background:var(--line);border:0;margin-left:4px}

.f{margin-bottom:13px}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.f label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--ink-2);margin-bottom:6px}
.f label em{color:var(--rose-500);font-style:normal;font-size:14px;line-height:1}
.f label small{font-weight:600;color:var(--ink-dim);font-size:11.5px;margin-left:auto;letter-spacing:.02em}

.f-in{position:relative}
.f-in > i{
  position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--ink-dim);
  font-size:16px;pointer-events:none;transition:color .18s;z-index:1;
}
.f input,.f textarea,.f select{
  width:100%;border:1.5px solid var(--line);border-radius:13px;padding:13px 16px;
  font-size:15px;font-family:inherit;color:var(--ink);background:var(--surface-2);
  transition:border-color .18s,box-shadow .18s,background .18s;min-height:50px;
}
.f-in input,.f-in select{padding-left:45px}
.f textarea{resize:vertical;line-height:1.7;min-height:142px;padding-top:14px}
.f input::placeholder,.f textarea::placeholder{color:#a7b6ca}
.f input:focus,.f textarea:focus,.f select:focus{
  outline:0;background:var(--surface);border-color:var(--blue-500);box-shadow:0 0 0 4px rgba(30,99,214,.13);
}
.f-in:focus-within > i{color:var(--blue-600)}

/* the native select, given a custom chevron */
.f select{
  appearance:none;-webkit-appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath fill='none' stroke='%238496ad' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;padding-right:42px;
}
.f select:invalid,.f select.empty{color:#a7b6ca}

.f.bad input,.f.bad textarea,.f.bad select{border-color:var(--rose-500);background:#fff7f6}
.f.bad .f-in > i{color:var(--rose-500)}
.f.ok input,.f.ok textarea,.f.ok select{border-color:rgba(18,183,106,.55)}
.f .err{display:block;font-size:12.5px;color:#c53727;font-weight:600;margin-top:7px;min-height:1px}
.f .err:not(:empty){display:flex;align-items:center;gap:6px}
.f .err:not(:empty)::before{content:"\F33A";font-family:"bootstrap-icons";font-size:13px}

/* description helper + live counter bar */
.f-help{display:flex;align-items:flex-start;gap:14px;margin-top:10px}
.f-help span{font-size:12.5px;color:var(--ink-dim);line-height:1.6;flex:1}
.f-meter{flex-shrink:0;text-align:right;min-width:74px}
.f-meter b{font-size:12.5px;font-weight:800;color:var(--ink-soft);font-variant-numeric:tabular-nums}
.f-meter .bar{height:4px;border-radius:4px;background:var(--line);margin-top:6px;overflow:hidden}
.f-meter .bar span{
  display:block;height:100%;width:0;border-radius:4px;transition:width .3s var(--ease),background .3s;
  background:linear-gradient(90deg,var(--blue-500),var(--blue-400));
}
.f-meter.good .bar span{background:linear-gradient(90deg,var(--green-600),var(--green-500))}
.f-meter.good b{color:var(--green-600)}

.lead-submit{width:100%;margin-top:8px}
.lead-fine{font-size:12.5px;color:var(--ink-dim);text-align:center;margin-top:16px;line-height:1.65}
.lead-fine i{color:var(--green-500);margin-right:5px}

.spin{display:inline-block;animation:sp .9s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}

/* ---------- success ---------- */
.done-view{display:none;text-align:center;padding:14px 4px 6px}
.done-view.on{display:block}
.done-tick{
  width:86px;height:86px;border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;
  font-size:40px;color:#fff;background:linear-gradient(135deg,var(--green-600),var(--green-500));
  box-shadow:0 18px 44px rgba(18,183,106,.38);
}
.done-view h2{font-size:26px;letter-spacing:-.03em}
.done-view p{font-size:15.5px;line-height:1.75;color:var(--ink-soft);margin:16px auto 0;max-width:400px}
.done-view p b{color:var(--ink)}
.ref{
  display:inline-flex;align-items:center;gap:9px;margin:24px 0;padding:12px 22px;border-radius:30px;
  background:var(--blue-50);border:1px solid var(--blue-100);font-size:13.5px;color:var(--ink-soft);font-weight:600;
}
.ref b{color:var(--blue-700);letter-spacing:.09em;font-size:15px}
.done-next{
  margin-top:6px;padding-top:22px;border-top:1px solid var(--line);
  display:flex;gap:11px;justify-content:center;flex-wrap:wrap;
}

/* ---------- what happens next ---------- */
/* the hero above already ends with its own padding - adding a top padding
   here stacked the two into a ~150px hole */
.next{padding:0 0 74px}
.next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.next-card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px;
  box-shadow:var(--sh-sm);position:relative;transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.next-card:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.next-card .n{
  width:44px;height:44px;border-radius:14px;display:grid;place-items:center;margin-bottom:18px;
  font-size:16px;font-weight:800;color:#fff;
  background:linear-gradient(135deg,var(--navy-800),var(--blue-500));box-shadow:0 10px 24px rgba(30,99,214,.28);
}
.next-card h3{font-size:17px;margin-bottom:9px}
.next-card p{font-size:14.5px;line-height:1.7;color:var(--ink-soft)}

/* ---------- toast ---------- */
.toast-l{
  position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);z-index:200;opacity:0;
  background:var(--navy-900);color:#fff;padding:15px 24px;border-radius:var(--r);
  font-size:14px;font-weight:600;box-shadow:0 20px 48px rgba(4,18,43,.4);
  max-width:88%;text-align:center;transition:opacity .26s,transform .26s;pointer-events:none;
  display:flex;align-items:center;gap:10px;
}
.toast-l.show{opacity:1;transform:translate(-50%,0)}
.toast-l.bad{background:#b3261e}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .lead-grid{gap:38px}
  .lead-card{padding:32px}
}

@media (max-width:980px){
  .lead-hero{padding:44px 0 72px}
  .lead-grid{grid-template-columns:1fr;gap:36px}
  .lead-aside{padding-top:0;text-align:center}
  .lead-aside .lede{margin-left:auto;margin-right:auto}
  .lead-list{text-align:left;max-width:520px;margin-left:auto;margin-right:auto}
  .lead-note{text-align:left;max-width:520px;margin-left:auto;margin-right:auto}
  .next{padding:0 0 60px}
  .next-grid{grid-template-columns:1fr;gap:16px}
}

@media (max-width:760px){
  .lead-hero{padding:34px 0 56px}
  .lead-aside h1{font-size:clamp(27px,7.6vw,36px)}
  .lead-aside .lede{font-size:15.5px}
  .lead-card{padding:22px 18px;border-radius:var(--r-lg)}
  .lead-head h2{font-size:21px}
  .lead-head p{font-size:14px}
  .f input,.f textarea,.f select{font-size:16px}   /* 16px stops iOS zooming on focus */
  .next{padding:0 0 48px}
  .next-card{padding:24px 22px;border-radius:var(--r-md)}
  /* clears the floating WhatsApp button in the corner */
  .toast-l{bottom:88px;font-size:13.5px;padding:13px 18px}
}

@media (max-width:560px){
  .f-row{grid-template-columns:1fr;gap:0}
  .f-help{flex-direction:column;gap:8px}
  .f-meter{text-align:left;width:100%}
  .done-next{flex-direction:column}
  .done-next .btn{width:100%}
}

@media (prefers-reduced-motion:reduce){
  .spin{animation:none}
}
