:root{
  --bg:#F4F6F6; --ink:#111111; --muted:#5B6363; --line:#D3DADA;
  --accent:#00C8CC; --on-accent:#111111; --orange:#F97316; --field:#FFFFFF;
  color-scheme:light;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#111111; --ink:#F5F5F5; --muted:#A3ABAB; --line:#2A2E2E;
    --accent:#00C8CC; --on-accent:#111111; --orange:#F97316; --field:#1A1C1C;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#111111; --ink:#F5F5F5; --muted:#A3ABAB; --line:#2A2E2E;
  --accent:#00C8CC; --on-accent:#111111; --orange:#F97316; --field:#1A1C1C;
  color-scheme:dark;
}
html{scroll-padding-top:env(safe-area-inset-top,0px);background:var(--bg)}
*,*::before,*::after{box-sizing:inherit}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;
}
a{color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
.wrap{max-width:440px;margin:0 auto;padding:60px 24px 56px}
.name,.page,.mark,.link strong,.sub,.policy h2,.submit,.steps b{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:500;letter-spacing:.01em}
.name{font-size:52px}
.page{font-size:40px}
.link strong{font-size:21px}
.submit{font-size:20px}

/* Home */
.avatar{
  width:104px;height:104px;border-radius:50%;margin:0 auto 18px;
  background:var(--line);display:block;overflow:hidden;
  color:var(--muted);font-size:13px;text-align:center;
}
.avatar img{width:100%;height:100%;object-fit:cover;display:block}
.name{
  font-weight:600;line-height:1;text-align:center;margin:0;
}
.role{text-align:center;color:var(--muted);margin:10px 0 14px;font-size:16px}
.proof{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 18px;margin:0 0 38px;
  font-size:15px;color:var(--muted)}
.proof span b{color:var(--ink);font-weight:600}
.promise{text-align:center;font-size:15px;color:var(--muted);margin:18px 0 0}
.promise b{color:var(--ink);font-weight:500}
.guarantee{border:1px solid var(--accent);border-radius:14px;padding:18px 20px;margin:0 0 32px}
.guarantee h2{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:500;font-size:22px;letter-spacing:.01em;margin:0 0 6px;color:var(--accent)}
.guarantee p{margin:0}
.logos{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:0 0 30px}
.logo{aspect-ratio:1/1;background:#FFFFFF;border-radius:12px;display:grid;place-items:center;
  text-align:center;font-size:11px;line-height:1.2;color:var(--muted);padding:8px}
.logo img{width:100%;height:100%;object-fit:contain;display:block}
.logos-label{font-size:13px;color:var(--muted);margin:0 0 8px}
.progress{margin:0 0 22px}
.progress-top{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);margin:0 0 8px}
.bar{height:6px;border-radius:99px;background:var(--line);overflow:hidden}
.bar i{display:block;height:100%;width:50%;background:var(--accent);border-radius:99px;transition:width .25s ease}
.step{display:none}
.step.on{display:block}
.backstep{display:block;margin:12px auto 0;background:none;border:0;color:var(--muted);font:inherit;font-size:15px;cursor:pointer;padding:6px}
.links{display:grid;gap:12px}
.link{
  display:block;text-decoration:none;color:var(--ink);background:var(--field);
  border:1px solid var(--line);border-radius:14px;padding:18px 20px;
  transition:transform .12s ease,border-color .12s ease;
}
.link:hover{border-color:var(--ink)}
.link:active{transform:scale(.985)}
.link strong{display:block;line-height:1.2}
.link span{display:block;color:var(--muted);font-size:15px;margin-top:3px}
.link.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.link.primary span{color:var(--on-accent);opacity:.7}
.link.primary:focus-visible{outline-color:var(--orange)}

.more{margin-top:56px;border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{
  list-style:none;cursor:pointer;padding:16px 0;color:var(--muted);
  font-size:15px;display:flex;justify-content:space-between;align-items:center;
}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:20px;line-height:1}
details[open] summary::after{content:"\2212"}
details[open] summary{color:var(--ink)}
.detail-body{padding:0 0 18px}
.detail-body p{margin:0 0 12px}
.detail-body p:last-child{margin-bottom:0}
.quote{margin:0 0 20px;padding-left:14px;border-left:2px solid var(--orange)}
.quote:last-child{margin-bottom:0}
.quote p{margin:0}
.quote cite{display:block;font-style:normal;color:var(--muted);font-size:14px;margin-top:4px}
.plain{list-style:none;padding:0;margin:0}
.plain li{padding:6px 0}
.plain li b{font-weight:500;color:var(--orange)}
.detail-body b{font-weight:500;color:var(--orange)}

.mark{
  margin:64px 0 0;text-align:center;font-weight:600;color:var(--accent);
  font-size:clamp(30px,10vw,42px);line-height:1.02;letter-spacing:-0.01em;
}
.mark .soft{display:block;color:var(--muted);font-weight:500;font-size:.5em;letter-spacing:0;margin-bottom:6px}
.foot{display:flex;justify-content:center;gap:22px;margin-top:30px;font-size:14px}
.foot a{color:var(--muted);text-decoration:none;padding:6px 0}

/* Inner pages */
.back{display:inline-block;color:var(--muted);text-decoration:none;font-size:15px;padding:6px 0;margin-bottom:26px}
.page{font-weight:600;line-height:1.05;margin:0 0 14px}
.lead{color:var(--muted);margin:0 0 30px}
.sub{font-size:22px;margin:0 0 14px}
.inside{list-style:none;padding:0;margin:0 0 30px;border-left:2px solid var(--accent)}
.policy h2{font-size:21px;margin:28px 0 8px}
.policy p,.policy li{color:var(--ink);margin:0 0 10px}
.policy ul{padding-left:20px;margin:0 0 10px}
.policy a{color:var(--ink)}
.inside li{padding:4px 0 4px 16px}

.steps{list-style:none;padding:0;margin:0 0 34px;display:grid;gap:14px;counter-reset:s}
.steps li{counter-increment:s;display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start}
.steps li::before{
  content:counter(s);width:28px;height:28px;border-radius:50%;
  border:1px solid var(--orange);color:var(--orange);display:grid;place-items:center;font-weight:500;font-size:14px;
}
.steps b{display:block;font-size:19px}
.steps span{color:var(--muted);font-size:15px}

.field{margin-bottom:20px;border:0;padding:0}
.field label,.field legend{display:block;font-size:15px;font-weight:500;margin:0 0 7px;padding:0}
.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input[type=text],input[type=email],input[type=tel],input[type=number],textarea{
  width:100%;font:inherit;font-size:16px;padding:13px 14px;
  border:1px solid var(--line);border-radius:12px;background:var(--field);color:var(--ink);
}
textarea{min-height:92px;resize:vertical}
input:focus,textarea:focus{outline:none;border-color:var(--accent)}
.choices{display:flex;flex-wrap:wrap;gap:8px}
.choice{position:relative}
.choice input{position:absolute;opacity:0;width:1px;height:1px}
.choice span{
  display:inline-block;padding:10px 15px;border:1px solid var(--line);
  border-radius:999px;font-size:15px;cursor:pointer;background:var(--field);
}
.choices.nums .choice span{min-width:42px;text-align:center;padding:10px 0}
.choice input:checked + span{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.choice input:focus-visible + span{outline:3px solid var(--accent);outline-offset:2px}
.submit{
  width:100%;padding:16px;border:0;border-radius:14px;margin-top:6px;
  background:var(--accent);color:var(--on-accent);
  font-size:20px;cursor:pointer;
}
.submit:disabled{opacity:.6;cursor:default}
.submit:focus-visible{outline-color:var(--orange)}
.fine{font-size:13px;color:var(--muted);text-align:center;margin:12px 0 0}
.error{color:var(--orange);font-size:14px;margin:8px 0 0;display:none}
.error.show{display:block}

.placeholder{
  border:1px dashed var(--line);border-radius:16px;padding:24px 18px;
  display:grid;place-items:center;text-align:center;color:var(--muted);font-size:14px;margin:0 0 30px;
}
.placeholder.video{aspect-ratio:4/5;max-height:440px}
.placeholder.cal{min-height:320px}
.cal-embed{min-height:600px;margin:0 0 30px;border-radius:16px;overflow:hidden}
.after{margin-top:40px}

/* Honeypot: hidden from sighted users, still reachable by bots that ignore CSS display */
.hp-field{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}

@media (prefers-reduced-motion: reduce){ .link,.bar i{transition:none} }
