:root{
  --ink:#111114; --blue:#2E5BFF; --graphite:#5A5F6B;
  --vellum:#F6F6FA; --line:#E2E4EA; --paper:#fff;
  --maxw:920px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; color:var(--ink); background:var(--vellum);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.6; -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:"New York","Times New Roman",Georgia,serif; line-height:1.2; letter-spacing:-.01em}
a{color:var(--blue); text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 22px}

/* nav */
.nav{position:sticky; top:0; z-index:10; background:rgba(246,246,250,.82); backdrop-filter:saturate(180%) blur(14px); border-bottom:1px solid var(--line)}
.nav .wrap{display:flex; align-items:center; justify-content:space-between; height:60px}
.brand{display:flex; align-items:center; gap:10px; font-weight:700; color:var(--ink)}
.brand:hover{text-decoration:none}
.brand .mark{width:30px;height:30px;border-radius:8px;background:var(--ink);display:grid;place-items:center;color:#fff;font-family:"New York",Georgia,serif;font-style:italic;font-size:18px}
.nav a.link{color:var(--graphite); font-size:14px; font-weight:600; margin-left:18px}
.nav a.link:hover{color:var(--ink)}

/* hero */
.hero{padding:74px 0 56px; text-align:center}
.hero h1{font-size:clamp(38px,7vw,64px); margin:0 0 14px}
.hero p{font-size:clamp(17px,2.4vw,21px); color:var(--graphite); max-width:620px; margin:0 auto 28px}
.cta{display:inline-flex; align-items:center; gap:10px; background:var(--ink); color:#fff; padding:14px 26px; border-radius:14px; font-weight:600}
.cta:hover{text-decoration:none; opacity:.92}
.sig{font-family:"Snell Roundhand","Apple Chancery","Brush Script MT",cursive; font-size:clamp(46px,10vw,92px); color:var(--ink); margin:30px 0 0; transform:rotate(-3deg)}

/* sections */
section{padding:48px 0}
section h2{font-size:clamp(26px,4vw,36px); margin:0 0 8px; text-align:center}
.sub{color:var(--graphite); text-align:center; max-width:560px; margin:0 auto 36px}
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:18px}
.card{background:var(--paper); border:1px solid var(--line); border-radius:20px; padding:24px}
.card h3{font-size:20px; margin:0 0 6px}
.card p{color:var(--graphite); margin:0; font-size:15px}
.ico{width:44px;height:44px;border-radius:12px;background:rgba(46,91,255,.10);display:grid;place-items:center;font-size:22px;margin-bottom:14px}

/* pricing */
.prices{display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:16px; max-width:760px; margin:0 auto}
.price{background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:22px; text-align:center}
.price.best{border-color:var(--blue); box-shadow:0 8px 30px rgba(46,91,255,.12)}
.price .amt{font-family:"New York",Georgia,serif; font-size:34px; font-weight:700}
.price .per{color:var(--graphite); font-size:14px}
.badge{display:inline-block; font-size:12px; font-weight:700; color:var(--blue); background:rgba(46,91,255,.10); padding:3px 10px; border-radius:999px; margin-top:8px}

/* content pages */
.page{background:var(--paper); border:1px solid var(--line); border-radius:20px; padding:34px; margin:34px 0}
.page h1{font-size:clamp(30px,5vw,42px); margin:0 0 4px}
.page .eff{color:var(--graphite); font-size:14px; margin:0 0 24px}
.page h2{font-size:22px; text-align:left; margin:28px 0 8px}
.page p,.page li{color:#2b2d34}
.page ul{padding-left:20px}
.faq{margin:18px 0}
.faq h3{font-size:18px; margin:18px 0 4px}

/* footer */
footer{border-top:1px solid var(--line); padding:34px 0; color:var(--graphite); font-size:14px}
footer .wrap{display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between; align-items:center}
footer a{color:var(--graphite); margin-right:16px; font-weight:600}
footer a:hover{color:var(--ink)}
.muted{color:var(--graphite); font-size:13px; text-align:center; margin-top:10px}
