/* Sales page pieces, taken from the SuperFans Sprint page so the two match. Used on top of site.css. */
.st{position:absolute;z-index:3;pointer-events:none}
.band{height:84px;background:url(/assets/pattern-pattern-01.png) 0 0/220px}
.sec h2{font-size:clamp(30px,5vw,46px);color:var(--blue);margin-bottom:20px}
.sec p{font-size:16.5px}
.sec p+p,.hero p+p{margin-top:.9em}
.on-blue .sec h2,.on-blue h2{color:#fff}
.cta{margin-top:26px}

/* hero */
.shero{padding:70px 0 80px}
.shero .hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px}
.shero h1{font-size:clamp(56px,11vw,120px);color:#fff;margin:16px 0 14px;line-height:.9}
.shero .head{font:600 clamp(18px,2.4vw,24px)/1.4 Poppins,system-ui,sans-serif;margin-bottom:16px;max-width:560px}
.shero .who{margin-bottom:12px;font-size:14.5px;letter-spacing:0;text-transform:none;font-weight:600;line-height:1.5;padding:9px 15px;border-radius:14px}
.shero .by{font-size:14px;color:var(--stone);margin-bottom:12px}
.shero .promise{font-size:16.5px;max-width:520px}
.hero-photo{position:relative;max-width:400px;justify-self:center;width:100%}
.hero-photo img.ph{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 20%;border-radius:200px 200px 26px 26px;border:4px solid var(--stone);background:var(--stone)}

/* home page */
.shero h1.long{font-size:clamp(40px,7.4vw,84px);line-height:.95}
.results{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}
.results li{border-radius:18px;padding:16px 18px;font-size:15px;line-height:1.55;border:2px solid var(--ink)}
.results li:nth-child(3n+1){background:var(--sky)}.results li:nth-child(3n+2){background:var(--stone)}.results li:nth-child(3n){background:#fff}
.results li:last-child:nth-child(odd){grid-column:1/-1}
.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}
.room{border:2px solid var(--ink);border-radius:26px;padding:28px 26px 30px;display:flex;flex-direction:column;gap:12px}
.room:nth-child(1){background:var(--sky)}.room:nth-child(2){background:var(--blush)}.room:nth-child(3){background:var(--yellow)}
.rooms.two{grid-template-columns:1fr 1fr}
.rooms.two .room:nth-child(1){background:var(--yellow)}.rooms.two .room:nth-child(2){background:var(--sky)}.rooms.two .room:nth-child(3){background:var(--blush)}.rooms.two .room:nth-child(4){background:var(--teal)}
.room.free{grid-column:1/-1;background:var(--stone);flex-direction:row;align-items:center;justify-content:space-between;gap:24px}
.room.free .btn{align-self:center;margin-top:0;flex:0 0 auto}
.room.free p{margin-top:6px}
.room h3,.room h2.rh{font-family:Fulbo,Poppins,system-ui,sans-serif;font-size:19px;line-height:1.3;text-transform:uppercase;letter-spacing:.04em;color:var(--ink)}
.room .btn{align-self:flex-start;margin-top:auto}
.badges{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-top:34px}
.badges img{width:clamp(110px,22vw,170px);border-radius:14px}
.logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-top:34px}
.logos div{background:var(--stone);border-radius:16px;height:92px;display:grid;place-items:center;padding:8px;border:2px solid var(--ink);overflow:hidden}
.logos div.dk{background:var(--ink)}
.logos img{max-height:74px;max-width:100%;width:auto;height:auto;object-fit:contain}
.sec .cards{margin-top:22px}

/* about page numbers */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.stat{background:#fff;border:2px solid var(--ink);border-radius:22px;padding:20px 18px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--ink)}
.stat img{width:84px;height:84px;object-fit:contain;margin-bottom:6px}
.stat b{font:400 clamp(34px,5vw,48px)/1 "More Magic",Poppins,sans-serif;color:var(--blue)}
.stat span{font:600 15.5px/1.4 Poppins,system-ui,sans-serif}
.stat small{font-size:13.5px;line-height:1.4;margin-top:2px}

/* contact form */
.cform{margin-top:26px;background:#fff;border:2px solid var(--ink);border-radius:24px;padding:26px 24px 28px;display:grid;gap:8px}
.cform label{font:600 14.5px Poppins,system-ui,sans-serif;margin-top:8px}
.cform label span{font-weight:400;opacity:.75}
.cform input,.cform textarea{width:100%;border:2px solid var(--ink);border-radius:14px;padding:12px 14px;font:400 16px/1.5 Poppins,system-ui,sans-serif;color:var(--ink);background:#fff}
.cform input:focus-visible,.cform textarea:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.cform .btn{justify-self:start;margin-top:14px}

/* sign-up form card (MailerLite form on the lead magnet pages) */
.formcard{background:#fff;color:var(--ink);border:2px solid var(--ink);border-radius:26px;padding:18px 16px 20px}
.formcard .fine{font-size:13.5px;line-height:1.5;margin-top:10px;text-align:center}
.formcard .ml-form-embedContainer{margin:0 auto}
.formcard h4{font-family:Fulbo,Poppins,system-ui,sans-serif}
#get-it .formcard .ml-form-embedContainer .ml-form-embedWrapper .ml-form-embedBody .ml-form-embedSubmit button.primary{background-color:var(--orange)!important;color:var(--ink)!important;border:0!important;border-radius:999px!important;font:400 15px Fulbo,Poppins,system-ui,sans-serif!important;text-transform:uppercase;letter-spacing:.05em;min-height:46px}
#get-it .formcard .ml-form-embedContainer .ml-form-embedWrapper .ml-form-embedBody .ml-form-embedSubmit button.primary:hover{background-color:var(--yellow)!important}
#get-it .formcard .ml-form-embedContainer .ml-form-embedWrapper .ml-form-embedBody .ml-form-fieldRow input.form-control{border:2px solid var(--ink)!important;border-radius:12px!important}

.plainlist{list-style:none;padding:0;display:grid;gap:9px;margin:16px 0}
.plainlist li{line-height:1.55;font-size:16px}

/* big quote card */
.tq{max-width:640px;margin:0 auto;background:var(--stone);border:2px solid var(--ink);border-radius:20px;padding:22px 24px;color:var(--ink);position:relative;font-size:16px}
.tq b{display:block;margin-top:8px;font:400 15px Fulbo,Poppins,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em}

/* three steps */
.builds{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0 8px}
.build{border:2px solid var(--ink);border-radius:22px;padding:22px 22px 24px;position:relative}
.build:nth-child(1){background:var(--sky)}.build:nth-child(2){background:var(--blush)}.build:nth-child(3){background:var(--yellow)}
.build h3{font-size:19px;color:var(--ink);margin-bottom:8px}
.build p{font-size:15px;line-height:1.6}
.bigpill{display:inline-block;background:var(--stone);color:var(--ink);border-radius:16px;padding:12px 18px;font-weight:600;font-size:16px;line-height:1.5;margin-top:20px}

/* lists */
.lions{list-style:none;padding:0;display:grid;gap:9px;margin:16px 0}
.lions li{padding-left:32px;position:relative;line-height:1.55;font-size:16px}
.lions li:before{content:"🦁";position:absolute;left:0}
.checks{list-style:none;padding:0;display:grid;gap:10px;margin-top:16px}
.checks li{background:#fff;border:2px solid var(--ink);border-radius:16px;padding:12px 16px 12px 48px;position:relative;font-size:15px;line-height:1.55}
.checks li:before{content:"✔";position:absolute;left:15px;top:12px;width:22px;height:22px;border-radius:50%;background:var(--teal);color:var(--ink);display:grid;place-items:center;font-size:12px;font-weight:700}
.nos{list-style:none;padding:0;display:grid;gap:10px;margin-top:16px}
.nos li{background:#fff;border:2px solid var(--ink);border-radius:16px;padding:12px 16px;font-size:15px;line-height:1.55}
.nos li b{display:block;font:600 15.5px/1.45 Poppins,system-ui,sans-serif;margin-bottom:4px}

/* picture strips (client messages) */
.strip{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 20px 20px;-webkit-overflow-scrolling:touch;align-items:flex-start}
.strip figure{flex:0 0 auto;width:min(290px,74vw);scroll-snap-align:center;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 4px 14px rgba(27,20,80,.2)}
.strip figure:nth-child(odd){transform:rotate(-1.2deg)}.strip figure:nth-child(even){transform:rotate(1deg);margin-top:10px}
.strip img{width:100%;height:auto}
.strip.wide figure{width:min(380px,82vw)}
.hint{font:600 11px Poppins,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-align:center;margin-top:4px}
.on-orange .hint,.on-blue .hint{color:#fff}

/* story with photos */
.about{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:44px;align-items:start}
.photos{position:sticky;top:20px;padding:0 0 40px}
.photos .p1{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:26px;border:3px solid var(--ink)}
.photos .p2{position:absolute;right:-26px;bottom:0;width:48%;aspect-ratio:3/4;object-fit:cover;border-radius:20px;border:4px solid #fff;box-shadow:0 6px 18px rgba(27,20,80,.25);transform:rotate(4deg)}
.about h2{font-size:clamp(28px,4.4vw,42px)}
.sig{font:400 24px "More Magic";margin-top:16px}

/* team */
.team{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:26px auto 0;max-width:780px}
.member{background:#fff;border:2px solid var(--ink);border-radius:24px;overflow:hidden;display:flex;flex-direction:column}
.member img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;border-bottom:2px solid var(--ink);background:var(--stone)}
.member .t{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.member h3{font-size:19px}
.member p{font-size:14.5px;line-height:1.6}
.role{display:inline-block;align-self:flex-start;background:var(--teal);color:var(--ink);font:400 11.5px Fulbo,Poppins,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;border-radius:6px;padding:3px 10px;margin-top:auto}

/* what is included */
.bonus-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;margin-top:22px}
.bonus{border:2px solid var(--ink);border-radius:20px;padding:20px 22px;background:#fff}
.bonus:nth-child(3n+2){background:var(--blush)}.bonus:nth-child(3n){background:var(--yellow)}
.bonus h3{font-size:16.5px;margin-bottom:8px}
.bonus p{font-size:14.8px;line-height:1.6}

/* prices */
.prices{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.price{text-align:center;background:#fff;color:var(--ink);border:2px solid var(--ink);border-radius:26px;padding:34px 26px;position:relative}
.price h2{color:var(--blue)!important;font-size:clamp(32px,5vw,46px)!important;margin-bottom:6px!important}
.price .sub{font:600 12px Poppins,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:16px}
.price .inc{text-align:left;border-top:2px solid var(--stone);padding:14px 0 4px}
.price .inc h3{font-size:14px;color:var(--blue);margin-bottom:4px}
.price .inc p{font-size:14.2px;line-height:1.6}
.price .row{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap;border-top:2px solid var(--stone);padding:12px 0;text-align:left}
.price .row b{font:400 16px Fulbo,Poppins,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.03em}
.price .amt{font-size:16.5px;font-weight:600}
.price .btn{margin-top:14px}

/* client stories */
.stories{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
.story{border:2px solid var(--ink);border-radius:24px;padding:22px 22px 26px;position:relative;overflow:hidden}
.story:nth-child(1){background:var(--sky)}.story:nth-child(2){background:var(--blush)}.story:nth-child(3){background:var(--yellow)}
.story img.lion{width:84px;margin:0 0 10px auto}
.story p{font-size:15px;line-height:1.6}
.story p+p{margin-top:.8em}
.stories.two{grid-template-columns:repeat(2,1fr)}
.bigquote{max-width:760px;margin:0 auto;background:#fff;color:var(--ink);border:2px solid var(--ink);border-radius:26px;padding:34px 30px}
.bigquote h2{color:var(--blue)!important}
.bigquote blockquote{background:var(--stone);border-radius:18px;padding:16px 20px;margin-top:16px;font-size:15.5px;line-height:1.65}

/* fit */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}
.fitcard{border:2px solid var(--ink);border-radius:22px;padding:22px}
.fitcard.yes{background:#fff}.fitcard.no{background:var(--blush)}
.fitcard h3{font-size:16px;line-height:1.35}

/* faq */
.faq{display:grid;gap:10px;margin-top:18px}
.faq details{border:2px solid var(--ink);border-radius:18px;background:#fff}
.faq summary{cursor:pointer;list-style:none;padding:15px 54px 15px 20px;font:600 15.5px/1.4 Poppins,system-ui,sans-serif;position:relative;min-height:52px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:var(--stone);display:grid;place-items:center;font:600 18px Poppins,system-ui,sans-serif}
.faq details[open] summary:after{content:"−"}
.faq details[open]{background:var(--stone)}
.ans{padding:0 20px 20px;font-size:15px;line-height:1.65}
.ans ul{margin:10px 0 10px 4px;padding-left:20px}
.ans p+p,.ans p+ul,.ans ul+p{margin-top:.7em}

.final h2{font-size:clamp(32px,6vw,58px);text-align:center;color:#fff;max-width:780px;margin:0 auto 18px}
.final .lead{text-align:center;max-width:600px;margin:0 auto 26px;font-size:16.5px;font-weight:600}
.final .btnc{text-align:center}

@media (max-width:860px){
 .shero{padding:48px 0 56px}.shero .hero-grid{grid-template-columns:1fr;gap:30px;text-align:center}
 .shero .head,.shero .promise{margin-left:auto;margin-right:auto}
 .hero-photo{max-width:300px}
 .shero>.st{display:none}
 .builds,.team,.stories,.stories.two,.prices,.fit,.rooms,.results{grid-template-columns:1fr}
 .stats{grid-template-columns:repeat(2,1fr)}
 .room.free{flex-direction:column;align-items:flex-start}
 .about{grid-template-columns:1fr;gap:34px}
 .photos{position:relative;max-width:300px;margin:0 auto;padding-bottom:50px}.photos .p2{right:-14px}
 .btn{width:100%;max-width:400px}
}
