@import url(‘https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap’); #fwn-june-cal{ –coral:#E26D5C; –teal:#2A6F6B; –gold:#E9C46A; –sage:#9BB18F; –cream:#FAF3E8; –ink:#1F2A37; –paper:#FCF8F1; –white:#FFFFFF; –muted:#7A7468; –line:rgba(31,42,55,.10); –shadow:0 1px 2px rgba(31,42,55,.04), 0 8px 24px rgba(31,42,55,.06); –shadow-lift:0 2px 6px rgba(31,42,55,.08), 0 18px 40px rgba(31,42,55,.14); –radius:14px; –maxw:1240px; –lead:var(–coral); /* per-type accents */ –c-push:#E26D5C; –c-pull:#2A6F6B; –c-legs:#D9A93F; –c-core:#7F9A72; –c-full:#1F2A37; –c-cardio:#9BB18F; –c-rest:#B9B2A4; –c-reset:#C99A4E; } #fwn-june-cal *{box-sizing:border-box} #fwn-june-cal{ -webkit-text-size-adjust:100%; } #fwn-june-cal{ margin:0; font-family:’Inter’,system-ui,sans-serif; color:var(–ink); background:var(–cream); background-image:radial-gradient(circle at 12% -5%, rgba(233,196,106,.16), transparent 42%), radial-gradient(circle at 100% 0%, rgba(42,111,107,.08), transparent 40%); background-attachment:fixed; line-height:1.45; -webkit-font-smoothing:antialiased; } #fwn-june-cal h1, #fwn-june-cal h2, #fwn-june-cal h3, #fwn-june-cal h4{font-family:’Poppins’,sans-serif;margin:0;color:var(–ink);font-weight:600;} #fwn-june-cal .wrap{max-width:var(–maxw);margin:0 auto;padding:0 24px;} #fwn-june-cal /* ———- Top bar ———- */ .topbar{ display:flex;align-items:center;justify-content:space-between;gap:16px; padding:18px 24px;max-width:var(–maxw);margin:0 auto; } #fwn-june-cal .brand{display:flex;align-items:center;gap:11px;} #fwn-june-cal .mark{ width:38px;height:38px;border-radius:11px;background:var(–coral); display:grid;place-items:center;flex:none;box-shadow:0 4px 12px rgba(226,109,92,.35); } #fwn-june-cal .mark svg{width:22px;height:22px;display:block;} #fwn-june-cal .brand .name{font-family:’Poppins’;font-weight:600;font-size:17px;letter-spacing:-.01em;line-height:1;} #fwn-june-cal .brand .name b{color:var(–coral);font-weight:700;} #fwn-june-cal .brand .name span{display:block;font-family:’Inter’;font-weight:500;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(–muted);margin-top:4px;} #fwn-june-cal .topbar .links{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:500;} #fwn-june-cal .topbar .links a{color:var(–ink);text-decoration:none;opacity:.78;transition:opacity .15s,color .15s;display:inline-flex;align-items:center;gap:7px;} #fwn-june-cal .topbar .links a:hover{opacity:1;color:var(–coral);} #fwn-june-cal .topbar .links svg{width:15px;height:15px;} @media(max-width:680px){ #fwn-june-cal .topbar .links .lbl{display:none;} } #fwn-june-cal /* ———- Hero ———- */ .hero{position:relative;padding:30px 0 26px;} #fwn-june-cal .hero-inner{display:grid;grid-template-columns:1.4fr .9fr;gap:40px;align-items:end;} #fwn-june-cal .eyebrow{font-family:’Poppins’;font-weight:600;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(–lead);margin-bottom:14px;} #fwn-june-cal .hero h1{font-size:clamp(58px,9vw,116px);line-height:.86;letter-spacing:-.03em;font-weight:700;} #fwn-june-cal .hero h1 .yr{font-weight:400;color:var(–teal);} #fwn-june-cal .hero .lede{font-size:17px;line-height:1.55;color:#43505c;max-width:46ch;margin:20px 0 0;} #fwn-june-cal .hero .lede b{color:var(–ink);font-weight:600;} #fwn-june-cal .stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;} #fwn-june-cal .stat{background:var(–white);border:1px solid var(–line);border-radius:999px;padding:9px 16px 9px 13px;display:flex;align-items:center;gap:9px;box-shadow:var(–shadow);} #fwn-june-cal .stat .dot{width:9px;height:9px;border-radius:50%;background:var(–coral);flex:none;} #fwn-june-cal .stat b{font-family:’Poppins’;font-weight:600;font-size:15px;} #fwn-june-cal .stat span{font-size:12.5px;color:var(–muted);} #fwn-june-cal .tagcard{ background:linear-gradient(150deg,var(–teal),#235a57);color:#fff;border-radius:18px;padding:26px 26px 24px; box-shadow:var(–shadow-lift);position:relative;overflow:hidden; } #fwn-june-cal .tagcard::after{content:””;position:absolute;right:-40px;bottom:-50px;width:160px;height:160px;border-radius:50%;background:rgba(233,196,106,.18);} #fwn-june-cal .tagcard .k{font-family:’Poppins’;font-weight:600;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(–gold);margin-bottom:14px;} #fwn-june-cal .tagcard .q{font-family:’Poppins’;font-weight:600;font-size:25px;line-height:1.18;letter-spacing:-.01em;position:relative;} #fwn-june-cal .tagcard .sig{margin-top:16px;font-size:13.5px;color:rgba(255,255,255,.82);position:relative;} #fwn-june-cal .tagcard .sig b{color:#fff;font-weight:600;} @media(max-width:840px){ #fwn-june-cal .hero-inner{grid-template-columns:1fr;gap:26px;} #fwn-june-cal .tagcard{order:2;} } #fwn-june-cal /* ———- Legend ———- */ .legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:30px 0 6px;} #fwn-june-cal .legend .lab{font-family:’Poppins’;font-weight:600;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(–muted);margin-right:4px;} #fwn-june-cal .lg{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;background:var(–white);border:1px solid var(–line);padding:6px 12px 6px 9px;border-radius:999px;} #fwn-june-cal .lg .sw{width:12px;height:12px;border-radius:4px;flex:none;} #fwn-june-cal /* ———- Calendar ———- */ .cal{margin:18px 0 10px;} #fwn-june-cal .dow{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:10px;padding:0 2px;} #fwn-june-cal .dow span{font-family:’Poppins’;font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(–muted);text-align:left;padding-left:2px;} #fwn-june-cal .dow span.we{color:var(–coral);} #fwn-june-cal .weekblock{margin-bottom:14px;} #fwn-june-cal .weekbar{ display:flex;align-items:center;gap:16px;flex-wrap:wrap; background:var(–white);border:1px solid var(–line);border-left:5px solid var(–lead); border-radius:12px;padding:12px 18px;margin-bottom:10px;box-shadow:var(–shadow); } #fwn-june-cal .weekbar .wk{font-family:’Poppins’;font-weight:700;font-size:15px;letter-spacing:.02em;color:var(–ink);white-space:nowrap;} #fwn-june-cal .weekbar .wk small{display:block;font-family:’Inter’;font-weight:500;font-size:11.5px;letter-spacing:.04em;color:var(–muted);text-transform:uppercase;margin-top:2px;} #fwn-june-cal .weekbar .chal{display:flex;align-items:center;gap:11px;background:color-mix(in srgb,var(–lead) 13%,var(–white));border:1px solid color-mix(in srgb,var(–lead) 26%,transparent);border-radius:10px;padding:8px 14px;} #fwn-june-cal .weekbar .chal .ico{width:26px;height:26px;border-radius:8px;background:var(–lead);display:grid;place-items:center;flex:none;} #fwn-june-cal .weekbar .chal .ico svg{width:15px;height:15px;} #fwn-june-cal .weekbar .chal .tx b{font-family:’Poppins’;font-weight:600;font-size:13.5px;display:block;line-height:1.15;} #fwn-june-cal .weekbar .chal .tx span{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(–lead);font-weight:600;} #fwn-june-cal .weekbar .spacer{flex:1;} #fwn-june-cal .weekbar .talkmini{display:flex;align-items:center;gap:9px;color:var(–teal);font-size:12.5px;font-weight:500;} #fwn-june-cal .weekbar .talkmini b{font-family:’Poppins’;font-weight:600;} #fwn-june-cal .weekbar .talkmini .tt{width:24px;height:24px;border-radius:7px;background:rgba(42,111,107,.12);display:grid;place-items:center;flex:none;} #fwn-june-cal .weekbar .talkmini svg{width:14px;height:14px;} #fwn-june-cal .daygrid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;} #fwn-june-cal .day{ position:relative;background:var(–white);border:1px solid var(–line);border-radius:var(–radius); padding:13px 13px 14px;min-height:158px;cursor:pointer;overflow:hidden; box-shadow:var(–shadow);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease; display:flex;flex-direction:column; border-top:4px solid var(–accent,var(–line)); } #fwn-june-cal .day:hover{transform:translateY(-3px);box-shadow:var(–shadow-lift);border-color:var(–accent);} #fwn-june-cal .day:focus-visible{outline:3px solid var(–accent);outline-offset:2px;} #fwn-june-cal .day .dnum{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:9px;} #fwn-june-cal .day .dnum b{font-family:’Poppins’;font-weight:700;font-size:21px;line-height:1;} #fwn-june-cal .day .dnum .wd{font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(–muted);} #fwn-june-cal .chip{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;padding:4px 10px 4px 8px;border-radius:999px;font-size:11px;font-weight:600;font-family:’Poppins’;letter-spacing:.02em;margin-bottom:8px;} #fwn-june-cal .chip .pd{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none;} #fwn-june-cal .day h4{font-family:’Poppins’;font-weight:600;font-size:15.5px;line-height:1.16;letter-spacing:-.01em;margin-bottom:3px;} #fwn-june-cal .day .sub{font-size:11.5px;color:var(–muted);line-height:1.3;} #fwn-june-cal .day .meta{margin-top:auto;padding-top:10px;display:flex;align-items:center;gap:6px;font-size:11.5px;color:#5a6470;font-weight:500;flex-wrap:wrap;} #fwn-june-cal .day .meta .pill{background:var(–cream);border-radius:6px;padding:2px 7px;white-space:nowrap;} #fwn-june-cal .day .talk{margin-top:9px;display:flex;align-items:flex-start;gap:8px;background:rgba(42,111,107,.08);border:1px solid rgba(42,111,107,.16);border-radius:9px;padding:8px 9px;} #fwn-june-cal .day .talk .tt{width:22px;height:22px;border-radius:6px;background:var(–teal);display:grid;place-items:center;flex:none;margin-top:1px;} #fwn-june-cal .day .talk .tt svg{width:13px;height:13px;} #fwn-june-cal .day .talk .ttx b{font-family:’Poppins’;font-weight:600;font-size:11.5px;color:var(–teal);display:block;line-height:1.15;} #fwn-june-cal .day .talk .ttx span{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(–teal);font-weight:600;opacity:.8;} #fwn-june-cal .day.is-rest, #fwn-june-cal .day.is-cardio{background:#FBF7EF;} #fwn-june-cal .day.is-rest h4, #fwn-june-cal .day.is-cardio .sub{color:var(–ink);} #fwn-june-cal .day.is-rest .restmark{margin-top:auto;font-size:11.5px;color:var(–muted);font-weight:500;display:flex;align-items:center;gap:6px;} #fwn-june-cal /* tail days (Jun 29-30) */ .tailgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-top:10px;} #fwn-june-cal .day.is-reset{background:linear-gradient(160deg,#fff,rgba(233,196,106,.12));border-style:solid;cursor:default;border-top-color:var(–c-reset);} #fwn-june-cal .day.is-reset:hover{transform:none;box-shadow:var(–shadow);} #fwn-june-cal .day.is-reset .note{font-size:12px;color:#5a6470;line-height:1.35;margin-top:6px;} #fwn-june-cal .tail-empty{border:1px dashed var(–line);border-radius:var(–radius);background:rgba(255,255,255,.35);min-height:158px;} #fwn-june-cal /* ———- Mobile calendar ———- */ @media(max-width:860px){ .dow{display:none;} #fwn-june-cal .daygrid, #fwn-june-cal .tailgrid{grid-template-columns:repeat(2,1fr);} #fwn-june-cal .day{min-height:auto;} #fwn-june-cal } @media(max-width:540px){ .daygrid,.tailgrid{grid-template-columns:1fr;} #fwn-june-cal .weekbar{border-radius:10px;} #fwn-june-cal } /* ———- CTA ———- */ .cta{ margin:34px 0 10px;background:linear-gradient(135deg,var(–coral),#d05642);color:#fff; border-radius:22px;padding:38px 40px;display:grid;grid-template-columns:1.5fr auto;gap:30px;align-items:center; box-shadow:var(–shadow-lift);position:relative;overflow:hidden; } #fwn-june-cal .cta::before{content:””;position:absolute;left:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.08);} #fwn-june-cal .cta::after{content:””;position:absolute;right:6%;bottom:-80px;width:220px;height:220px;border-radius:50%;background:rgba(31,42,55,.10);} #fwn-june-cal .cta .ct-k{font-family:’Poppins’;font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.82);margin-bottom:12px;position:relative;} #fwn-june-cal .cta h2{color:#fff;font-size:clamp(26px,3.4vw,36px);line-height:1.08;letter-spacing:-.02em;position:relative;} #fwn-june-cal .cta p{position:relative;margin:14px 0 0;font-size:15.5px;line-height:1.55;color:rgba(255,255,255,.9);max-width:50ch;} #fwn-june-cal .cta .actions{position:relative;display:flex;flex-direction:column;gap:11px;} #fwn-june-cal .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:’Poppins’;font-weight:600;font-size:15px;border-radius:12px;padding:14px 24px;text-decoration:none;cursor:pointer;border:none;transition:transform .14s,box-shadow .14s;white-space:nowrap;} #fwn-june-cal .btn-light{background:#fff;color:var(–coral);box-shadow:0 8px 20px rgba(31,42,55,.18);} #fwn-june-cal .btn-light:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(31,42,55,.24);} #fwn-june-cal .btn-ghost{background:rgba(255,255,255,.12);color:#fff;border:1.5px solid rgba(255,255,255,.55);} #fwn-june-cal .btn-ghost:hover{background:rgba(255,255,255,.2);} #fwn-june-cal .btn svg{width:17px;height:17px;} @media(max-width:760px){ #fwn-june-cal .cta{grid-template-columns:1fr;padding:30px 26px;} } #fwn-june-cal /* ———- Footer ———- */ .foot{margin:30px 0 60px;border-top:1px solid var(–line);padding-top:26px;display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:start;} #fwn-june-cal .foot .fbrand{display:flex;align-items:center;gap:11px;margin-bottom:14px;} #fwn-june-cal .foot .fbrand .name{font-family:’Poppins’;font-weight:600;font-size:16px;} #fwn-june-cal .foot .fbrand .name b{color:var(–coral);} #fwn-june-cal .foot p{font-size:13px;color:var(–muted);line-height:1.6;margin:0 0 4px;max-width:52ch;} #fwn-june-cal .foot .contact{display:flex;flex-direction:column;gap:10px;} #fwn-june-cal .foot .contact a{display:inline-flex;align-items:center;gap:10px;color:var(–ink);text-decoration:none;font-size:13.5px;font-weight:500;} #fwn-june-cal .foot .contact a:hover{color:var(–coral);} #fwn-june-cal .foot .contact .ci{width:30px;height:30px;border-radius:8px;background:var(–white);border:1px solid var(–line);display:grid;place-items:center;flex:none;} #fwn-june-cal .foot .contact svg{width:15px;height:15px;} #fwn-june-cal .disclaimer{grid-column:1/-1;font-size:11px;color:#9a948a;line-height:1.55;border-top:1px solid var(–line);padding-top:16px;margin-top:6px;} @media(max-width:680px){ #fwn-june-cal .foot{grid-template-columns:1fr;} } #fwn-june-cal /* ———- Modal ———- */ .overlay{position:fixed;inset:0;background:rgba(31,42,55,.5);backdrop-filter:blur(4px);z-index:80;opacity:0;pointer-events:none;transition:opacity .22s;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto;} #fwn-june-cal .overlay.open{opacity:1;pointer-events:auto;} #fwn-june-cal .modal{background:var(–paper);width:100%;max-width:600px;border-radius:20px;box-shadow:0 30px 80px rgba(31,42,55,.4);overflow:hidden;transform:translateY(16px) scale(.985);transition:transform .24s cubic-bezier(.2,.8,.2,1);margin:auto 0;} #fwn-june-cal .overlay.open .modal{transform:none;} #fwn-june-cal .mhead{position:relative;padding:24px 26px 22px;color:#fff;overflow:hidden;} #fwn-june-cal .mhead::after{content:””;position:absolute;right:-30px;top:-40px;width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,.12);} #fwn-june-cal .mhead .mdate{font-family:’Poppins’;font-weight:600;font-size:12px;letter-spacing:.16em;text-transform:uppercase;opacity:.9;margin-bottom:8px;position:relative;} #fwn-june-cal .mhead h3{color:#fff;font-size:28px;line-height:1.05;letter-spacing:-.02em;position:relative;} #fwn-june-cal .mhead .msub{font-size:13.5px;opacity:.92;margin-top:6px;position:relative;font-weight:500;} #fwn-june-cal .mhead .close{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.2);border:none;color:#fff;cursor:pointer;display:grid;place-items:center;z-index:2;transition:background .15s;} #fwn-june-cal .mhead .close:hover{background:rgba(255,255,255,.34);} #fwn-june-cal .mhead .close svg{width:16px;height:16px;} #fwn-june-cal .mbody{padding:22px 26px 26px;} #fwn-june-cal .mtag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;font-family:’Poppins’;padding:5px 12px;border-radius:999px;margin-bottom:18px;} #fwn-june-cal .block{margin-bottom:16px;} #fwn-june-cal .block .blab{font-family:’Poppins’;font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(–coral);margin-bottom:9px;display:flex;align-items:center;gap:9px;} #fwn-june-cal .block .blab::after{content:””;height:1px;flex:1;background:var(–line);} #fwn-june-cal .ex{display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(–line);} #fwn-june-cal .ex:last-child{border-bottom:none;} #fwn-june-cal .ex .en{font-weight:600;font-size:14.5px;color:var(–ink);} #fwn-june-cal .ex .em{font-size:12px;color:var(–muted);margin-top:2px;} #fwn-june-cal .ex .em b{color:var(–sage);font-weight:600;} #fwn-june-cal .ex .es{font-family:’Poppins’;font-weight:600;font-size:13.5px;color:var(–teal);white-space:nowrap;text-align:right;} #fwn-june-cal .cardio-row{display:flex;align-items:center;gap:12px;background:rgba(155,177,143,.14);border:1px solid rgba(155,177,143,.3);border-radius:11px;padding:12px 14px;margin-top:6px;} #fwn-june-cal .cardio-row .ci{width:30px;height:30px;border-radius:8px;background:var(–sage);display:grid;place-items:center;flex:none;} #fwn-june-cal .cardio-row .ci svg{width:17px;height:17px;} #fwn-june-cal .cardio-row b{font-family:’Poppins’;font-weight:600;font-size:14px;} #fwn-june-cal .cardio-row span{font-size:12.5px;color:var(–muted);} #fwn-june-cal .cardio-row .dur{margin-left:auto;font-family:’Poppins’;font-weight:600;color:var(–teal);font-size:14px;} #fwn-june-cal .coachnote{margin-top:18px;background:var(–cream);border-radius:12px;padding:14px 16px;display:flex;gap:12px;} #fwn-june-cal .coachnote .qm{font-family:’Poppins’;font-weight:700;font-size:34px;line-height:.7;color:var(–coral);} #fwn-june-cal .coachnote p{margin:0;font-size:13.5px;line-height:1.5;color:#43505c;} #fwn-june-cal .coachnote p b{color:var(–ink);} #fwn-june-cal .restbig{text-align:center;padding:18px 10px 6px;} #fwn-june-cal .restbig .ico{width:60px;height:60px;border-radius:16px;background:var(–cream);display:grid;place-items:center;margin:0 auto 14px;} #fwn-june-cal .restbig .ico svg{width:30px;height:30px;} #fwn-june-cal .restbig h4{font-size:20px;margin-bottom:8px;} #fwn-june-cal .restbig p{font-size:14px;color:var(–muted);max-width:38ch;margin:0 auto;line-height:1.5;} #fwn-june-cal .print-hint{display:none;}
fit with nikkiAccountability Group
June 2026 · Accountability Group

June ’26

Four weeks of progressive strength, smart cardio, and a crew in your corner. Five workouts a week, every level welcome — tap any day to see the full plan, modifications included.

4weeks
5workouts / week
Alllevels & equipment
Workout key
MonTueWedThuFriSatSun
Not in the group yet?

Your spot in the July crew is open.

This is the calendar my accountability group follows — personalized coaching, daily check-ins, and a community that shows up. Same energy, built around your body and your schedule.

fit with nikki

Empowering you to build a stronger body and a healthier mind through personalized online coaching. Personalized training, flexible nutrition, and daily accountability — worldwide, virtual.

This content is for educational purposes only and is not medical advice. Always consult your physician before starting any new exercise or nutrition program, especially if you are pregnant, postpartum, recovering from injury, or managing a medical condition. Listed modifications are starting points — scale to your own level.

/* Fit with Nikki — June Accountability Group Program data parsed from “June Accountability Group – weeks 1 to 4.csv” Each workout day: { type, title, sub, blocks:[{label, items:[{ex, mod, sets}]}], cardio:{label, dur} } Types: push | pull | legs | core | full | cardio | rest */ window.__FWN_PROGRAM = { weeks: [ { week: 1, range: “June 1 – 7”, challenge: { title: “Log 3–5 workouts”, note: “Get on the board. Aim for three to five logged sessions this week — consistency over perfection.” }, talk: { title: “Cardio after strength training”, note: “Why we lift first and add cardio after — and what it does for your results.” }, days: [ { type:”push”, title:”Push Day”, sub:”Chest, Shoulders & Triceps”, blocks:[ {label:”Superset A”, items:[ {ex:”DB Chest Press”, mod:”Floor press”, sets:”3 × 12″}, {ex:”DB Overhead Shoulder Press”, mod:”Seated DB press”, sets:”3 × 12″}]}, {label:”Superset B”, items:[ {ex:”DB Incline Chest Fly”, mod:”Low incline fly”, sets:”3 × 12″}, {ex:”DB Lateral Raises”, mod:”Light DB”, sets:”3 × 15″}]}, {label:”Superset C”, items:[ {ex:”DB Overhead Tricep Extension”, mod:”Light DB”, sets:”3 × 12″}, {ex:”Push-Ups”, mod:”Knee push-ups”, sets:”3 × 10–12″}]}], cardio:{label:”Steady pace”, dur:”10 min”} }, { type:”pull”, title:”Pull Day”, sub:”Back & Biceps”, blocks:[ {label:”Superset A”, items:[ {ex:”DB Bent Over Row”, mod:”Supported row”, sets:”3 × 12 / side”}, {ex:”DB Bicep Curl”, mod:”Alternating curl”, sets:”3 × 12″}]}, {label:”Superset B”, items:[ {ex:”DB Rear Delt Fly”, mod:”Light DB”, sets:”3 × 15″}, {ex:”Hammer Curl”, mod:”Light DB”, sets:”3 × 12″}]}, {label:”Superset C”, items:[ {ex:”DB Pullover”, mod:”Two-hand DB”, sets:”3 × 12″}, {ex:”Renegade Row”, mod:”Knees supported row”, sets:”3 × 10 / side”}]}], cardio:{label:”Incline walk”, dur:”12 min”} }, { type:”legs”, title:”Legs & Glutes”, sub:”Lower Body”, blocks:[ {label:”Superset A”, items:[ {ex:”Goblet Squat”, mod:”Bodyweight squat”, sets:”3 × 12″}, {ex:”DB Romanian Deadlift”, mod:”Light hinge”, sets:”3 × 12″}]}, {label:”Superset B”, items:[ {ex:”DB Hip Thrust”, mod:”Floor glute bridge”, sets:”3 × 12″}, {ex:”Reverse Lunge”, mod:”Static lunge”, sets:”3 × 10 / side”}]}, {label:”Superset C”, items:[ {ex:”Lateral Step-Ups”, mod:”Low step”, sets:”3 × 12 / side”}, {ex:”Curtsy Lunge”, mod:”Bodyweight lunge”, sets:”3 × 12 / side”}]}], cardio:{label:”Incline walk”, dur:”12 min”} }, { type:”core”, title:”Core & Cardio”, sub:”Midline & Conditioning”, blocks:[ {label:”Core circuit”, items:[ {ex:”Forearm Plank Hold”, mod:”Knee plank”, sets:”3 × 30–45 sec”}, {ex:”Dead Bug”, mod:”Modified dead bug”, sets:”3 × 10 / side”}, {ex:”Bicycle Crunches”, mod:”Slow bicycle”, sets:”3 × 20″}, {ex:”DB Russian Twists”, mod:”Bodyweight twist”, sets:”3 × 15 / side”}, {ex:”Leg Raises”, mod:”Bent knee raises”, sets:”3 × 15″}]}], cardio:{label:”Intervals”, dur:”15–20 min”} }, { type:”full”, title:”Full Body Power”, sub:”Circuit”, blocks:[ {label:”Circuit · 3 rounds”, items:[ {ex:”DB Thrusters”, mod:”Squat to press”, sets:”3 × 15″}, {ex:”Push-Ups”, mod:”Incline push-ups”, sets:”3 × 10–12″}, {ex:”DB Deadlifts”, mod:”Light hinge”, sets:”3 × 15″}, {ex:”Bent Over Row”, mod:”Supported row”, sets:”3 × 12 / side”}, {ex:”Jump Squats”, mod:”Squat to stand”, sets:”3 × 20″}, {ex:”Mountain Climbers”, mod:”Slow climbers”, sets:”3 × 30 sec”}]}], cardio:{label:”Intervals”, dur:”5–8 min”} }, { type:”cardio”, title:”Optional Cardio”, sub:”Your choice”, blocks:[ {label:”Move how you like”, items:[ {ex:”Cardio of choice”, mod:”Walk, cycle, swim, dance”, sets:”25–35 min”}]}], cardio:null }, { type:”rest”, title:”Rest Day”, sub:”Full recovery”, blocks:[], cardio:null }, ] }, { week: 2, range: “June 8 – 14”, challenge: { title: “Hydration challenge”, note: “Hit your daily water goal every day this week. Bring a bottle everywhere — small habit, big payoff.” }, talk: { title: “Healthy food swaps”, note: “Simple swaps that keep the foods you love while supporting your goals.” }, days: [ { type:”push”, title:”Push Day”, sub:”Chest, Shoulders & Triceps”, blocks:[ {label:”Superset A”, items:[ {ex:”DB Chest Press”, mod:”Floor press”, sets:”3 × 12–15″}, {ex:”DB Overhead Shoulder Press”, mod:”Seated DB press”, sets:”3 × 12″}]}, {label:”Superset B”, items:[ {ex:”DB Incline Chest Fly”, mod:”Low incline fly”, sets:”3 × 15″}, {ex:”DB Lateral Raises”, mod:”Light DB”, sets:”3 × 15″}]}, {label:”Superset C”, items:[ {ex:”DB Overhead Tricep Extension”, mod:”Light DB”, sets:”3 × 15″}, {ex:”Push-Ups”, mod:”Knee push-ups”, sets:”3 × 12–15″}]}], cardio:{label:”Steady pace”, dur:”12 min”} }, { type:”pull”, title:”Pull Day”, sub:”Back & Biceps”, blocks:[ {label:”Superset A”, items:[ {ex:”DB Bent Over Row”, mod:”Supported row”, sets:”3 × 12–15 / side”}, {ex:”DB Bicep Curl”, mod:”Alternating curl”, sets:”3 × 12–15″}]}, {label:”Superset B”, items:[ {ex:”DB Rear Delt Fly”, mod:”Light DB”, sets:”3 × 15″}, {ex:”Hammer Curl”, mod:”Light DB”, sets:”3 × 12–15″}]}, {label:”Superset C”, items:[ {ex:”DB Pullover”, mod:”Two-hand DB”, sets:”3 × 12″}, {ex:”Renegade Row”, mod:”Knees supported row”, sets:”3 × 10 / side”}]}], cardio:{label:”Incline walk”, dur:”14 min”} }, { type:”legs”, title:”Legs & Glutes”, sub:”Lower Body”, blocks:[ {label:”Superset A”, items:[ {ex:”Goblet Squat”, mod:”Bodyweight squat”, sets:”3 × 15″}, {ex:”DB Romanian Deadlift”, mod:”Light hinge”, sets:”3 × 12–15″}]}, {label:”Superset B”, items:[ {ex:”DB Hip Thrust”, mod:”Floor glute bridge”, sets:”3 × 15″}, {ex:”Reverse Lunge”, mod:”Static lunge”, sets:”3 × 12 / side”}]}, {label:”Superset C”, items:[ {ex:”Lateral Step-Ups”, mod:”Low step”, sets:”3 × 12 / side”}, {ex:”Curtsy Lunge”, mod:”Bodyweight lunge”, sets:”3 × 15 / side”}]}], cardio:{label:”Incline walk”, dur:”14 min”} }, { type:”core”, title:”Core & Cardio”, sub:”Midline & Conditioning”, blocks:[ {label:”Core circuit”, items:[ {ex:”Forearm Plank Hold”, mod:”Knee plank”, sets:”3 × 45 sec”}, {ex:”Dead Bug”, mod:”Modified dead bug”, sets:”3 × 12 / side”}, {ex:”Bicycle Crunches”, mod:”Slow bicycle”, sets:”3 × 24″}, {ex:”DB Russian Twists”, mod:”Bodyweight twist”, sets:”3 × 18 / side”}, {ex:”Leg Raises”, mod:”Bent knee raises”, sets:”3 × 18″}]}], cardio:{label:”Intervals”, dur:”18–20 min”} }, { type:”full”, title:”Full Body Power”, sub:”Circuit”, blocks:[ {label:”Circuit · 3 rounds”, items:[ {ex:”DB Thrusters”, mod:”Squat to press”, sets:”3 × 15″}, {ex:”Push-Ups”, mod:”Incline push-ups”, sets:”3 × 12″}, {ex:”DB Deadlifts”, mod:”Light hinge”, sets:”3 × 15″}, {ex:”Bent Over Row”, mod:”Supported row”, sets:”3 × 12 / side”}, {ex:”Jump Squats”, mod:”Squat to stand”, sets:”3 × 20″}, {ex:”Mountain Climbers”, mod:”Slow climbers”, sets:”3 × 40 sec”}]}], cardio:{label:”Intervals”, dur:”8 min”} }, { type:”cardio”, title:”Optional Cardio”, sub:”Your choice”, blocks:[ {label:”Move how you like”, items:[ {ex:”Cardio of choice”, mod:”Walk, cycle, swim, dance”, sets:”30–35 min”}]}], cardio:null }, { type:”rest”, title:”Rest Day”, sub:”Full recovery”, blocks:[], cardio:null }, ] }, { week: 3, range: “June 15 – 21”, challenge: { title: “Step / cardio goal”, note: “Set a daily step or cardio target and chase it all week. Movement adds up — let’s see it climb.” }, talk: { title: “Tracking progress”, note: “The metrics that actually matter — and how to read them without obsessing over the scale.” }, days: [ { type:”push”, title:”Push Day”, sub:”Chest, Shoulders & Triceps”, blocks:[ {label:”Superset A”, items:[ {ex:”DB Chest Press”, mod:”Floor press”, sets:”4 × 10–12″}, {ex:”DB Overhead Shoulder Press”, mod:”Seated DB press”, sets:”4 × 10″}]}, {label:”Superset B”, items:[ {ex:”DB Incline Chest Fly”, mod:”Low incline fly”, sets:”4 × 12″}, {ex:”DB Lateral Raises”, mod:”Light DB”, sets:”4 × 15″}]}, {label:”Superset C”, items:[ {ex:”DB Overhead Tricep Extension”, mod:”Light DB”, sets:”4 × 12″}, {ex:”Diamond Push-Ups”, mod:”Knee push-ups”, sets:”4 × 10–12″}]}], cardio:{label:”Steady pace”, dur:”12 min”} }, { type:”pull”, title:”Pull Day”, sub:”Back & Biceps”, blocks:[ {label:”Superset A”, items:[ {ex:”DB Bent Over Row”, mod:”Supported row”, sets:”4 × 10–12 / side”}, {ex:”DB Bicep Curl”, mod:”Alternating curl”, sets:”4 × 12″}]}, {label:”Superset B”, items:[ {ex:”DB Rear Delt Fly”, mod:”Light DB”, sets:”4 × 15″}, {ex:”Hammer Curl”, mod:”Light DB”, sets:”4 × 12″}]}, {label:”Superset C”, items:[ {ex:”DB Pullover”, mod:”Two-hand DB”, sets:”4 × 10″}, {ex:”Renegade Row”, mod:”Knees supported row”, sets:”4 × 10 / side”}]}], cardio:{label:”Incline walk”, dur:”15 min”} }, { type:”legs”, title:”Legs & Glutes”, sub:”Lower Body”, blocks:[ {label:”Superset A”, items:[ {ex:”Goblet Squat”, mod:”Bodyweight squat”, sets:”4 × 12″}, {ex:”DB Romanian Deadlift”, mod:”Light hinge”, sets:”4 × 12″}]}, {label:”Superset B”, items:[ {ex:”DB Hip Thrust”, mod:”Floor glute bridge”, sets:”4 × 15″}, {ex:”Bulgarian Split Squat”, mod:”Reverse lunge”, sets:”4 × 10 / side”}]}, {label:”Superset C”, items:[ {ex:”Step-Ups with Knee Drive”, mod:”Low step”, sets:”4 × 12 / side”}, {ex:”Banded Clamshells”, mod:”Bodyweight clamshell”, sets:”4 × 20 / side”}]}], cardio:{label:”Incline walk”, dur:”15 min”} }, { type:”core”, title:”Core & Cardio”, sub:”Midline & Conditioning”, blocks:[ {label:”Core circuit”, items:[ {ex:”Forearm Plank Hold”, mod:”Knee plank”, sets:”4 × 45–60 sec”}, {ex:”Dead Bug”, mod:”Modified dead bug”, sets:”4 × 12 / side”}, {ex:”Bicycle Crunches”, mod:”Slow bicycle”, sets:”4 × 25″}, {ex:”DB Russian Twists”, mod:”Bodyweight twist”, sets:”4 × 20 / side”}, {ex:”V-Ups”, mod:”Knee tucks”, sets:”4 × 12″}]}], cardio:{label:”Intervals”, dur:”20 min”} }, { type:”full”, title:”Full Body Power”, sub:”Circuit”, blocks:[ {label:”Circuit · 4 rounds”, items:[ {ex:”DB Thrusters”, mod:”Squat to press”, sets:”4 × 15″}, {ex:”Push-Ups”, mod:”Incline push-ups”, sets:”4 × 12″}, {ex:”DB Deadlifts”, mod:”Light hinge”, sets:”4 × 15″}, {ex:”Bent Over Row”, mod:”Supported row”, sets:”4 × 12 / side”}, {ex:”Jump Squats”, mod:”Squat to stand”, sets:”4 × 20″}, {ex:”Mountain Climbers”, mod:”Slow climbers”, sets:”4 × 40 sec”}]}], cardio:{label:”Intervals”, dur:”8–10 min”} }, { type:”cardio”, title:”Optional Cardio”, sub:”Your choice”, blocks:[ {label:”Move how you like”, items:[ {ex:”Cardio of choice”, mod:”Walk, cycle, swim, dance”, sets:”30–40 min”}]}], cardio:null }, { type:”rest”, title:”Rest Day”, sub:”Full recovery”, blocks:[], cardio:null }, ] }, { week: 4, range: “June 22 – 28”, challenge: { title: “Share a favorite meal / snack”, note: “Post one meal or snack you love every day. Real food, real life — inspire the crew.” }, talk: { title: “Healthy habits vs. quick fixes”, note: “Why the boring, repeatable habits beat the 6-week miracle every single time.” }, days: [ { type:”push”, title:”Push Day”, sub:”Chest, Shoulders & Triceps”, blocks:[ {label:”Superset A”, items:[ {ex:”DB Chest Press”, mod:”Floor press”, sets:”4 × 12–15″}, {ex:”DB Overhead Shoulder Press”, mod:”Seated DB press”, sets:”4 × 12″}]}, {label:”Superset B”, items:[ {ex:”DB Incline Chest Fly”, mod:”Low incline fly”, sets:”4 × 15″}, {ex:”DB Lateral Raises”, mod:”Light DB”, sets:”4 × 15–20″}]}, {label:”Superset C”, items:[ {ex:”DB Overhead Tricep Extension”, mod:”Light DB”, sets:”4 × 15″}, {ex:”Diamond Push-Ups”, mod:”Knee push-ups”, sets:”4 × 12–15″}]}], cardio:{label:”Steady pace”, dur:”15 min”} }, { type:”pull”, title:”Pull Day”, sub:”Back & Biceps”, blocks:[ {label:”Superset A”, items:[ {ex:”DB Bent Over Row”, mod:”Supported row”, sets:”4 × 12 / side”}, {ex:”DB Bicep Curl”, mod:”Alternating curl”, sets:”4 × 12–15″}]}, {label:”Superset B”, items:[ {ex:”DB Rear Delt Fly”, mod:”Light DB”, sets:”4 × 15–20″}, {ex:”Hammer Curl”, mod:”Light DB”, sets:”4 × 12–15″}]}, {label:”Superset C”, items:[ {ex:”DB Pullover”, mod:”Two-hand DB”, sets:”4 × 12″}, {ex:”Renegade Row”, mod:”Knees supported row”, sets:”4 × 12 / side”}]}], cardio:{label:”Incline walk”, dur:”15 min”} }, { type:”legs”, title:”Legs & Glutes”, sub:”Lower Body”, blocks:[ {label:”Superset A”, items:[ {ex:”Goblet Squat”, mod:”Bodyweight squat”, sets:”4 × 15″}, {ex:”DB Romanian Deadlift”, mod:”Light hinge”, sets:”4 × 15″}]}, {label:”Superset B”, items:[ {ex:”DB Hip Thrust”, mod:”Floor glute bridge”, sets:”4 × 15–20″}, {ex:”Bulgarian Split Squat”, mod:”Reverse lunge”, sets:”4 × 12 / side”}]}, {label:”Superset C”, items:[ {ex:”Step-Ups with Knee Drive”, mod:”Low step”, sets:”4 × 12 / side”}, {ex:”Curtsy Lunge”, mod:”Bodyweight lunge”, sets:”4 × 15 / side”}]}], cardio:{label:”Incline walk”, dur:”15–18 min”} }, { type:”core”, title:”Core & Cardio”, sub:”Midline & Conditioning”, blocks:[ {label:”Core circuit”, items:[ {ex:”Forearm Plank Hold”, mod:”Knee plank”, sets:”4 × 60 sec”}, {ex:”Dead Bug”, mod:”Modified dead bug”, sets:”4 × 15 / side”}, {ex:”Bicycle Crunches”, mod:”Slow bicycle”, sets:”4 × 30″}, {ex:”DB Russian Twists”, mod:”Bodyweight twist”, sets:”4 × 20 / side”}, {ex:”V-Ups”, mod:”Knee tucks”, sets:”4 × 15″}]}], cardio:{label:”Intervals”, dur:”20–25 min”} }, { type:”full”, title:”Full Body Power”, sub:”Circuit”, blocks:[ {label:”Circuit · 4 rounds”, items:[ {ex:”DB Thrusters”, mod:”Squat to press”, sets:”4 × 15″}, {ex:”Push-Ups”, mod:”Incline push-ups”, sets:”4 × 15″}, {ex:”DB Deadlifts”, mod:”Light hinge”, sets:”4 × 15″}, {ex:”Bent Over Row”, mod:”Supported row”, sets:”4 × 12 / side”}, {ex:”Jump Squats”, mod:”Squat to stand”, sets:”4 × 25″}, {ex:”Mountain Climbers”, mod:”Slow climbers”, sets:”4 × 45 sec”}]}], cardio:{label:”Intervals”, dur:”10 min”} }, { type:”cardio”, title:”Optional Cardio”, sub:”Your choice”, blocks:[ {label:”Move how you like”, items:[ {ex:”Cardio of choice”, mod:”Walk, cycle, swim, dance”, sets:”30–40 min”}]}], cardio:null }, { type:”rest”, title:”Rest Day”, sub:”Full recovery”, blocks:[], cardio:null }, ] } ], // June 29–30 fall outside the 4-week block tail: [ { date: 29, wd:”Mon”, type:”reset”, title:”Reset & Reflect”, note:”Look back at four weeks of work. What got easier?” }, { date: 30, wd:”Tue”, type:”reset”, title:”New Cycle Loading”, note:”July program drops soon — DM to claim your spot.” } ], meta: { push: { name:”Push”, tag:”Chest · Shoulders · Triceps” }, pull: { name:”Pull”, tag:”Back · Biceps” }, legs: { name:”Legs”, tag:”Glutes · Lower Body” }, core: { name:”Core”, tag:”Midline · Cardio” }, full: { name:”Full Body”, tag:”Power Circuit” }, cardio: { name:”Cardio”, tag:”Optional · Your Choice” }, rest: { name:”Rest”, tag:”Recovery” }, reset: { name:”Reset”, tag:”Between Cycles” } } }; /* Fit with Nikki — June calendar renderer */ (function(){ const P = window.__FWN_PROGRAM; const M = P.meta; const accent = { push:’var(–c-push)’, pull:’var(–c-pull)’, legs:’var(–c-legs)’, core:’var(–c-core)’, full:’var(–c-full)’, cardio:’var(–c-cardio)’, rest:’var(–c-rest)’, reset:’var(–c-reset)’ }; const tint = { push:’rgba(226,109,92,.13)’, pull:’rgba(42,111,107,.13)’, legs:’rgba(217,169,63,.16)’, core:’rgba(127,154,114,.16)’, full:’rgba(31,42,55,.10)’, cardio:’rgba(155,177,143,.14)’, rest:’rgba(185,178,164,.14)’, reset:’rgba(201,154,78,.14)’ }; // small inline icons const I = { push:”, pull:”, legs:”, core:”, full:”, cardio:”, rest:”, fire:”, water:”, steps:”, meal:”, talk:”, clock:”, reset:” }; const challengeIcon = [‘fire’,’water’,’steps’,’meal’]; function svg(p, opt){ opt = opt||{}; return ”+p+”; } /* —- Legend —- */ const legend = document.getElementById(‘fwnLegend’); [‘push’,’pull’,’legs’,’core’,’full’,’cardio’,’rest’].forEach(t=>{ const el = document.createElement(‘span’); el.className=’lg’; el.innerHTML = ‘‘+M[t].name; legend.appendChild(el); }); /* —- Weeks —- */ const cal = document.getElementById(‘fwnCal’); P.weeks.forEach((wk, wi)=>{ const block = document.createElement(‘div’); block.className=’weekblock’; const startDate = 1 + wi*7; const endDate = startDate + 6; const cIco = challengeIcon[wi]; const bar = document.createElement(‘div’); bar.className=’weekbar’; bar.innerHTML = ‘
Week ‘+wk.week+’June ‘+startDate+’–’+endDate+’
‘+ ‘
‘+svg(I[cIco])+’‘+ ‘Week Challenge‘+wk.challenge.title+’
‘+ ‘
‘+ ‘
‘+svg(I.talk,{stroke:’var(–teal)’})+’‘+ ‘Tuesday Talk · ‘+wk.talk.title+’
‘; block.appendChild(bar); const grid = document.createElement(‘div’); grid.className=’daygrid’; wk.days.forEach((d, di)=>{ const date = startDate + di; const wdName = [‘Mon’,’Tue’,’Wed’,’Thu’,’Fri’,’Sat’,’Sun’][di]; const cell = document.createElement(‘div’); cell.className=’day is-‘+d.type; cell.style.setProperty(‘–accent’, accent[d.type]); cell.tabIndex = 0; cell.setAttribute(‘data-screen-label’,’June ‘+date); let inner = ‘
‘+date+’‘+wdName+’
‘; if(d.type===’rest’){ inner += ‘Rest‘; inner += ‘

Rest Day

Full recovery
‘; inner += ‘
‘+svg(I.rest,{stroke:’var(–muted)’,w:1.7})+’ Recharge & repair
‘; } else if(d.type===’cardio’){ inner += ‘Cardio‘; inner += ‘

‘+d.title+’

‘+d.sub+’
‘; inner += ‘
‘+d.blocks[0].items[0].sets+’your choice
‘; } else { const moves = d.blocks.reduce((s,b)=>s+b.items.length,0); inner += ‘‘+M[d.type].name+’‘; inner += ‘

‘+d.title+’

‘+d.sub+’
‘; inner += ‘
‘+moves+’ moves‘+ (d.cardio?’+ ‘+d.cardio.dur+’ cardio‘:”)+’
‘; } // Tuesday talk badge (index 1 = Tuesday) if(di===1){ inner += ‘
‘+svg(I.talk)+’‘+ ‘Tuesday Talk‘+wk.talk.title+’
‘; } cell.innerHTML = inner; cell.addEventListener(‘click’, ()=>openModal(wi, di, date, wdName)); cell.addEventListener(‘keydown’, e=>{ if(e.key===’Enter’||e.key===’ ‘){e.preventDefault();openModal(wi,di,date,wdName);} }); grid.appendChild(cell); }); block.appendChild(grid); cal.appendChild(block); }); /* —- Tail (Jun 29–30) —- */ const tailWrap = document.createElement(‘div’); tailWrap.className=’weekblock’; const tbar = document.createElement(‘div’); tbar.className=’weekbar’; tbar.style.borderLeftColor=’var(–c-reset)’; tbar.innerHTML=’
Wrap-upJune 29–30
‘+ ‘
‘+ ‘‘+svg(I.reset)+’‘+ ‘Between CyclesReset before July
‘+ ‘
‘+ ‘
‘+svg(I.talk,{stroke:’var(–c-reset)’})+’July program · drops soon
‘; tailWrap.appendChild(tbar); const tgrid = document.createElement(‘div’); tgrid.className=’tailgrid’; P.tail.forEach(t=>{ const cell=document.createElement(‘div’); cell.className=’day is-reset’; cell.style.setProperty(‘–accent’,’var(–c-reset)’); cell.setAttribute(‘data-screen-label’,’June ‘+t.date); cell.innerHTML=’
‘+t.date+’‘+t.wd+’
‘+ ‘Reset‘+ ‘

‘+t.title+’

‘+t.note+’
‘; tgrid.appendChild(cell); }); // fill remaining 5 cells of the week visually for(let i=0;i<5;i++){ const e=document.createElement('div'); e.className='tail-empty'; tgrid.appendChild(e); } tailWrap.appendChild(tgrid); cal.appendChild(tailWrap); /* —- Modal —- */ const overlay=document.getElementById('fwnOverlay'); const modal=document.getElementById('fwnModal'); const coachNotes={ push:'Lead with control — squeeze at the top, lower slow. Floor press anytime your shoulders want a break.', pull:'Think “elbows back,” not “arms.” Brace your core on every row and let your back do the work.', legs:'Drive through your heels and own the bottom of each rep. Glutes power the show today.', core:'Quality beats speed. Keep your low back glued down and breathe through every hold.', full:'Move steady through the circuit, rest as needed between rounds. Finished and consistent beats rushed.', cardio:'Pick something you genuinely enjoy. Easy, conversational pace — this is active recovery, not a race.' }; function openModal(wi, di, date, wdName){ const wk=P.weeks[wi]; const d=wk.days[di]; const ac=accent[d.type]; const fullDate=wdName+', June '+date; let head='
‘+ ‘‘+ ‘
Week ‘+wk.week+’ · ‘+fullDate+’
‘+ ‘

‘+d.title+’

‘+ (d.sub?’
‘+d.sub+’
‘:”)+’
‘; let body=’
‘; body+=’‘+M[d.type].name+’ · ‘+M[d.type].tag+’‘; if(d.type===’rest’){ body+=’
‘+svg(I.rest,{stroke:’var(–muted)’,w:1.6})+’
‘+ ‘

Take the day, fully.

‘+ ‘

Recovery is where the work pays off. Hydrate, sleep, stretch if you like — and come back ready. Every body needs rest to grow stronger.

‘; } else { d.blocks.forEach(b=>{ body+=’
‘+b.label+’
‘; b.items.forEach(it=>{ body+=’
‘+it.ex+’
‘+ (it.mod?’
Modify · ‘+it.mod+’
‘:”)+’
‘+ ‘
‘+it.sets+’
‘; }); body+=’
‘; }); if(d.cardio){ body+=’
‘+svg(I.cardio)+’‘+ ‘
Cardio · ‘+d.cardio.label+’
Finish strong, steady effort
‘+ ‘‘+d.cardio.dur+’
‘; } if(coachNotes[d.type]){ body+=’

Coach’s note. ‘+coachNotes[d.type]+’

‘; } } // Tuesday talk in modal if(di===1){ body+=’
‘+ ‘

Tuesday Talk · ‘+wk.talk.title+’. ‘+wk.talk.note+’

‘; } body+=’
‘; modal.innerHTML=head+body; overlay.classList.add(‘open’); document.body.style.overflow=’hidden’; document.getElementById(‘mClose’).addEventListener(‘click’, closeModal); } function shade(t){ const map={push:’#c8533f’,pull:’#1d5450′,legs:’#bf8e2c’,core:’#5f7a52′,full:’#2c3a4a’,cardio:’#7f9a72′}; return map[t]||’#1d5450′; } function I_x(){return ”;} function closeModal(){ overlay.classList.remove(‘open’); document.body.style.overflow=”; } overlay.addEventListener(‘click’, e=>{ if(e.target===overlay) closeModal(); }); document.addEventListener(‘keydown’, e=>{ if(e.key===’Escape’) closeModal(); }); })();