/* Discover Your Inner Element Profile — landing page. Loads after common.css */
.lp-narrow{max-width:820px;}
.lp-head{text-align:center; max-width:760px; margin:0 auto 56px;}
.lp-head h2{font-size:clamp(2rem,3.4vw,2.7rem); margin-bottom:0;}
.lp-big{font-size:1.2rem; color:var(--ink); line-height:1.65;}
.lp-note{text-align:center; font-family:'Fraunces',serif; font-style:italic; font-size:1.15rem; color:var(--clay-dark); margin:40px auto 0; max-width:60ch;}
.lp-photo{border:1px solid var(--img-line); border-radius:var(--r-img); box-shadow:var(--shadow-soft); overflow:hidden; aspect-ratio:4/5; max-height:640px; background:var(--cream-deep);}
.lp-photo img{width:100%; height:100%; object-fit:cover; display:block;}
.lp-card{background:#FFFDF8; border:1px solid var(--img-line); border-radius:var(--r-img); box-shadow:var(--shadow-soft); padding:38px 36px;}
.lp-card h3{font-size:1.4rem; margin-bottom:14px;}
.lp-card p{color:var(--ink-soft); font-size:1.02rem;}
.lp-card p:last-child{margin-bottom:0;}
.lp-num{display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:50%; background:var(--terra-light); color:var(--clay-dark); font-family:'Fraunces',serif; font-size:1.2rem; font-weight:600; margin-bottom:18px;}
.lp-grid-2{display:grid; grid-template-columns:1fr 1fr; gap:28px;}
.lp-grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}

/* hero */
.lp-hero{padding:80px 0 88px; background:linear-gradient(180deg,#FBF8F1,var(--cream));}
.lp-hero .wrap{display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center;}
.lp-hero h1{font-size:clamp(2.2rem,3.8vw,3.1rem); margin-bottom:.45em;}
.lp-tagline{font-family:'Fraunces',serif; font-style:italic; font-size:clamp(1.4rem,2.2vw,1.75rem); color:var(--clay-dark); line-height:1.35; margin-bottom:1em;}
.lp-lede{font-size:1.1rem; color:var(--ink-soft); max-width:50ch;}
.lp-lede-strong{font-size:1.1rem; color:var(--ink); font-weight:500; max-width:50ch; margin-bottom:28px;}
.lp-cta-row{margin-bottom:18px;}
.lp-meta{font-size:.82rem; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-soft); font-weight:500; margin:0;}

/* personal */
.lp-personal{background:var(--beige); text-align:center;}
.lp-personal h2{font-size:clamp(2rem,3.4vw,2.7rem);}
.lp-personal p{color:var(--ink-soft); font-size:1.1rem;}
.lp-personal .lp-big{color:var(--ink);}

/* receive */
.lp-receive-band{background:var(--sage-light);}
.lp-receive h3{font-size:1.35rem;}

/* explores */
.lp-explores{background:var(--cream);}
.lp-explore{border-top:3px solid var(--clay);}

/* how */
.lp-how{background:var(--sage-mist);}
.lp-steps{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
.lp-step{background:#FFFDF8; border:1px solid var(--img-line); border-radius:var(--r-img); box-shadow:var(--shadow-soft); padding:32px 26px;}
.lp-step h3{font-size:1.2rem; margin-bottom:10px;}
.lp-step p{font-size:1rem; color:var(--ink-soft); margin:0;}

/* fit */
.lp-fit{background:var(--beige);}
.lp-fit-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center;}
.lp-fit h2{font-size:clamp(2rem,3.4vw,2.7rem);}
.lp-checklist{list-style:none; margin:0; padding:0; display:grid; gap:16px;}
.lp-checklist li{display:flex; gap:16px; align-items:flex-start; background:#FFFDF8; border:1px solid var(--img-line); border-radius:14px; box-shadow:var(--shadow-soft); padding:20px 22px; font-size:1.05rem; color:var(--ink);}
.lp-check{flex:none; width:30px; height:30px; border-radius:50%; background:var(--sage-light); color:var(--sage-deep); display:flex; align-items:center; justify-content:center;}

.lp-personal-grid h3{font-size: 1.6rem;}

/* further */
.lp-further{background:var(--cream);}
.lp-offer{display:flex; flex-direction:column;}
.lp-offer .btn{margin-top:auto; align-self:flex-start;}
.lp-offer p:nth-last-of-type(1){margin-bottom:28px;}
.lp-price{font-family:'Fraunces',serif; font-size:2.2rem; font-weight:600; color:var(--clay-dark) !important; margin-bottom:14px;}
.lp-price.lp-soon{font-size:1.25rem; letter-spacing:.14em; text-transform:uppercase; font-family:'Work Sans',sans-serif; font-weight:600; padding-top:.6rem;}
.lp-offer-soon{background:var(--sage-mist);}

/* faq */
.lp-faq-band{background:var(--sage-light);}
.lp-faq{background:#FFFDF8; border:1px solid var(--img-line); border-radius:14px; box-shadow:var(--shadow-soft); margin-bottom:14px; padding:0 26px;}
.lp-faq summary{cursor:pointer; list-style:none; padding:22px 34px 22px 0; font-family:'Fraunces',serif; font-size:1.2rem; font-weight:600; color:var(--ink); position:relative;}
.lp-faq summary::-webkit-details-marker{display:none;}
.lp-faq summary::after{content:'+'; position:absolute; right:0; top:50%; transform:translateY(-50%); font-size:1.6rem; font-weight:400; color:var(--clay-dark);}
.lp-faq[open] summary::after{content:'–';}
.lp-faq p{color:var(--ink-soft); font-size:1.05rem; margin:0 0 24px;}

/* final */
.lp-final{background:var(--terra-light); text-align:center;}
.lp-final h2{font-size:clamp(2rem,3.6vw,2.8rem);}
.lp-final p{font-size:1.15rem; color:var(--ink-soft); max-width:56ch; margin:0 auto 30px;}

@media (max-width:1000px){
  .lp-steps{grid-template-columns:1fr 1fr;}
  .lp-grid-3{grid-template-columns:1fr;}
}
@media (max-width:900px){
  .lp-hero .wrap,.lp-fit-grid{grid-template-columns:1fr; gap:44px;}
  .lp-photo{aspect-ratio:4/3; max-height:none;}
  .lp-grid-2{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .lp-steps{grid-template-columns:1fr;}
  .lp-card{padding:28px 24px;}
  .lp-hero{padding:48px 0 56px;}
  .lp-head{margin-bottom:36px;}
}

/* ===== graphics + payment gate additions ===== */
[hidden]{display:none !important;}
.lp-art{border-radius:var(--r-img); box-shadow:var(--shadow-soft); overflow:hidden; line-height:0;}
.lp-art img{width:100%; height:auto; display:block;}
.lp-icon{width:200px; height:200px; display:block; margin-bottom:18px;}
.lp-card-top{display:flex; align-items:center; justify-content:space-between; margin-bottom:6px;}
.lp-card-top .lp-icon{margin-bottom:12px;}
.lp-idx{font-family:'Fraunces',serif; font-style:italic; font-size:1.1rem; color:var(--clay-dark);}
.lp-step .lp-icon{margin-bottom:14px;}
.lp-step .lp-idx{display:block; margin-bottom:6px; font-size:.95rem;}
.lp-personal{text-align:left;}
.lp-personal-grid{display:inline; grid-template-columns:1.05fr .95fr; gap:64px; align-items:center; text-align:center}
.lp-receive b{    color: var(--clay-dark);}
.lp-diagram img{width:100%; height:auto; display:block;}
.lp-toast{position:fixed; left:50%; bottom:28px; transform:translateX(-50%); z-index:300; background:var(--ink); color:var(--cream); padding:16px 26px; border-radius:12px; box-shadow:0 14px 34px rgba(43,42,36,.3); font-size:1rem; max-width:min(92vw,520px); text-align:center;}
.lp-paid-wrap{max-width:760px; padding-top:34px;}
.lp-paid-note{margin:0; text-align:center; background:var(--sage-light); border:1px solid var(--img-line); border-radius:999px; padding:12px 22px; color:var(--ink); font-weight:500; font-size:1rem;}
button.btn{font-family:'Work Sans',sans-serif;}
@media (max-width:900px){.lp-personal-grid{grid-template-columns:1fr; gap:40px;}}
.progress-track{align-items:flex-start;}
.progress-track::before{top:21px;}
