/* JourneyWell funnel, Acquisition.com-style design study.
   Tokens pulled from computed styles of acquisition.com (captured 2026-09-29, see _capture/styles.json).
   His font: Poppins (Google Fonts, free) - used as-is. Inter is loaded by his site for widgets; we use it for the booking widget. */
:root{
  --purple:#6f00ff;      /* primary CTA, announce bar, footer (home/apply) */
  --purple-soft:#e9dcff;
  --navy:#131628;        /* nav bar + headings */
  --ink:#000;
  --hero:#efefee;        /* home hero bg */
  --band:#f8f8f8;        /* roadmap band */
  --faq:#fafafa;
  --blue:#006ab6;        /* workshop hero, FAQ bars, footer */
  --blue-dk:#005993;     /* workshop band under hero + frame */
  --yellow:#f6d234;      /* workshop CTAs + ticker bar */
  --red:#f44336;         /* badges */
  --paper:#f7f6f5;       /* testimonial section bg */
  --line:#e2e2e2;
  --grey:#8a8a8a;
  --wrap:1100px;
  --font:'Poppins',"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);font-size:16px;line-height:24px;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 16px}

/* Placeholders: obvious but on-grid */
.ph{outline:2px dashed #ff2d7a;outline-offset:-2px;background:repeating-linear-gradient(45deg,rgba(255,45,122,.06) 0 10px,transparent 10px 20px);color:#b0004a;font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:center;text-align:center;padding:10px}
.phi{outline:1.5px dashed #ff2d7a;outline-offset:2px;color:#b0004a;background:rgba(255,45,122,.06)}

/* Announce bar */
.announce{background:var(--purple);color:#fff;text-align:center;padding:22px 16px;font-size:16px;font-weight:300}
.announce b{font-weight:700}
.announce .new{display:inline-block;background:#fff;color:var(--navy);font-weight:800;font-size:12px;border-radius:999px;padding:0 9px;line-height:20px;margin-right:8px;vertical-align:1px}
.announce .arr{display:inline-block;margin-left:6px;font-size:22px;vertical-align:-2px}

/* Nav */
.nav{background:var(--navy);color:#fff;height:86px}
.nav .wrap{height:100%;display:flex;align-items:center;gap:34px;max-width:1120px}
.logo{font-weight:800;font-size:15px;letter-spacing:.3px;display:flex;align-items:center;gap:8px;text-transform:uppercase;white-space:nowrap}
.logo .mark{width:18px;height:18px;position:relative}
.logo .mark:before,.foot .flogo .mark:before{content:"";position:absolute;inset:0;margin:auto;height:100%;aspect-ratio:1;border:3px solid #fff;border-radius:50%;border-bottom-color:transparent;transform:rotate(45deg)}
.wm{font-weight:800}.wm span{font-weight:300}
.nav ul{list-style:none;display:flex;gap:26px;margin:0 0 0 auto;padding:0;font-size:15px;font-weight:400}
.nav li .chev{font-size:10px;margin-left:5px}
.btn-pill{display:inline-flex;align-items:center;justify-content:center;background:var(--purple);color:#fff;border-radius:999px;font-weight:500;padding:10px 20px;font-size:16px;line-height:25px;transition:transform .15s,filter .15s;border:0;cursor:pointer;font-family:var(--font)}
.btn-pill:hover{filter:brightness(1.12);transform:translateY(-1px)}
.btn-big{font-size:20px;font-weight:700;padding:16px 10px;min-width:420px;text-transform:uppercase}
.burger{display:none;margin-left:auto;background:none;border:0;cursor:pointer;padding:6px}
.burger i{display:block;width:24px;height:2px;background:#fff;margin:5px 0;border-radius:2px}

/* Home hero */
.hero{background:var(--hero);position:relative;overflow:hidden}
.hero .wrap{max-width:1440px;padding:0;min-height:426px;display:grid;grid-template-columns:1fr 680px 1fr;align-items:end}
.hero .person{height:390px;width:250px;align-self:end}
.hero .person.r{justify-self:end;margin-right:10px}
.hero img.person{display:block;width:auto;max-width:none}
/* Founders at 1.75x (Tim, 2026-09-30). Out of the grid flow so the hero keeps its height; each figure stays anchored to the bottom of the
   hero. Height follows the side-column width so the photos never reach the headline. */
@media (min-width:901px){
  .hero .wrap{position:relative;--c:calc((min(100vw,1440px) - 680px) / 2)}
  .hero .center{grid-column:2}
  .hero img.person{position:absolute;top:auto;bottom:0;margin:0;max-height:calc(100% - 28px);height:min(700px,calc(var(--c) * 1.84))}
  .hero img.person.l{left:-14px}
  .hero img.person.r{left:calc(100% - var(--c))}
}
.hero .center{text-align:center;padding:74px 0 72px}
.hero h1{font-size:54px;line-height:58px;font-weight:800;color:var(--navy);text-transform:uppercase;margin:0 0 30px;letter-spacing:-.3px}
.hero p{font-size:22px;line-height:29px;margin:0 auto 32px;max-width:580px;font-weight:400}

/* Stats */
.stats{padding:56px 0}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1110px}
.stat{border-left:3px solid var(--purple);padding:4px 0 4px 16px}
.stat .n{font-size:44px;line-height:48px;font-weight:700;color:var(--navy)}
.stat .l{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:#555;font-weight:500;margin-top:6px}

/* Roadmap card band */
.band{background:var(--band);padding:18px 0 22px}
.feature{position:relative;background:#fff;max-width:1000px;margin:0 auto;box-shadow:0 2px 14px rgba(0,0,0,.06);display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:30px;padding:34px 40px;min-height:258px}
.feature .badge{position:absolute;top:14px;right:0;background:var(--red);color:#fff;font-weight:800;font-style:italic;font-size:13px;padding:6px 16px;border-radius:4px 0 0 4px;text-transform:uppercase}
.feature h3{font-size:24px;line-height:30px;font-weight:800;color:var(--navy);text-transform:uppercase;margin:0 0 20px;text-align:center}
.feature .btn-pill{font-weight:700;padding:16px 20px;text-transform:uppercase}

/* Training */
.training{padding:46px 0 64px;text-align:center}
.training h2{font-size:36px;line-height:40px;font-weight:800;color:var(--navy);text-transform:uppercase;margin:0 0 8px}
.training h2 em{color:var(--purple);font-style:normal}
.training .sub{max-width:460px;margin:0 auto;font-size:16px;line-height:20px}
.rule{height:1px;background:#999;max-width:710px;margin:42px auto 68px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;max-width:1140px;margin:0 auto}
.card{display:flex;flex-direction:column;align-items:center;position:relative}
.card .tag{position:absolute;top:-24px;right:0;background:var(--red);color:#fff;font-size:12px;font-weight:700;padding:0 8px;line-height:22px;border-radius:2px}
.card h4{font-size:20px;line-height:22px;font-weight:800;color:var(--navy);text-transform:uppercase;margin:0 0 12px;min-height:44px}
.card .art{width:220px;height:220px;border-radius:50%;margin-bottom:26px}
.card .btn-pill{width:100%;padding:16px 20px;font-weight:500}

/* FAQ (home) */
.faqs{background:var(--faq);padding:84px 0 60px}
.faqs h2{text-align:center;font-size:26px;font-weight:700;margin:0 0 20px}
.faqs .list{max-width:1100px;margin:0 auto}
.faqs details{border-bottom:2px dotted #777;padding:14px 0}
.faqs summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;font-size:22px;line-height:30px;font-weight:700}
.faqs summary::-webkit-details-marker{display:none}
.faqs summary:after{content:"";width:8px;height:8px;border-right:2px solid #000;border-bottom:2px solid #000;transform:rotate(45deg);margin:8px 8px 0 0;transition:transform .2s}
.faqs details[open] summary:after{transform:rotate(-135deg);margin-top:12px}
.faqs details p{margin:12px 0 4px;font-size:16px;line-height:26px}

.founders{background:var(--faq);padding:40px 0 100px}
.founders h2{text-align:center;font-size:26px;font-weight:800;color:var(--navy);margin:0 0 48px;text-transform:uppercase}
.founders .row{display:grid;grid-template-columns:310px 1fr;gap:20px;max-width:1020px;margin:0 auto;align-items:center}
.founders .photo{height:310px;border:7px solid #000;outline:none}
.founders .photo.duo{background:var(--purple-soft);display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.founders .photo.duo img{display:block;height:calc(100% - 8px);width:auto;max-width:none;flex-shrink:0}
.founders .photo.duo img:first-child{position:relative;z-index:2;transform:translateX(15%) scale(1.12);transform-origin:center top}
.founders .photo.duo img+img{position:relative;z-index:1;margin-left:-54px;transform:translate(8%,0%) scale(1.12);transform-origin:center top}
.founders p{font-size:16px;line-height:26px;margin:0 0 20px}

/* Footer (purple on home/apply, blue on workshop) */
.foot{background:var(--purple);color:#fff;padding:35px 0;font-weight:200;font-size:12px;line-height:15.6px}
.foot .flogo{font-size:36px;font-weight:800;display:flex;align-items:center;gap:12px;margin:0 0 30px;text-transform:uppercase;letter-spacing:.5px}

.foot .flogo .mark{width:36px;height:36px;position:relative}
.foot .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:40px}
.foot h5{font-size:14px;font-weight:600;letter-spacing:1px;margin:0 0 18px;text-transform:uppercase}
.foot .cols a{display:block;font-size:14px;margin-bottom:17px;font-weight:300}
.foot .legal{text-align:center;font-size:15px;font-weight:400;display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-bottom:14px}
.foot .disc{font-size:14px;line-height:14px}
.foot.blue{background:var(--blue)}
.foot.blue .flogo{font-size:15px;gap:8px;margin-bottom:26px}
.foot.blue .flogo .mark{width:16px;height:16px}
.foot.blue .disc{text-align:center}

/* ===== Workshop (ad landing) ===== */
.ws-top{background:var(--purple);height:34px}
.ws-hero{background:var(--blue);color:#fff;text-align:center;padding:10px 16px 0;position:relative}
.ws-hero h1{font-size:52px;line-height:56px;font-weight:800;text-transform:uppercase;margin:0 auto 12px;max-width:860px}
.ws-hero h2{font-size:28px;line-height:32px;font-weight:400;margin:0 auto 32px;max-width:680px}
.ticker{position:sticky;top:0;z-index:20;background:var(--yellow);height:34px;display:flex;align-items:center;justify-content:center;padding:8px;margin:0 -16px}
.ticker a{background:#fff;color:var(--navy);font-size:10px;line-height:10px;font-weight:800;letter-spacing:.96px;text-transform:uppercase;padding:4px 6px;border-radius:3px}
.ticker .dot{display:inline-block;width:7px;height:7px;background:var(--red);border-radius:50%;margin-right:4px;animation:pulse 1.4s infinite}
@keyframes pulse{50%{opacity:.25}}
.vsl-wrap{position:relative;background:linear-gradient(var(--blue) 0 55%,var(--blue-dk) 55%)}
.vsl{width:550px;max-width:100%;aspect-ratio:550/276;margin:-34px auto 0;position:relative;z-index:2}
.vsl.ph{background-color:#1d1d1d;color:#fff;flex-direction:column;gap:8px;font-size:15px}
.vsl .unmute{background:rgba(255,82,82,.85);padding:22px 30px;border-radius:4px;font-family:Arial,sans-serif;font-weight:700;font-size:20px}
.ws-cta{background:var(--blue-dk);padding:70px 16px 60px;text-align:center}
.btn-y{display:inline-flex;justify-content:center;align-items:center;background:var(--yellow);color:#000;font-weight:700;font-size:24px;border-radius:8px;padding:22px 10px;width:440px;max-width:100%;text-transform:uppercase;transition:transform .15s,filter .15s;border:0;cursor:pointer;font-family:var(--font)}
.btn-y:hover{transform:scale(1.03);filter:brightness(1.05)}
.btn-y.sm{font-size:20px;font-weight:900;width:auto;padding:20px 48px}
.frame{background:var(--blue-dk);padding:0 16px 20px}
.proof{background:var(--paper);max-width:1410px;margin:0 auto;padding:30px 16px 20px;text-align:center}
.proof h2{font-size:32px;line-height:40px;font-weight:700;margin:0 0 20px}
.vids{max-width:1020px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.vids .ph{aspect-ratio:240/280}
.vids .ph.w2{grid-column:span 2;aspect-ratio:500/280}
.reviews{max-width:1130px;margin:48px auto 0;display:grid;grid-template-columns:repeat(6,1fr);gap:22px}
.review{grid-column:span 2;background:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.05);padding:22px 26px 34px;font-size:15px;line-height:23px;font-weight:300}
.review:nth-child(n+4){grid-column:span 3}
.review .stars{color:var(--purple);font-size:20px;letter-spacing:2px;margin-bottom:8px}
.review .who{border-top:1px solid #ddd;margin-top:14px;padding-top:12px;font-weight:600;font-size:15px}
.review .src{font-size:12px;color:#777;font-weight:300}
.book-anchor{padding:80px 16px 40px;max-width:900px;margin:0 auto;text-align:center}
.dates{padding:40px 16px 70px;text-align:center}
.dates h2{font-size:45px;line-height:48px;font-weight:700;color:#141527;text-transform:uppercase;max-width:1000px;margin:0 auto 20px}
.dates p{font-size:15px;line-height:22px;max-width:820px;margin:0 auto 42px;font-weight:300}
.dgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;max-width:1100px;margin:0 auto 40px}
.date{border:2px solid #ccc;border-radius:12px;padding:32px 10px 34px;position:relative;background:#fff}
.date .d{font-size:26px;font-weight:700;color:var(--navy);margin-bottom:14px;text-transform:uppercase}
.date .s{display:inline-block;border-radius:999px;padding:6px 22px;font-weight:700;font-size:15px;text-transform:uppercase}
.date.out{background:#e9e9e9}.date.out .d{color:#aaa}.date.out .s{background:#999;color:#fff}
.date .so{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--red);color:#fff;font-size:10px;font-weight:700;padding:3px 14px;border-radius:999px;text-transform:uppercase}
.date.hot{border-color:var(--purple)}.date.hot .s{background:var(--purple);color:#fff}
.date.open .s{background:var(--purple-soft);color:var(--purple);border:1.5px solid var(--purple)}
.ws-faq{max-width:990px;margin:0 auto;padding:40px 16px 20px}
.ws-faq details{margin-bottom:40px}
.ws-faq summary{list-style:none;background:var(--blue);color:#fff;text-align:center;font-size:24px;line-height:30px;font-weight:700;padding:25px 50px;border-radius:3px;cursor:pointer;position:relative}
.ws-faq summary::-webkit-details-marker{display:none}
.ws-faq summary:after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:22px}
.ws-faq details[open] summary:after{content:"\00d7"}
.ws-faq .body{padding:20px 16px 0;font-size:20px;line-height:28px;font-weight:300;letter-spacing:.3px}
.ws-faq .body p{margin:0 0 20px}

/* ===== Booking widget (iClosed-style, Inter) ===== */
.ic{font-family:'Inter',Arial,sans-serif;max-width:790px;margin:0 auto;background:#fff;border:1px solid #d9dde3;border-radius:8px;color:#1b1f24;text-align:left;overflow:hidden}
.ic-steps{display:flex;justify-content:center;gap:22px;padding:12px;border-bottom:1px solid #d9dde3;font-size:14px;color:#999}
.ic-steps .on{color:#1b1f24}.ic-steps span:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#ccc;margin-right:7px;vertical-align:1px}
.ic-steps .on:before{background:#006ab6}
.ic-body{display:grid;grid-template-columns:1fr 1fr}
.ic-left{padding:22px 24px;border-right:1px solid #d9dde3}
.ic-left h3{font-size:19px;font-weight:600;margin:0 0 8px}
.ic-left p{font-size:14px;line-height:20px;color:#444;margin:0 0 14px}
.ic input,.ic select,.ic textarea{width:100%;font:inherit;font-size:14px;border:1px solid #d0d5dc;background:#f7f8fa;border-radius:6px;padding:10px 12px;margin-bottom:12px;color:#1b1f24}
.ic input:focus,.ic select:focus{outline:2px solid #1b1f24;background:#fff}
.ic .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ic label.cb{display:flex;gap:10px;font-size:12px;line-height:17px;color:#333;margin:4px 0 14px}
.ic label.cb input{width:16px;height:16px;margin:0;flex:none}
.ic label.q{display:block;font-size:13px;font-weight:600;margin:4px 0 6px}
.ic-btn{width:100%;background:#006ab6;color:#fff;border:0;border-radius:6px;padding:12px;font:600 15px 'Inter',Arial,sans-serif;cursor:pointer}
.ic-btn:disabled{opacity:.5;cursor:not-allowed}
.ic-right{padding:20px 22px;position:relative}
.cal-h{display:flex;justify-content:space-between;align-items:center;font-size:16px;margin-bottom:14px}
.cal-h button{background:#fff;border:1px solid #e3e6ea;border-radius:6px;width:30px;height:30px;cursor:pointer;color:#555}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center;font-size:14px}
.cal .dow{font-size:11px;color:#888;letter-spacing:.5px}
.cal .day{padding:9px 0;border-radius:6px;color:#aaa}
.cal .day.av{background:#e6f0f8;color:#006ab6;font-weight:600;cursor:pointer}
.cal .day.sel{background:#006ab6;color:#fff}
.locked .cal{opacity:.45;pointer-events:none}
.lockmsg{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);background:#fff;border:1px solid #d9dde3;border-radius:6px;box-shadow:0 2px 10px rgba(0,0,0,.08);padding:12px 18px;font-size:13px;text-align:center;width:230px}
.slots{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.slots button{border:1px solid #006ab6;color:#006ab6;background:#fff;border-radius:6px;padding:9px;font:600 13px 'Inter';cursor:pointer}
.slots button.sel{background:#006ab6;color:#fff}
.ic-foot{border-top:1px solid #d9dde3;text-align:center;font-size:11px;padding:6px;color:#555}
.todo{font-family:ui-monospace,Menlo,monospace;font-size:12px;background:#fff6c7;border:1px dashed #b8930a;color:#6b5400;padding:8px 12px;border-radius:4px;max-width:790px;margin:0 auto 14px;text-align:left}

/* ===== Apply ===== */
.apply-h{text-align:center;padding:30px 16px 0}
.apply-h .step{display:inline-block;background:var(--purple);color:#fff;font-size:26px;font-weight:800;line-height:36px;padding:0 6px}
.apply-h h1{font-size:36px;line-height:41px;font-weight:800;margin:14px 0 0;text-transform:uppercase}
.apply-h h1 em{color:var(--purple)}
.jf{max-width:832px;margin:100px auto 110px;background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.12);border-radius:3px;overflow:hidden}
.jf .q{padding:28px 50px 36px;text-align:center}
.jf h3{font-family:'Inter',Arial,sans-serif;font-weight:400;font-size:25px;margin:0 0 20px;color:#2c3345}
.jf h3 i{color:#f23a3c;font-style:normal}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tiles.six{grid-template-columns:repeat(3,1fr)}
.tile{border:1px solid #bbb;border-radius:3px;padding:30px 8px 14px;cursor:pointer;position:relative;font-family:'Inter',Arial;font-size:15px;color:#2c3345;display:flex;flex-direction:column;align-items:center;gap:10px}
.tile:before{content:"";position:absolute;left:10px;top:10px;width:14px;height:14px;border:1px solid #999;border-radius:50%}
.tile.sel{border-color:var(--purple);box-shadow:0 0 0 2px var(--purple)}
.tile.sel:before{background:var(--purple);border-color:var(--purple)}
.tile .ico{width:60px;height:44px;border:3px solid var(--purple);border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--purple);font-weight:800;font-size:13px}
.jf textarea,.jf input[type=text],.jf select{width:100%;border:1px solid #bbb;border-radius:3px;padding:12px;font:15px 'Inter',Arial;min-height:46px}
.jf textarea{min-height:120px}
.jf .hint{font-family:'Inter';font-size:13px;color:#777;margin:8px 0 0;text-align:left}
.jf-nav{display:grid;grid-template-columns:1fr 1fr;background:var(--purple);color:#fff;height:56px}
.jf-nav button{background:none;border:0;color:#fff;font:500 17px 'Inter',Arial;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;padding:0 28px}
.jf-nav .next{text-align:right;border-left:1px solid rgba(255,255,255,.25)}
.jf-nav .prev{text-align:left}
.jf-nav button:disabled{opacity:.35}
.consent{max-width:1140px;margin:0 auto 20px;padding:0 16px;font-size:16px;line-height:24px}
.jf .progress{height:4px;background:#eee}.jf .progress i{display:block;height:100%;background:var(--purple);transition:width .3s}

/* ===== Booked ===== */
.bk-hero{background:var(--blue);color:#fff;text-align:center;padding:50px 16px 0}
.bk-hero .chk{display:inline-block;background:var(--yellow);color:#000;font-weight:800;font-size:14px;letter-spacing:1px;padding:6px 14px;border-radius:3px;text-transform:uppercase;margin-bottom:18px}
.bk-hero h1{font-size:48px;line-height:54px;font-weight:800;text-transform:uppercase;margin:0 auto 12px;max-width:900px}
.bk-hero h2{font-size:24px;line-height:32px;font-weight:400;margin:0 auto 34px;max-width:700px}
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1100px;margin:0 auto}
.steps3 .review{grid-column:auto;text-align:left;font-size:16px;line-height:25px}
.steps3 .num{display:inline-flex;width:40px;height:40px;border-radius:50%;background:var(--purple);color:#fff;font-weight:800;align-items:center;justify-content:center;margin-bottom:12px}
.steps3 h4{font-size:20px;font-weight:700;margin:0 0 8px;color:var(--navy)}

/* Reveal animation (his site fades sections in) */
.rv{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.rv.in{opacity:1;transform:none}

/* ===== Mobile ===== */
@media (max-width:900px){
  .nav ul,.nav .btn-pill{display:none}
  .burger{display:block}
  .nav.open ul{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:var(--navy);padding:20px;gap:18px;z-index:30}
  .nav{position:relative;height:62px}
  .announce{padding:12px 12px;font-size:14px;line-height:24px}
  .hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0 15px}
  .hero .center{grid-column:1 / -1;grid-row:1}
  .hero img.person{grid-row:2;height:min(76vw,340px);width:auto;max-width:none;margin:0;position:static}
  .hero img.person.l{justify-self:end}
  .hero img.person.r{justify-self:start;margin-left:-7vw}
  .hero h1{font-size:44px!important;line-height:48px!important}
  .hero .center{padding:36px 0 20px}
  .hero h1{font-size:54px;line-height:58px}
  .hero p{font-size:20px;line-height:28px;margin-bottom:22px}
  .btn-big{min-width:0;width:100%;font-size:14px;padding:12px}
  .stats .wrap{grid-template-columns:1fr 1fr;gap:30px 20px}
  .stat .n{font-size:32px;line-height:36px}.stat .l{font-size:11px}
  .feature{grid-template-columns:1fr;padding:50px 12px 24px;margin:0 10px;gap:20px}
  .feature h3{font-size:19px}
  .feature .btn-pill{width:100%;font-size:15px}
  .training h2{font-size:26px;line-height:32px}
  .cards{grid-template-columns:1fr;gap:70px;padding:0 30px}
  .faqs summary{font-size:18px;line-height:26px}
  .founders .row{grid-template-columns:1fr}
  .foot .flogo{font-size:24px}
  .foot .cols{grid-template-columns:1fr 1fr}
  .ws-hero h1{font-size:34px;line-height:38px}
  .ws-hero h2{font-size:19px;line-height:25px}
  .proof h2{font-size:24px;line-height:30px}
  .vids{grid-template-columns:1fr 1fr;gap:10px}
  .reviews{grid-template-columns:1fr}.review,.review:nth-child(n+4){grid-column:auto}
  .dates h2{font-size:30px;line-height:34px}
  .dgrid{grid-template-columns:1fr 1fr;gap:26px 14px}
  .ws-faq summary{font-size:18px;line-height:24px;padding:18px 40px}
  .ws-faq .body{font-size:17px;line-height:26px}
  .btn-y{font-size:20px}
  .ic-body{grid-template-columns:1fr}.ic-left{border-right:0;border-bottom:1px solid #d9dde3}
  .apply-h .step{font-size:22px}.apply-h h1{font-size:26px;line-height:32px}
  .jf{margin:50px 12px 60px}.jf .q{padding:22px 16px 28px}.jf h3{font-size:20px}
  .tiles,.tiles.six{grid-template-columns:1fr 1fr;gap:10px}
  .consent{font-size:14px;line-height:21px}
  .bk-hero h1{font-size:32px;line-height:38px}.bk-hero h2{font-size:18px;line-height:26px}
  .steps3{grid-template-columns:1fr}
}

/* ===== Call booking page (call.html / launch.html / call-booked.html) ===== */
.flag{display:inline-block;background:var(--red);color:#fff;font-size:11px;font-weight:800;letter-spacing:.6px;padding:3px 10px;border-radius:3px;text-transform:uppercase;margin-bottom:10px}
.draftbox{outline:2px dashed #ff2d7a;outline-offset:-2px;background:repeating-linear-gradient(45deg,rgba(255,45,122,.06) 0 10px,#fff 10px 20px);border-radius:10px;padding:20px 24px;text-align:left}
.draftbox .flag{background:#b0004a}
.price{background:#fff;border:2px solid var(--purple);border-radius:12px;max-width:760px;margin:0 auto;padding:26px 20px;text-align:center}
.price .big{font-size:34px;line-height:40px;font-weight:800;color:var(--navy)}
.price .small{font-size:17px;margin-top:6px;font-weight:400}
.fitgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:1000px;margin:0 auto}
.fitgrid .review{grid-column:auto;text-align:left;font-size:17px;line-height:26px}
.fitgrid h4{font-size:20px;margin:0 0 8px;color:var(--navy)}
.yes h4:before{content:"\2713  ";color:var(--purple)}.no h4:before{content:"\2715  ";color:var(--red)}
.rules{max-width:990px;margin:0 auto;padding:10px 16px 30px}
.rules .body{padding:20px 16px 0;font-size:19px;line-height:28px;font-weight:300}
.rules .body p{margin:0 0 16px}
.evt{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.evt span{font-size:12px;background:#e6f0f8;color:#006ab6;border-radius:999px;padding:4px 10px;font-weight:600}
.note{border-radius:6px;padding:10px 12px;font-size:13px;line-height:19px;margin:0 0 12px}
.note.warn{background:#fff3cd;border:1px solid #e0b800;color:#5c4700}
.note.pri{background:#efe5ff;border:1px solid var(--purple);color:#3d0090}
.ic textarea{min-height:70px}
.ic .radio{display:flex;gap:8px;align-items:center;font-size:13px;margin:0 0 6px}
.ic .radio input{width:auto;margin:0}
.slotday{font-size:13px;font-weight:600;margin:14px 0 0}
@media (max-width:900px){.fitgrid{grid-template-columns:1fr}.price .big{font-size:24px;line-height:30px}.rules .body{font-size:16px;line-height:25px}}

/* ---- Content Engine Map (Look A, deck; picked by Tim 2026-09-30; source board: hormozi-style-lab/service-looks) ---- */
.engine{background:var(--band);padding:64px 0 56px}
.engine h2{font-size:36px;line-height:40px;font-weight:800;color:var(--navy);text-transform:uppercase;margin:0 0 8px;text-align:center}
.engine h2 em{color:var(--purple);font-style:normal}
.engine .sub{text-align:center;color:#333;font-weight:300;margin:0 0 32px}
.emap{max-width:1000px;margin:0 auto;background:var(--navy);color:#fff;border-radius:14px;overflow:hidden}
.emap .ek{display:flex;justify-content:space-between;gap:12px;padding:28px 40px 0;font-size:13px;line-height:20px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}
.emap .ek em{font-style:normal;color:#b57bff}
.emap .ek .r{font-weight:400;color:#cfd0dd}
.emap .eh{padding:26px 40px 0}
.emap .eh b{display:table;background:var(--purple);font-weight:800;text-transform:uppercase;font-size:46px;line-height:1;padding:10px 20px 13px}
.emap .eh b+b{margin-top:4px}
.emap .eh u{text-decoration-color:#b57bff;text-underline-offset:6px}
.emap .ecols{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:38px 32px 36px}
.emap .ept{text-align:center;padding:0 8px}
.emap .etile{position:relative;width:116px;height:116px;margin:0 auto;background:var(--purple);border-radius:22px;color:#fff}
.emap .etile svg{position:absolute;inset:22%;width:56%;height:56%}
.emap .etile i{position:absolute;top:-8px;left:-8px;width:30px;height:30px;background:#fff;color:var(--navy);font:800 15px/30px var(--font);font-style:normal;text-align:center;border-radius:6px}
.emap .enm{font-weight:800;text-transform:uppercase;font-size:22px;line-height:26px;margin-top:16px}
.emap .ecp{font-weight:300;font-size:15px;line-height:22px;color:#cfd0dd;margin-top:6px}
.emap .eband{background:var(--purple);text-align:center;font-weight:800;text-transform:uppercase;font-size:22px;line-height:26px;padding:18px 16px}
.engine .ecta{text-align:center;margin-top:28px}
.engine .ecta .btn-pill{font-weight:700;padding:16px 28px;text-transform:uppercase}
@media(max-width:760px){
 .engine{padding:44px 0 40px}
 .engine h2{font-size:28px;line-height:32px}
 .emap .ek{padding:22px 20px 0}.emap .ek .r{display:none}
 .emap .eh{padding:20px 20px 0}
 .emap .eh b{font-size:clamp(19px,5.4vw,34px);padding:8px 14px 11px}
 .emap .ecols{grid-template-columns:1fr 1fr;row-gap:28px;padding:32px 12px 28px}
 .emap .etile{width:88px;height:88px}
 .emap .enm{font-size:17px;line-height:22px}
 .emap .ecp{font-size:13px;line-height:19px}
 .emap .eband{font-size:15px;line-height:20px;padding:16px 12px}
}

/* ---- Reels strip under the hero (Creator Tunnel, tag use:sales) ---- */
.reels{background:var(--navy);color:#fff;padding:56px 0 40px}
.reels h2{font-size:36px;line-height:40px;font-weight:800;color:#fff;text-transform:uppercase;margin:0 0 8px;text-align:center}
.reels h2 em{color:#b57bff;font-style:normal}
.reels .sub{text-align:center;color:#cfd0dd;font-weight:300;margin:0 0 30px}
.railwrap{position:relative}
.rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:6px 2px 18px}
.rail::-webkit-scrollbar{display:none}
.reel{flex:0 0 min(200px,58vw);aspect-ratio:9/16;border-radius:14px;overflow:hidden;position:relative;background:#0b0c1c;scroll-snap-align:start;margin:0;box-shadow:0 10px 26px rgba(0,0,0,.4);cursor:pointer}
.reel video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#0b0c1c}
.reel.dead{display:none}
.snd{position:absolute;right:10px;bottom:10px;width:40px;height:40px;border-radius:50%;border:0;background:rgba(19,22,40,.72);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(4px);padding:0}
.snd svg{width:22px;height:22px}
.snd .on{display:none}
.snd[aria-pressed=true]{background:var(--purple)}
.snd[aria-pressed=true] .on{display:block}
.snd[aria-pressed=true] .off{display:none}
.snd:focus-visible,.rnav:focus-visible{outline:3px solid #b57bff;outline-offset:2px}
.rnav{position:absolute;top:50%;transform:translateY(-60%);width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:var(--navy);font-size:30px;line-height:40px;font-weight:600;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.35);z-index:2;padding:0 0 4px}
.rnav.prev{left:-14px}.rnav.next{right:-14px}
.rnav:disabled{opacity:0;pointer-events:none}
.reelsnote{max-width:760px;margin:20px auto 0;font-size:12px;line-height:18px;font-weight:600}
@media (hover:none),(max-width:1160px){.rnav{display:none}}
@media (max-width:760px){
 .reels{padding:40px 0 30px}
 .reels h2{font-size:26px;line-height:30px}
 .rail{padding-left:16px;padding-right:16px;margin:0 -16px;scroll-padding-left:16px}
}
@media (prefers-reduced-motion:reduce){.rail{scroll-behavior:auto}}

/* Selected work: compact portfolio scaffold, ready for approved samples. */
.selected-work{background:#08090b;color:#f4f3ef;padding:64px 0 72px;position:relative;overflow:hidden}
.selected-work:before{content:"";position:absolute;inset:0 0 auto 38%;height:220px;pointer-events:none;opacity:.42;background-image:radial-gradient(circle,#cffa31 1px,transparent 1.5px);background-size:24px 24px;mask-image:linear-gradient(90deg,transparent,black 28%,transparent)}
.selected-work .wrap{position:relative;z-index:1}
.work-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.work-kicker{margin:0 0 8px;color:#cffa31;font-size:11px;letter-spacing:3px;font-weight:800;text-transform:uppercase}
.selected-work h2{margin:0;color:#f4f3ef;font-size:clamp(42px,5vw,66px);line-height:.98;font-weight:900;letter-spacing:-2px;text-transform:uppercase}
.work-intro{margin:12px 0 0;color:#a2a39d;font-size:15px;line-height:1.5}
.work-filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.work-filter{border:1px solid #30322d;background:transparent;color:#a4a69f;border-radius:999px;padding:10px 17px;font:700 10px/1 var(--font);letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.work-filter:hover,.work-filter.is-active{background:#cffa31;border-color:#cffa31;color:#10110e}
.work-filter:focus-visible{outline:3px solid #cffa31;outline-offset:3px}
.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.work-card{min-width:0;overflow:hidden;border:1px solid #292b27;border-radius:12px;background:#11130f;color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}
.work-card:hover{transform:translateY(-3px);border-color:#646b45}
.work-card[hidden]{display:none}
.work-image{height:auto;aspect-ratio:1.5;position:relative;overflow:hidden;background:#1c2117}
.work-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s}
.work-card:hover .work-image img{transform:scale(1.04)}
.work-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(135deg,#353a2d,#151711 64%,#282d20);color:#d7d9d0;font-size:17px;font-weight:800;letter-spacing:2px;text-transform:uppercase}
.work-tone-2{background:linear-gradient(135deg,#4a3422,#18130f 64%,#31271d)}
.work-tone-3{background:linear-gradient(135deg,#32413b,#151a18 64%,#29352f)}
.work-tone-4{background:linear-gradient(135deg,#293a49,#14181c 64%,#222f3a)}
.work-badge{position:absolute;top:12px;left:12px;border-radius:999px;padding:6px 10px;background:#cffa31;color:#14160d;font-size:9px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.work-copy{padding:16px 17px 18px}
.work-meta{margin:0 0 8px;color:#90958a;font-size:9px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}
.work-copy h3{margin:0 0 7px;color:#f4f3ef;font-size:16px;line-height:1.25;font-weight:700}
.work-copy>p:last-child{margin:0;color:#92958e;font-size:12px;line-height:1.5}
@media(max-width:1000px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.selected-work{padding:46px 0 52px}.work-heading{align-items:flex-start;flex-direction:column;margin-bottom:22px}.work-filters{justify-content:flex-start}.work-grid{gap:12px}.work-copy{padding:13px}.work-copy h3{font-size:14px}.work-copy>p:last-child{font-size:11px}}
@media(max-width:430px){.work-grid{grid-template-columns:1fr}.work-image{aspect-ratio:1.8}}
.reels-pause{display:block;margin:12px auto 0;border:0;border-bottom:1px solid #77778d;background:transparent;color:#d8d6e8;font:500 11px var(--font);padding:5px 0;cursor:pointer}.reels-pause:focus-visible{outline:2px solid #b57bff;outline-offset:5px}

/* Always-available booking destinations. */
.booking-bar{position:sticky;top:0;z-index:1000;background:var(--purple,#6f00ff);color:#fff;border-bottom:1px solid rgba(255,255,255,.18)}.booking-bar>div{display:grid;grid-template-columns:1fr 1fr;max-width:560px;margin:0 auto}.booking-bar a{display:flex;align-items:center;justify-content:center;gap:20px;min-height:44px;padding:10px 22px;color:#fff;text-decoration:none;font:700 12px/1.3 var(--font);transition:background .18s}.booking-bar a+a{border-left:1px solid rgba(255,255,255,.25)}.booking-bar a:hover{background:rgba(0,0,0,.15)}.booking-bar a:focus-visible{outline:2px solid #fff;outline-offset:-5px}.booking-bar a span{font-size:15px;font-weight:400}html{scroll-padding-top:58px}@media(max-width:700px){.booking-bar>div{max-width:none}.booking-bar a{font-size:11px;gap:14px;padding:12px 10px;min-height:44px}}

.booking-bar a{gap:10px;letter-spacing:.15px}.booking-bar a img{width:18px;height:18px;display:block;filter:brightness(0) invert(1);opacity:.92;flex-shrink:0}@media(max-width:700px){.booking-bar a img{width:17px;height:17px}}
/* Booking bar: restrained moving light across a purple surface. */
.booking-bar{isolation:isolate;box-shadow:0 3px 12px rgba(18,10,35,.16);overflow:hidden}
.booking-bar::before{content:"";position:absolute;inset:-110% -35%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 36% 55%,rgba(8,7,18,.82) 0%,rgba(15,8,30,.48) 22%,transparent 58%);opacity:0;transform:translate3d(-18%,0,0) rotate(-6deg) scaleY(.8);animation:booking-wave 17s ease-in-out infinite;will-change:transform,opacity}
.booking-bar>div{position:relative;z-index:1}.booking-bar a{text-transform:uppercase;letter-spacing:1.1px;font-size:11px;font-weight:700;gap:12px;color:#fff}.booking-bar a img{width:23px;height:23px;opacity:1}.booking-bar a:hover{background:rgba(255,255,255,.07)}
@keyframes booking-wave{0%,18%,100%{opacity:0;transform:translate3d(-18%,0,0) rotate(-6deg) scaleY(.8)}38%{opacity:.62;transform:translate3d(-3%,0,0) rotate(2deg) scaleY(1.1)}60%{opacity:.7;transform:translate3d(17%,0,0) rotate(7deg) scaleY(.85)}82%{opacity:0;transform:translate3d(32%,0,0) rotate(9deg) scaleY(.7)}}
@media(max-width:700px){.booking-bar a{font-size:10px;letter-spacing:.85px;gap:10px}.booking-bar a img{width:22px;height:22px}}
@media(prefers-reduced-motion:reduce){.booking-bar::before{animation:none;opacity:0;will-change:auto}}
