:root{
  --ultra:#2b1bd6;
  --deep:#1a1250;
  --tang:#ff5a36;
  --lilac:#ebe6ff;
  --lilac-2:#d9d1ff;
  --white:#fff;
  --muted:#4d4780;
  --wrap:1160px;
  --display:"Dela Gothic One","Arial Black",sans-serif;
  --body:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;font-family:var(--body);font-size:1.0625rem;line-height:1.6;color:var(--deep);background:var(--white)}
img,svg{max-width:100%;display:block}
a{color:var(--ultra)}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--tang);outline-offset:3px}
h1,h2,h3{font-family:var(--display);font-weight:400;color:var(--ultra);margin:0;text-wrap:balance}
h1{font-size:clamp(2.3rem,5.6vw,4.4rem);line-height:1.08;letter-spacing:-.01em}
h2{font-size:clamp(1.8rem,3.6vw,2.8rem);line-height:1.12}
h3{font-size:1.2rem;line-height:1.3}
p{margin:0 0 1em;max-width:62ch}
.lead{font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.5}
.fine{font-size:.92rem;color:var(--muted)}
.wrap{width:min(var(--wrap),100% - 2.5rem);margin-inline:auto}
.narrow{max-width:780px}
.skip{position:absolute;left:-999px}
.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.6rem 1rem}
section{padding:clamp(3.5rem,8vw,6.5rem) 0}

/* header */
.top{background:#fff;border-bottom:3px solid var(--ultra);position:sticky;top:0;z-index:20}
.top .wrap{display:flex;align-items:center;gap:1.5rem;min-height:84px}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ultra)}
.mark-s{width:92px;height:auto}
.brand span{font-family:var(--display);font-size:1.05rem;letter-spacing:.04em}
.nav{margin-left:auto;display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap;justify-content:flex-end}
.nav a{color:var(--deep);text-decoration:none;font-weight:600;padding:.3rem 0;border-bottom:3px solid transparent}
.nav a:hover,.nav a[aria-current=page]{border-bottom-color:var(--tang)}

/* buttons */
.btn{display:inline-block;font:700 1.0625rem var(--body);text-decoration:none;padding:.9rem 1.5rem;border:3px solid var(--deep);border-radius:999px;cursor:pointer;color:var(--deep)}
.btn-go{background:var(--tang);box-shadow:4px 4px 0 var(--deep)}
.btn-go:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--deep)}
.btn-top{padding:.6rem 1.1rem;white-space:nowrap}
.btn-line{background:transparent}
.btn-line:hover{background:var(--deep);color:#fff}
.actions{display:flex;flex-wrap:wrap;gap:1rem;margin:1.8rem 0 1.2rem}

/* hero */
.hero{background:var(--lilac);padding-bottom:clamp(3rem,6vw,5rem)}
.hero-g{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}
.hero .lead{margin-top:1.4rem;max-width:46ch}
.hero-note{font-weight:700;color:var(--ultra);margin:0}
.mark-xl{width:100%;height:auto}
.hero-eye{transform:rotate(-4deg)}

/* section heads */
.head{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(1rem,5vw,5rem);align-items:end;margin-bottom:2.6rem}
.head p{margin:0;font-size:1.15rem;color:var(--muted)}

/* steps */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem;counter-reset:s}
.steps.three{grid-template-columns:repeat(3,1fr)}
.steps li{counter-increment:s;background:var(--lilac);padding:1.4rem 1.3rem 1.5rem;border-radius:18px}
.steps li::before{content:counter(s);font:400 3rem/1 var(--display);color:var(--tang);display:block;margin-bottom:.7rem;-webkit-text-stroke:2px var(--deep)}
.steps h3{margin-bottom:.5rem}
.steps p{margin:0;font-size:1rem}

/* before and after */
.demo{background:var(--ultra);color:#fff}
.demo h2{color:#fff}
.demo .head p{color:var(--lilac)}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.ba figure{margin:0}
.ba figcaption{font:400 1.3rem var(--display);margin-bottom:.7rem;color:var(--lilac)}
.frame{background:#fff;border:3px solid var(--deep);border-radius:14px;overflow:hidden;box-shadow:8px 8px 0 var(--deep);color:#111;height:360px;display:flex;flex-direction:column}
.bar{background:var(--lilac-2);padding:.55rem .7rem;display:flex;gap:.35rem;border-bottom:3px solid var(--deep)}
.bar i{width:11px;height:11px;border-radius:50%;background:var(--deep)}
.old-page{font-family:"Times New Roman",Times,serif;padding:1rem 1.1rem;background:#e9e9d8;flex:1;font-size:.95rem;line-height:1.35}
.old-page p{margin:0 0 .6rem;max-width:none}
.old-h{font-size:1.35rem;font-weight:700;color:#b00020;text-align:center}
.old-n{color:#00c;text-decoration:underline;text-align:center}
.old-img{border:1px solid #777;background:#fff;color:#777;font-size:.8rem;height:70px;display:grid;place-items:center;margin-bottom:.6rem}
.old-s{color:#777;font-style:italic}
.old-f{font-size:.75rem;color:#555;text-align:center}
.new-page{flex:1;display:flex;flex-direction:column;font-family:var(--body)}
.new-top{display:flex;justify-content:space-between;align-items:center;padding:.7rem 1rem;font-size:.9rem;border-bottom:1px solid #ddd}
.new-top span{font-weight:700;color:#0b6b4f}
.new-hero{flex:1;background:#0b3b33;color:#fff;padding:1.3rem 1.1rem;display:flex;flex-direction:column;justify-content:center;gap:.5rem}
.new-h{font-size:1.5rem;font-weight:700;line-height:1.15;margin:0;max-width:16ch}
.new-b{margin:0;color:#cfe7df;font-size:.95rem}
.new-btn{align-self:flex-start;background:#ffd166;color:#111;font-weight:700;padding:.5rem .9rem;border-radius:8px;font-size:.9rem;margin-top:.3rem}
.new-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;padding:.8rem 1rem}
.new-row span{height:38px;background:#e6efec;border-radius:6px}
.demo-note{margin:1.6rem 0 0;color:var(--lilac);font-size:.95rem}

/* two-column blocks */
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.two.stretch{align-items:stretch}
.two h2{margin-bottom:1rem}

/* price */
.price-band{background:var(--lilac)}
.price-card{background:#fff;border:3px solid var(--deep);border-radius:22px;padding:2rem;box-shadow:8px 8px 0 var(--ultra)}
.price-card.alt{box-shadow:8px 8px 0 var(--tang)}
.price{font:400 clamp(2.8rem,6vw,4.4rem)/1 var(--display);color:var(--ultra);margin:0 0 .6rem}
.price span{font:600 1.1rem var(--body);color:var(--deep)}
.plus{margin:0;color:var(--muted)}
.tag{font-weight:700;margin:0 0 .6rem;color:var(--muted)}
.price-band .btn{margin-top:.6rem}

/* who */
.portrait{position:relative;max-width:400px}
.portrait img{width:100%;height:auto;border:3px solid var(--deep);border-radius:22px;position:relative;z-index:1;filter:grayscale(1)}
.portrait::after{content:"";position:absolute;inset:18px -18px -18px 18px;background:var(--tang);border:3px solid var(--deep);border-radius:22px}
.who .btn{margin-top:.5rem}

/* lists */
.ticks{list-style:none;margin:1.2rem 0;padding:0}
.ticks li{padding:.5rem 0 .5rem 1.9rem;position:relative;border-bottom:1px solid var(--lilac-2)}
.ticks li::before{content:"";position:absolute;left:0;top:.95rem;width:14px;height:14px;border-radius:50%;background:var(--tang);border:2px solid var(--deep)}
.big-ticks li{font-size:1.2rem;padding-top:.8rem;padding-bottom:.8rem}
.big-ticks li::before{top:1.35rem}

/* preview form */
.preview{background:var(--lilac)}
form{background:#fff;border:3px solid var(--deep);border-radius:22px;padding:clamp(1.3rem,3vw,2.2rem);box-shadow:8px 8px 0 var(--ultra)}
label{display:block;font-weight:700;margin:0 0 .35rem}
input{width:100%;font:1rem var(--body);padding:.8rem .9rem;border:2px solid var(--deep);border-radius:10px;margin-bottom:1.1rem;background:#fff;color:var(--deep)}
form .btn{width:100%;margin-bottom:1rem}
form .fine{margin:0}
.hp{position:absolute;left:-9999px}

/* inner pages */
.page-head{background:var(--lilac);padding-bottom:clamp(3rem,6vw,4.5rem)}
.page-head h1{max-width:18ch}
.page-head .lead{margin-top:1.2rem;max-width:52ch}
.page-head.tall{min-height:60vh}
.page-head .btn{margin-top:1rem}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.three div{border-top:4px solid var(--ultra);padding-top:1.1rem}
.three h3{margin-bottom:.6rem}
.three.four{grid-template-columns:repeat(4,1fr);gap:1.6rem}
.why{background:#fff;padding-top:0}
.made{background:#fff}
.rules{background:var(--lilac)}
.rules h2,.faq h2{margin-bottom:1.5rem}
details{border-bottom:2px solid var(--lilac-2);padding:1rem 0}
summary{font-weight:700;font-size:1.15rem;cursor:pointer;color:var(--deep)}
details p{margin:.8rem 0 0}
.pay{background:var(--lilac)}
.pay .steps li{background:#fff}

/* footer */
.foot{background:var(--ultra);color:var(--lilac);padding:3.5rem 0 2rem}
.foot .wrap{display:grid;grid-template-columns:200px 1.4fr 1fr;gap:2.5rem;align-items:start}
.mark-f{width:100%;height:auto}
.foot a{color:#fff}
.foot-big{font:400 1.5rem/1.2 var(--display);color:#fff;margin-bottom:.8rem}
.foot nav{display:flex;flex-direction:column;gap:.45rem}
.foot .small{grid-column:1/-1;border-top:1px solid #5a4ee6;padding-top:1.2rem;margin:0;max-width:none;font-size:.92rem}

@media (max-width:900px){
  .hero-g,.head,.two,.ba,.three,.three.four,.steps,.steps.three,.foot .wrap{grid-template-columns:1fr}
  .head{gap:.8rem;margin-bottom:1.8rem}
  .hero-eye{max-width:360px;margin-inline:auto;order:-1}
  .top .wrap{flex-wrap:wrap;gap:.4rem 1rem;padding:.5rem 0 .2rem;min-height:0}
  .btn-top{margin-left:auto;font-size:.95rem;padding:.55rem .9rem}
  .nav{order:3;width:100%;margin:0;justify-content:flex-start;gap:1.4rem;padding-bottom:.5rem}
  .nav a{font-size:.98rem}
  .mark-s{width:76px}
  .portrait{margin-right:18px}
  .foot-mark{max-width:160px}
  .btn{text-align:center}
  .actions .btn{width:100%}
}
