:root{
  --cream:#f4efe6;--cream2:#ebe4d8;--charcoal:#252a27;--charcoal2:#3a403c;
  --sage:#8f9f8a;--sage-dark:#657461;--white:#fffdf8;--line:rgba(37,42,39,.12);
  --shadow:0 18px 50px rgba(29,35,31,.10);--danger:#9b5147;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--charcoal);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit}.shell{width:min(1120px,calc(100% - 32px));margin:0 auto}.topbar{position:sticky;top:0;z-index:20;background:rgba(244,239,230,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.topbar-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;font-weight:950;letter-spacing:-.035em;text-transform:uppercase;font-size:1.05rem;white-space:nowrap}.brand span{color:var(--sage-dark)}.nav{display:flex;align-items:center;gap:22px}.nav a{text-decoration:none;font-size:.9rem;font-weight:800}.nav a:not(.button):hover{color:var(--sage-dark)}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;text-decoration:none;font:inherit;font-weight:850;cursor:pointer;padding:13px 19px;background:var(--charcoal);color:var(--white);transition:.18s ease}.button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(37,42,39,.14)}.button.sage{background:var(--sage-dark)}.button.light{background:var(--cream);color:var(--charcoal);border:1px solid var(--line)}.button.small{padding:10px 15px;font-size:.9rem}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--sage-dark);font-size:.76rem;font-weight:950;text-transform:uppercase;letter-spacing:.11em}.eyebrow:before{content:"";width:32px;height:2px;background:var(--sage)}.hero{padding:86px 0 70px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:42px;align-items:center}.hero h1,.page-hero h1{margin:14px 0 0;font-size:clamp(3.4rem,8vw,7.2rem);line-height:.91;letter-spacing:-.065em;text-transform:uppercase;font-weight:950}.hero h1 .sage,.page-hero h1 .sage{color:var(--sage-dark)}.hero p,.page-hero p{max-width:720px;margin:26px 0 0;color:var(--charcoal2);font-size:clamp(1.05rem,2.1vw,1.25rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-card{background:var(--charcoal);color:var(--white);border-radius:30px;padding:34px;box-shadow:var(--shadow)}.hero-card .small-label{font-weight:900;text-transform:uppercase;letter-spacing:.1em;font-size:.73rem;color:#bdc8b9}.hero-card h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.02;letter-spacing:-.045em;margin:14px 0 18px;text-transform:uppercase}.hero-card p{color:#d8ddd5;margin:0;font-size:1rem}.hero-card .mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:26px}.mini-stat{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.mini-stat strong{display:block;font-size:1.65rem;line-height:1;color:#b7c3b2}.mini-stat span{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.section{padding:84px 0}.section.border{border-top:1px solid var(--line)}.section-head{max-width:760px;margin-bottom:34px}.section-head h2{margin:10px 0 0;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.98;letter-spacing:-.055em;text-transform:uppercase}.section-head p{color:var(--charcoal2);font-size:1.05rem;margin:18px 0 0}.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:var(--white);border-radius:24px;padding:27px;border:1px solid rgba(37,42,39,.06);box-shadow:0 10px 28px rgba(29,35,31,.06)}.card .num{color:var(--sage-dark);font-size:.8rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.card h3{font-size:1.55rem;letter-spacing:-.035em;margin:10px 0 10px}.card p{margin:0;color:var(--charcoal2)}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start}.dark-panel{background:var(--charcoal);color:var(--white);padding:34px;border-radius:28px;position:sticky;top:102px}.dark-panel h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.04;letter-spacing:-.045em;text-transform:uppercase;margin:0}.dark-panel .sage{color:#b7c3b2}.dark-panel p{color:#d8ddd5}.copy-panel{background:var(--white);padding:38px;border-radius:28px;box-shadow:var(--shadow)}.copy-panel h2{font-size:clamp(1.8rem,4vw,2.7rem);line-height:1;letter-spacing:-.045em;text-transform:uppercase;margin:0 0 18px}.copy-panel h2:not(:first-child){margin-top:42px}.copy-panel p{margin:0 0 18px}.copy-panel strong{color:var(--sage-dark)}.note{padding:20px 22px;border-radius:18px;background:var(--cream);border:1px solid var(--line);font-weight:750;margin:24px 0}.pullquote{padding:24px 26px;margin:28px 0;border-left:4px solid var(--sage);background:#f1f3ee;border-radius:0 18px 18px 0;font-size:clamp(1.25rem,2.5vw,1.7rem);font-weight:850;line-height:1.22;letter-spacing:-.025em}.cta-band{text-align:center;padding:82px 0}.cta-band h2{max-width:800px;margin:10px auto 0;font-size:clamp(2.5rem,6vw,5rem);line-height:.97;letter-spacing:-.055em;text-transform:uppercase}.cta-band p{max-width:650px;margin:20px auto 0;color:var(--charcoal2)}.cta-band .button{margin-top:28px}footer{padding:28px 0 40px;border-top:1px solid var(--line);color:#666c68;font-size:.86rem;text-align:center}.page-hero{padding:68px 0 38px}.stat-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:720px;margin-top:40px}.stat{padding:20px 22px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.28)}.stat strong{display:block;color:var(--sage-dark);font-size:clamp(1.8rem,4vw,2.8rem);line-height:1;letter-spacing:-.04em}.stat span{display:block;margin-top:7px;font-size:.9rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
/* Form */
.form-wrap{padding:50px 0 84px}.form-shell{max-width:850px;margin:0 auto}.form-intro{margin-bottom:24px}.form-intro h1{font-size:clamp(2.8rem,7vw,5.8rem);line-height:.94;letter-spacing:-.06em;text-transform:uppercase;margin:12px 0 14px}.form-intro p{color:var(--charcoal2);max-width:700px}.form-card{background:var(--white);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}.progress-top{padding:22px 28px 16px;border-bottom:1px solid var(--line)}.progress-labels{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:.82rem;font-weight:850}.progress-labels span:last-child{color:var(--sage-dark)}.progress-track{height:7px;border-radius:99px;background:var(--cream2);margin-top:12px;overflow:hidden}.progress-fill{height:100%;background:var(--sage-dark);width:20%;transition:width .25s ease}.form-step{display:none;padding:32px 28px 30px}.form-step.active{display:block}.step-kicker{color:var(--sage-dark);font-size:.76rem;font-weight:950;text-transform:uppercase;letter-spacing:.1em}.form-step h2{font-size:clamp(1.8rem,4vw,2.7rem);letter-spacing:-.045em;line-height:1.02;margin:7px 0 8px}.step-desc{margin:0 0 28px;color:var(--charcoal2)}.field{margin:0 0 22px}.field label,.field legend{display:block;font-weight:850;margin-bottom:8px}.field small{display:block;margin-top:7px;color:#6c716d}.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=number],.field textarea,.field select{width:100%;border:1px solid #d8d7d1;border-radius:14px;background:#fff;padding:13px 14px;color:var(--charcoal);font:inherit;outline:none}.field textarea{min-height:112px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--sage-dark);box-shadow:0 0 0 3px rgba(101,116,97,.12)}fieldset.field{border:0;padding:0}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{position:relative}.choice input{position:absolute;opacity:0;pointer-events:none}.choice label{display:flex;align-items:center;min-height:52px;padding:12px 14px;border:1px solid #d8d7d1;border-radius:14px;background:#fff;font-weight:700;cursor:pointer;transition:.15s ease}.choice input:checked+label{border-color:var(--sage-dark);background:#eef2ec;box-shadow:inset 0 0 0 1px var(--sage-dark)}.choice input:focus-visible+label{outline:3px solid rgba(101,116,97,.2)}.range-row{display:flex;align-items:center;gap:16px}.range-row input{flex:1;accent-color:var(--sage-dark)}.range-value{min-width:48px;height:48px;border-radius:14px;background:var(--charcoal);color:#fff;display:grid;place-items:center;font-size:1.25rem;font-weight:900}.form-nav{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}.form-nav .right{margin-left:auto}.error-box{display:none;margin:0 0 20px;padding:13px 15px;border-radius:13px;background:#f8ece9;border:1px solid #e3b9b2;color:#7e3e35;font-weight:700;font-size:.9rem}.error-box.show{display:block}.medical-note{padding:14px 16px;background:var(--cream);border-radius:14px;font-size:.88rem;color:var(--charcoal2)}.honeypot{position:absolute!important;left:-9999px!important;height:1px;width:1px;overflow:hidden}.success-card{max-width:720px;margin:90px auto;background:var(--white);padding:44px;border-radius:28px;box-shadow:var(--shadow);text-align:center}.success-card h1{font-size:clamp(2.8rem,7vw,5rem);line-height:.95;letter-spacing:-.055em;text-transform:uppercase;margin:12px 0 18px}.success-card p{color:var(--charcoal2)}

/* Optional faith integration */
.faith-section{padding:84px 0;background:#eef1ea}
.faith-section.border{border-top:1px solid var(--line)}
.faith-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.faith-heading h2{margin:13px 0 0;font-size:clamp(2.4rem,5vw,4.7rem);line-height:.97;letter-spacing:-.055em;text-transform:uppercase}
.faith-heading .sage{color:var(--sage-dark)}
.faith-copy{font-size:1.05rem;color:var(--charcoal2)}
.faith-copy p{margin:0 0 20px}
.faith-copy strong{color:var(--charcoal);font-weight:850}
.faith-choice{padding:18px 20px;border-left:4px solid var(--sage);background:rgba(255,253,248,.66);border-radius:0 16px 16px 0}
.text-link{display:inline-block;margin-top:2px;color:var(--sage-dark);font-weight:900;text-decoration:none;border-bottom:1px solid rgba(101,116,97,.35);padding-bottom:2px}
.text-link:hover{border-bottom-color:var(--sage-dark)}
@media(max-width:820px){.hero-grid,.split{grid-template-columns:1fr}.dark-panel{position:static}.cards3{grid-template-columns:1fr}.hero{padding-top:56px}.nav a:not(.button){display:none}.copy-panel{padding:28px 22px}.hero-card{padding:28px}.page-hero{padding-top:50px}}
@media(max-width:560px){.shell{width:min(100% - 22px,1120px)}.topbar-inner{min-height:64px}.brand{font-size:.94rem}.button.small{padding:9px 12px;font-size:.8rem}.hero{padding:48px 0 52px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}.hero-card .mini-stats,.stat-strip,.choices{grid-template-columns:1fr}.section{padding:62px 0}.form-wrap{padding-top:34px}.form-step{padding:26px 19px}.progress-top{padding:19px}.form-nav{flex-wrap:wrap}.form-nav .button{flex:1}.form-nav .right{margin-left:0}.success-card{margin:50px 0;padding:32px 22px}}

/* Photo-forward homepage */
.hero-photo-card{position:relative;border-radius:30px;overflow:hidden;background:var(--charcoal);min-height:610px;box-shadow:var(--shadow)}
.hero-photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,18,16,.82) 0%,rgba(15,18,16,.18) 38%,rgba(15,18,16,0) 62%);pointer-events:none}
.hero-photo-card img{display:block;width:100%;height:610px;object-fit:cover;object-position:center 35%}
.photo-badge{position:absolute;z-index:2;left:22px;right:22px;bottom:22px;background:rgba(37,42,39,.88);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:20px;color:var(--white)}
.photo-badge .small-label{font-weight:900;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;color:#bdc8b9}
.photo-badge strong{display:block;margin-top:6px;font-size:1.35rem;letter-spacing:-.03em}
.photo-badge span{display:block;margin-top:3px;color:#d8ddd5;font-size:.9rem}

/* About transformation */
.transformation-section{padding:18px 0 34px}
.transformation-grid{display:grid;grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr);align-items:center;gap:18px}
.transformation-card{margin:0;background:var(--white);border-radius:28px;overflow:hidden;border:1px solid rgba(37,42,39,.07);box-shadow:var(--shadow)}
.transformation-card .image-wrap{height:520px;overflow:hidden;background:#ddd}
.transformation-card img{width:100%;height:100%;object-fit:cover;display:block}
.before-card img{object-position:center center}
.current-card img{object-position:center 32%}
.transformation-card figcaption{padding:20px 22px 23px}
.transformation-card figcaption span{display:block;text-transform:uppercase;font-size:.74rem;letter-spacing:.09em;font-weight:950;color:var(--sage-dark)}
.transformation-card figcaption strong{display:block;font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.05;letter-spacing:-.04em;margin-top:5px}
.transformation-card figcaption small{display:block;margin-top:6px;color:var(--charcoal2);font-weight:650}
.transformation-arrow{width:58px;height:58px;border-radius:999px;background:var(--sage-dark);color:white;display:grid;place-items:center;font-size:1.8rem;font-weight:900;box-shadow:0 10px 22px rgba(37,42,39,.14)}
.about-story-section{padding-top:52px}

@media(max-width:820px){
  .hero-photo-card{min-height:540px}.hero-photo-card img{height:540px}
  .transformation-grid{grid-template-columns:1fr;gap:14px}.transformation-arrow{margin:0 auto;transform:rotate(90deg)}
  .transformation-card .image-wrap{height:auto;aspect-ratio:4/3}
  .current-card .image-wrap{aspect-ratio:3/4;max-height:660px}
}
@media(max-width:560px){
  .hero-photo-card{min-height:470px;border-radius:24px}.hero-photo-card img{height:470px}.photo-badge{left:14px;right:14px;bottom:14px;padding:16px}
  .transformation-section{padding-top:0}.transformation-card{border-radius:22px}.transformation-card figcaption{padding:17px 18px 20px}
}

@media(max-width:820px){.faith-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:560px){.faith-section{padding:62px 0}.faith-copy{font-size:1rem}}
