@font-face{font-family:Poppins;font-weight:700;font-display:swap;src:url(/fonts/poppins-700.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(/fonts/poppins-600.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:100 900;font-display:swap;src:url(/fonts/inter-var.woff2) format("woff2")}
:root{--ink:#2B1440;--ink2:#1C0D2C;--txt:#4A3A60;--p:#7B2FF7;--m:#B44CC0;--c:#FF6A55;--lav:#F6F1FC;--lav2:#EDE4FA;--line:#E6DCF3;--g:linear-gradient(120deg,#7B2FF7 0%,#B44CC0 50%,#FF6A55 100%);--r:20px;--sh:0 10px 30px rgba(43,20,64,.12),0 2px 6px rgba(43,20,64,.06)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--txt);background:#fff;line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--p)}
h1,h2,h3,h4{font-family:Poppins,system-ui,sans-serif;color:var(--ink);line-height:1.15;letter-spacing:-.01em}
h1{font-size:clamp(2.3rem,5.2vw,3.7rem);font-weight:700}
h2{font-size:clamp(1.75rem,3.6vw,2.6rem);font-weight:700}
h3{font-size:1.5rem;font-weight:700}
h4{font-size:1.05rem;font-weight:600}
.wrap{max-width:1160px;margin:0 auto;padding:0 22px}
.narrow{max-width:820px}
.center{text-align:center}
.gt{background:var(--g);-webkit-background-clip:text;background-clip:text;color:transparent}
.gtl{background:linear-gradient(120deg,#C3A0FF,#F58AD6 50%,#FF9A82);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{font:600 .82rem Poppins,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--p);margin-bottom:12px}
.eyebrow.light{color:#FFB4A8}
.lead{font-size:1.12rem;color:var(--txt);margin-top:16px}
.lead.light{color:#E6DCF5}
.small{font-size:.85rem;color:#76678C}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 1rem Poppins,sans-serif;text-decoration:none;color:#fff;background:var(--g);padding:13px 24px;border-radius:999px;border:2px solid transparent;box-shadow:0 8px 20px rgba(123,47,247,.25);transition:transform .15s,box-shadow .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(123,47,247,.32)}
.btn.sm{padding:8px 16px;font-size:.92rem;box-shadow:none}
.btn.lg{padding:15px 28px;font-size:1.05rem}
.btn.full{width:100%}
.btn.outline{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:none}
.btn.outline:hover{border-color:var(--p)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:none}
.btn.white{background:#fff;color:var(--ink)}
.btn.outline-w{background:transparent;color:#fff;border-color:rgba(255,255,255,.5);box-shadow:none}
/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid rgba(230,220,243,.7)}
.navin{display:flex;align-items:center;justify-content:space-between;height:66px;gap:16px}
.brand img{width:104px;height:auto}
.links{display:flex;gap:26px}
.links a{color:var(--ink);text-decoration:none;font-weight:500;font-size:.96rem}
.links a:hover{color:var(--p)}
.navcta{display:flex;gap:6px;align-items:center}
/* hero */
.hero{background:radial-gradient(ellipse 60% 70% at 85% 30%,#EADCFB 0,transparent 70%),radial-gradient(ellipse 40% 50% at 0% 100%,#FFE6E0 0,transparent 70%),linear-gradient(180deg,#fff,#FAF7FE);overflow:hidden}
.heroin{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding-top:64px;padding-bottom:72px}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.ctas.center{justify-content:center}
.fine{margin-top:16px;font-size:.92rem;color:#76678C}
.heroart{position:relative;min-height:560px}
.phone{position:absolute;left:50%;top:0;transform:translateX(-50%);width:290px;background:var(--ink2);border-radius:44px;padding:11px;box-shadow:0 30px 60px rgba(43,20,64,.3)}
.phone img{border-radius:34px;width:100%}
.float{position:absolute;margin:0;background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--sh)}
.f1{width:300px;left:-10px;bottom:20px;transform:rotate(-2deg)}
.f2{width:270px;right:-24px;top:150px;transform:rotate(2deg)}
/* what */
.what{padding:84px 0 40px}
.pillrow{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px}
.pillrow span{background:var(--lav);border:1px solid var(--line);color:var(--ink);font-weight:600;font-size:.92rem;padding:8px 16px;border-radius:999px}
/* features */
.features{padding:60px 0 90px}
.sechead{margin-bottom:46px}
.showcase{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;margin:0 auto 64px;max-width:980px}
.showcase.rev .sctext{order:2}
.sctext h3{margin-bottom:12px}
.sctext h3 em{font-style:normal;color:var(--p)}
.sctext p{font-size:1.06rem}
.scimg{margin:0;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);background:#fff;border:1px solid var(--line)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:20px}
.fc{background:var(--lav);border:1px solid var(--line);border-radius:var(--r);padding:22px}
.fc .ic{width:44px;height:44px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:12px;box-shadow:0 2px 6px rgba(43,20,64,.08)}
.fc p{font-size:.95rem;margin-top:6px}
/* why */
.why{background:radial-gradient(ellipse 50% 70% at 100% 0,rgba(123,47,247,.5),transparent 70%),radial-gradient(ellipse 40% 60% at 0 100%,rgba(255,106,85,.3),transparent 70%),var(--ink2);color:#fff;padding:90px 0}
.why h2{color:#fff}
.whyin{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.checks{list-style:none;display:grid;gap:14px}
.checks li{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:16px 18px 16px 54px;position:relative;color:#E6DCF5}
.checks li b{color:#fff}
.checks li:before{content:"";position:absolute;left:18px;top:18px;width:22px;height:22px;border-radius:50%;background:var(--g)}
.checks li:after{content:"";position:absolute;left:26px;top:22px;width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
/* churches */
.churches{padding:90px 0;background:linear-gradient(180deg,#FAF7FE,#fff)}
.churchin{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center}
.steps{list-style:none;counter-reset:s;margin:26px 0 30px;display:grid;gap:16px}
.steps li{counter-increment:s;position:relative;padding-left:50px}
.steps li b{color:var(--ink)}
.steps li:before{content:counter(s);position:absolute;left:0;top:0;width:34px;height:34px;border-radius:50%;background:var(--g);color:#fff;font:700 .95rem Poppins,sans-serif;display:flex;align-items:center;justify-content:center}
.verse{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:34px;position:relative}
.verse:before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:4px;border-radius:4px;background:var(--g)}
.verse p{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:1.25rem;line-height:1.6;color:var(--ink)}
.verse cite{display:block;margin-top:14px;font-style:normal;font-weight:600;font-size:.9rem;color:#76678C}
/* plans */
.plans{padding:90px 0;background:var(--lav)}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:stretch}
.plan{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px 22px;display:flex;flex-direction:column;position:relative;box-shadow:0 2px 8px rgba(43,20,64,.05)}
.plan.pop{border:2px solid #C8A8FA;box-shadow:var(--sh)}
.plan.church{background:linear-gradient(180deg,#fff,#FFF5F2)}
.badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--g);color:#fff;font:600 .75rem Poppins,sans-serif;padding:4px 12px;border-radius:999px;white-space:nowrap}
.pname{display:flex;align-items:center;gap:8px;font:600 1.05rem Poppins,sans-serif;color:var(--ink)}
.dot{width:18px;height:18px;border-radius:50%}
.dot.gray{background:#8E8A99}.dot.purple{background:#8B4CF7}.dot.gold{background:#E9A72B}.dot.coral{background:var(--g)}
.price{font:700 2.4rem Poppins,sans-serif;color:var(--ink);margin-top:12px}
.price small{font-size:1rem;font-weight:600;color:#76678C}
.yr{font-size:.9rem;color:#76678C;min-height:2.6em}
.plan ul{list-style:none;margin:14px 0 22px;display:grid;gap:8px;font-size:.94rem;flex:1;align-content:start}
.plan li{padding-left:24px;position:relative}
.plan li:before{content:"";position:absolute;left:3px;top:6px;width:6px;height:11px;border:solid var(--p);border-width:0 2px 2px 0;transform:rotate(45deg)}
.note{max-width:820px;margin:28px auto 0;font-size:.92rem;color:#6B5A84}
/* how */
.phonehow{padding:90px 0}
.howin{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.howimg{margin:0;max-width:380px;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);border:1px solid var(--line);justify-self:center}
.how2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}
.how2>div{background:var(--lav);border:1px solid var(--line);border-radius:16px;padding:20px}
.how2 ol{margin:10px 0 0 20px;display:grid;gap:4px;font-size:.96rem}
.how2 .small{margin-top:10px}
/* faq */
.faq{padding:90px 0;background:linear-gradient(180deg,#fff,#FAF7FE)}
details{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:12px;padding:0 22px;transition:box-shadow .15s}
details[open]{box-shadow:var(--sh)}
summary{cursor:pointer;list-style:none;font:600 1.04rem Poppins,sans-serif;color:var(--ink);padding:18px 30px 18px 0;position:relative}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--p);font-weight:500}
details[open] summary:after{content:"\2013"}
details p{padding:0 0 18px}
/* final */
.final{background:linear-gradient(135deg,#2B1440 0%,#4A1E78 55%,#7B2FF7 100%);padding:80px 0;color:#fff}
.final img{margin:0 auto 18px;width:160px}
.final h2{color:#fff}
/* footer */
.foot{padding:36px 0 46px;border-top:1px solid var(--line)}
.footin{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.footin nav{display:flex;gap:18px;margin-left:auto}
.footin a{color:var(--ink);text-decoration:none;font-weight:500;font-size:.95rem}
.footin p{font-size:.95rem}
/* responsive */
@media (max-width:1000px){.grid,.pgrid{grid-template-columns:repeat(2,1fr)}.links{display:none}}
@media (max-width:860px){
 .heroin,.showcase,.whyin,.churchin,.howin{grid-template-columns:1fr}
 .heroin{padding-top:40px;gap:20px}
 .showcase{gap:22px;margin-bottom:48px}.showcase.rev .sctext{order:0}
 .heroart{min-height:540px;max-width:420px;width:100%;margin:0 auto}
 .howimg{order:2}
}
@media (max-width:560px){
 body{font-size:16px}
 .navcta .ghost{padding:8px 10px}
 .brand img{width:92px}
 .grid{grid-template-columns:1fr 1fr;gap:12px}.fc{padding:16px}
 .pgrid{grid-template-columns:1fr}
 .how2{grid-template-columns:1fr}
 .ctas .btn{width:100%}
 .heroart{min-height:500px}
 .phone{width:250px}
 .f1{width:240px;left:-4px;bottom:0}.f2{width:210px;right:-6px;top:120px}
 .what,.features,.why,.churches,.plans,.phonehow,.faq{padding-top:64px;padding-bottom:64px}
 .footin nav{margin-left:0;flex-wrap:wrap}
}
