:root{
  --bg:#FCF8FF;
  --surface:#FFFFFF;
  --text:#211D24;
  --muted:#6E6674;
  --purple:#7444C6;
  --purple-dark:#5D30A8;
  --purple-soft:#F0E8FB;
  --red:#CC0717;
  --line:#E7DFEA;
  --shadow:0 16px 50px rgba(42,23,55,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  line-height:1.55;
}
a{color:inherit}
.wrap{width:min(1120px, calc(100% - 40px)); margin:0 auto}
nav{
  position:sticky; top:0; z-index:10;
  backdrop-filter:blur(16px);
  background:rgba(252,248,255,.87);
  border-bottom:1px solid rgba(231,223,234,.75);
}
.nav-inner{height:74px; display:flex; align-items:center; justify-content:space-between; gap:24px}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; font-weight:800; font-size:20px; letter-spacing:-.02em}
.brand img{width:40px; height:40px; object-fit:contain}
.nav-links{display:flex; align-items:center; gap:22px; font-size:14px; font-weight:650; color:var(--muted)}
.nav-links a{text-decoration:none}
.nav-links a:hover{color:var(--purple)}
.hero{
  padding:74px 0 48px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
  gap:58px;
}
.eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  padding:7px 11px; border-radius:999px;
  background:var(--purple-soft); color:var(--purple-dark);
  font-weight:750; font-size:13px; letter-spacing:.01em;
}
h1{
  margin:20px 0 18px;
  font-size:clamp(46px, 7vw, 78px);
  line-height:.98; letter-spacing:-.055em;
}
.lead{
  margin:0 0 28px;
  color:var(--muted);
  font-size:clamp(18px,2vw,21px);
  max-width:690px;
}
.actions{display:flex; flex-wrap:wrap; gap:12px}
.button{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:48px; padding:0 18px; border-radius:14px;
  text-decoration:none; font-weight:760; font-size:15px;
}
.button.primary{background:var(--purple); color:white; box-shadow:0 8px 24px rgba(116,68,198,.22)}
.button.primary:hover{background:var(--purple-dark)}
.button.secondary{border:1px solid var(--line); background:rgba(255,255,255,.55); color:var(--text)}
.hero-art{
  display:flex; justify-content:center; align-items:center;
  min-height:410px;
}
.logo-card{
  width:min(100%, 430px);
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:34px;
  box-shadow:var(--shadow);
  padding:40px;
  display:flex; justify-content:center; align-items:center;
}
.logo-card img{width:100%; height:auto; display:block}
.section{padding:64px 0}
.section-head{max-width:720px; margin-bottom:30px}
.section h2{font-size:clamp(30px,4vw,46px); margin:0 0 12px; letter-spacing:-.035em}
.section p{color:var(--muted); margin:0}
.grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.card{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:22px;
  padding:24px;
  box-shadow:0 8px 28px rgba(42,23,55,.05);
}
.icon{
  width:42px; height:42px; display:grid; place-items:center;
  border-radius:13px; background:var(--purple-soft); color:var(--purple);
  font-weight:900; font-size:18px;
}
.card h3{margin:16px 0 8px; font-size:20px; letter-spacing:-.02em}
.card p{font-size:15px}
.flow{
  background:linear-gradient(135deg, rgba(116,68,198,.08), rgba(204,7,23,.04));
  border:1px solid var(--line);
  border-radius:28px;
  padding:32px;
}
.flow-steps{display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:24px}
.step{background:rgba(255,255,255,.72); border:1px solid var(--line); border-radius:18px; padding:18px}
.step strong{display:block; margin-bottom:6px}
.step span{color:var(--muted); font-size:14px}
.note{
  margin-top:22px; padding:16px 18px; border-left:4px solid var(--purple);
  background:rgba(255,255,255,.65); border-radius:0 14px 14px 0;
  color:var(--muted); font-size:14px;
}
.cta{
  margin:48px 0 80px;
  padding:34px;
  border-radius:28px;
  background:var(--text);
  color:white;
  display:flex; justify-content:space-between; align-items:center; gap:24px;
}
.cta h2{margin:0 0 8px; font-size:30px}
.cta p{margin:0; color:#D4CED7}
.cta .button{background:white; color:var(--text); flex:0 0 auto}
footer{border-top:1px solid var(--line); padding:28px 0 42px; color:var(--muted); font-size:14px}
.footer-inner{display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap}
.footer-links{display:flex; gap:18px}
.footer-links a{text-decoration:none}
.footer-links a:hover{color:var(--purple)}

.page{padding:56px 0 90px}
.page-card{
  max-width:860px; margin:0 auto;
  background:var(--surface); border:1px solid var(--line);
  border-radius:26px; padding:clamp(24px,5vw,50px); box-shadow:var(--shadow)
}
.page h1{font-size:clamp(38px,6vw,56px); margin-top:0}
.page h2{margin:34px 0 10px; font-size:24px; letter-spacing:-.02em}
.page p,.page li{color:var(--muted)}
.page ul{padding-left:22px}
.meta{font-size:14px; color:var(--muted); margin-top:-4px}
.back{display:inline-block; margin-bottom:26px; color:var(--purple); font-weight:700; text-decoration:none}

@media (max-width:860px){
  .hero{grid-template-columns:1fr; padding-top:48px; gap:34px}
  .hero-art{min-height:unset}
  .logo-card{max-width:360px; padding:30px}
  .grid{grid-template-columns:1fr}
  .flow-steps{grid-template-columns:1fr 1fr}
  .cta{align-items:flex-start; flex-direction:column}
}
@media (max-width:560px){
  .wrap{width:min(100% - 28px,1120px)}
  .nav-inner{height:66px}
  .nav-links a:not(:last-child){display:none}
  .brand{font-size:18px}
  .brand img{width:34px;height:34px}
  .hero{padding-top:38px}
  h1{font-size:48px}
  .lead{font-size:18px}
  .logo-card{padding:24px; border-radius:26px}
  .section{padding:48px 0}
  .flow{padding:24px}
  .flow-steps{grid-template-columns:1fr}
}
