/* Fit in 15 - Flex Method. Brand #B7FA52 on #000 */

:root{
  --lime:#B7FA52;
  --black:#000;
  --panel:#0C0C0C;
  --panel2:#151515;
  --line:#242424;
  --text:#F2F2F2;
  --muted:#9C9C9C;
  --max:760px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}

body{
  background:var(--black);
  color:var(--text);
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased;
}

.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 20px}

/* type */
h1,h2,h3{line-height:1.13;letter-spacing:-0.02em;font-weight:800}
h1{font-size:clamp(32px,7.5vw,50px);margin-bottom:22px}
h2{font-size:clamp(25px,5.2vw,33px);margin-bottom:14px}
h3{font-size:18px;margin-bottom:6px}
p{margin-bottom:16px}
p:last-child{margin-bottom:0}
.lead{font-size:clamp(17px,3.6vw,19px);color:#D2D2D2}
.muted{color:var(--muted)}
.lime{color:var(--lime)}
.big{font-size:21px;font-weight:800;color:#fff;letter-spacing:-0.02em}
strong{color:#fff;font-weight:700}
a{color:var(--lime)}
.fineprint{font-size:13px;color:#6E6E6E;line-height:1.55}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--lime);font-weight:800;margin-bottom:16px}

/* header */
header.site{padding:18px 0;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(0,0,0,.93);backdrop-filter:blur(8px);z-index:50}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.brand img{width:28px;height:28px;display:block}
.brand span{font-weight:800;letter-spacing:-.02em;font-size:16px}

/* sections */
section{padding:52px 0;border-bottom:1px solid var(--line)}
section.final{border-bottom:0;text-align:center}
.hero{padding:52px 0}

.hero .btn{max-width:420px}
.coach-img{max-width:300px;margin:0 auto 30px}
.coach-img img{width:100%;height:auto;display:block;border-radius:16px;border:1px solid var(--line)}
.coach-img .fineprint{margin-top:8px}

/* buttons */
.btn{display:block;width:100%;text-align:center;background:var(--lime);color:#000;font-weight:800;font-size:17px;padding:18px 24px;border:0;border-radius:10px;text-decoration:none;cursor:pointer;transition:background .15s}
.btn:hover{background:#C8FF6B}
.btn.ghost{background:transparent;color:var(--lime);border:1px solid var(--lime)}
.btn.btn-sm{width:auto;padding:10px 18px;font-size:15px}
.btn-note{text-align:center;font-size:14px;color:var(--muted);margin-top:12px}
.final .btn{max-width:420px;margin:22px auto 0}

/* panels */
.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:24px 22px;margin:18px 0}
.panel.accent{border-color:var(--lime);background:rgba(183,250,82,.05)}

ul.ticks{list-style:none}
ul.ticks li{position:relative;padding-left:28px;margin-bottom:13px;line-height:1.5}
ul.ticks li:last-child{margin-bottom:0}
ul.ticks li::before{content:"";position:absolute;left:2px;top:9px;width:9px;height:9px;background:var(--lime);border-radius:2px}
ul.crosses li::before{background:#3E3E3E}

.rule-row{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}
.rule-row:last-child{border-bottom:0;padding-bottom:0}
.rule-row:first-child{padding-top:0}
.rule-num{flex:0 0 32px;height:32px;border-radius:8px;background:var(--lime);color:#000;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center}
.rule-body p{font-size:15px;color:var(--muted);margin:0}

.plans{display:grid;gap:12px;margin-top:18px}
@media(min-width:640px){.plans{grid-template-columns:repeat(3,1fr)}}
.plan{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}
.plan .n{font-size:32px;font-weight:800;color:var(--lime);line-height:1}
.plan .d{font-size:12px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);margin:6px 0 10px}
.plan p{font-size:15px;color:var(--muted);margin:0}

.blocks{display:grid;gap:12px;margin-top:18px}
.blk{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}
.blk .tag{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--lime);font-weight:800}
.blk h3{margin:9px 0 6px}
.blk p{font-size:15px;color:var(--muted);margin:0}

/* photos */
.grid-photos{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0 16px}
@media(min-width:640px){.grid-photos{grid-template-columns:repeat(3,1fr)}}
.grid-photos img{width:100%;height:auto;display:block;border-radius:10px;border:1px solid var(--line)}

.tf-wrap{padding:22px 20px 0}
.tf-row{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:18px 0}
@media(min-width:520px){.tf-row{grid-template-columns:repeat(4,1fr)}}
.tf-row img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;display:block;border-radius:10px;border:1px solid var(--line)}
.tf-wrap+section{border-top:0}

.objections h3{color:var(--lime);font-size:20px;margin:26px 0 8px}
.objections p{color:var(--muted)}

/* table */
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:18px 0}
.compare{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.compare th,.compare td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.compare th{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:800}
.compare th.hi{color:var(--lime)}
.compare td:first-child{color:var(--muted);width:24%}

/* dates */
.dates{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.date-card{flex:1 1 150px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:15px 17px}
.date-card .k{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}
.date-card .v{font-size:19px;font-weight:800;margin-top:4px}
.date-card.hot{border-color:var(--lime)}
.date-card.hot .v{color:var(--lime)}

/* form */
form.optin{display:grid;gap:10px;margin-top:18px}
form.optin input{width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--text);font-size:16px;font-family:inherit;padding:16px;border-radius:10px}
form.optin input::placeholder{color:#6A6A6A}
form.optin input:focus{outline:none;border-color:var(--lime)}
.hp{position:absolute;left:-9999px}

/* steps */
.step{display:flex;gap:15px;margin-bottom:14px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}
.step .n{flex:0 0 32px;height:32px;border-radius:50%;background:var(--lime);color:#000;font-weight:800;display:flex;align-items:center;justify-content:center}
.step .b{flex:1;min-width:0}
.step .b p{font-size:15px;color:var(--muted);margin-bottom:14px}
.step .b .btn{font-size:16px;padding:15px 20px}

/* faq */
details{border-bottom:1px solid var(--line);padding:17px 0}
details:last-of-type{border-bottom:0}
summary{cursor:pointer;font-weight:700;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--lime);font-size:22px;line-height:1.2;flex:0 0 auto}
details[open] summary::after{content:"\2013"}
details p{margin-top:11px;color:var(--muted);font-size:16px}

/* legal */
.legal{padding:40px 0 66px}
.legal h1{font-size:clamp(28px,6vw,38px);margin-bottom:8px}
.legal h2{font-size:20px;margin:32px 0 10px}
.legal p,.legal li{color:#B5B5B5;font-size:16px}
.legal ul{margin:0 0 16px 20px}
.legal li{margin-bottom:8px}
.legal .updated{color:var(--muted);font-size:14px;margin-bottom:26px}

/* footer */
footer.site{padding:34px 0 50px;border-top:1px solid var(--line)}
footer.site p{font-size:13px;color:#6E6E6E;margin-bottom:6px}
footer.site a{color:#9C9C9C;text-decoration:none;margin-right:16px;font-size:14px}
footer.site a:hover{color:var(--lime)}
.foot-links{margin-bottom:16px}
