/* TKMMAFIT · TK27 Strength and Conditioning: numbers, the week planner, the formats, a photo strip */
.t27-stats-sec{padding-top:0!important;padding-bottom:clamp(36px,5vw,64px)!important}
.t27-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.t27-stats li{display:grid;gap:6px;padding:clamp(18px,2.4vw,30px) clamp(12px,2vw,26px);min-width:0}
.t27-stats li+li{border-left:1px solid var(--line)}
.t27-stats b{font-family:var(--disp);font-stretch:125%;font-weight:600;font-size:clamp(30px,3.6vw,54px);line-height:1;letter-spacing:-.03em}
.t27-stats b small{font-size:.38em;letter-spacing:0;margin-left:4px;color:var(--mist)}
.t27-stats span{font-size:13.5px;color:var(--mist)}

/* the week planner */
.t27-planner{display:grid;gap:18px}
.t27-days{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:4px;margin:0 -4px}
.t27-days::-webkit-scrollbar{display:none}
.t27-day{flex:1 0 auto;min-width:64px;height:48px;padding:0 18px;border-radius:99px;font-weight:600;font-size:14px;color:var(--mist);box-shadow:inset 0 0 0 1px var(--line2);transition:background .3s,color .3s,box-shadow .3s}
.t27-day:hover{color:var(--txt);box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}
.t27-day[aria-selected="true"]{background:#fff;color:#0B0B0C;box-shadow:none}
.t27-day.today span::after{content:"";display:inline-block;width:6px;height:6px;margin-left:7px;border-radius:50%;background:#39d98a;vertical-align:middle}
.t27-panel{display:grid;gap:14px}
.t27-planner.on .t27-panel{display:none}
.t27-planner.on .t27-panel.on{display:grid;animation:t27In .6s var(--ease)}
@keyframes t27In{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.t27-dh{font-family:var(--disp);font-stretch:125%;font-weight:600;font-size:clamp(20px,1.8vw,26px);letter-spacing:-.01em}
.t27-planner.on .t27-dh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.t27-cls{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);border-radius:var(--rxl);overflow:hidden;background:var(--p1);box-shadow:inset 0 0 0 1px var(--line)}
.t27-ph{position:relative;min-height:240px;background:#141416}
.t27-ph picture,.t27-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.t27-in{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:clamp(22px,3vw,40px)}
.t27-in h4{font-family:var(--disp);font-stretch:125%;font-weight:600;font-size:clamp(26px,2.8vw,42px);line-height:1.02;letter-spacing:-.025em}
.t27-in p{color:var(--mist);max-width:40ch}
.t27-tag{font-family:var(--disp);font-stretch:112%;font-size:10px;letter-spacing:.22em;text-transform:uppercase;padding:6px 11px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line2);color:var(--mist)}
.t27-times{list-style:none;margin:auto 0 0;padding:6px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.t27-times li{padding:9px 14px;border-radius:12px;background:rgba(255,255,255,.06);font-weight:600;font-size:15px}
.t27-times small{font-size:.72em;margin-left:2px;color:var(--mist);font-weight:500}

/* the formats */
.t27-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.t27-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:26px 24px 22px;border-radius:var(--rl);background:var(--p1);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .4s,transform .5s var(--ease)}
.t27-card:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);transform:translateY(-3px)}
.t27-n{position:absolute;right:22px;top:22px;font-family:var(--disp);font-stretch:112%;font-size:11px;letter-spacing:.16em;color:var(--dim)}
.t27-card h3{font-family:var(--disp);font-stretch:125%;font-weight:600;font-size:clamp(20px,1.6vw,24px);letter-spacing:-.01em;margin-top:6px}
.t27-card p{color:var(--mist);font-size:14.5px}
.t27-when{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:6px}
.t27-when i{font-style:normal;font-size:12px;font-weight:600;padding:5px 10px;border-radius:99px;background:rgba(255,255,255,.07)}

/* the photo strip: a few real moments, swipeable */
.t27-strip{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px;margin-right:calc(var(--gut) * -1);padding-right:var(--gut)}
.t27-strip::-webkit-scrollbar{display:none}
.t27-shot{flex:0 0 clamp(240px,30vw,420px);margin:0;scroll-snap-align:start;border-radius:var(--rl);overflow:hidden;aspect-ratio:4/5;background:#141416}
.t27-shot .gbtn{display:block;width:100%;height:100%}
.t27-shot picture,.t27-shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.t27-shot:hover img{transform:scale(1.04)}

@media (max-width:900px){
  .t27-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .t27-stats li:nth-child(3){border-left:0}
  .t27-stats li:nth-child(n+3){border-top:1px solid var(--line)}
  .t27-cls{grid-template-columns:minmax(0,1fr)}
  .t27-ph{min-height:0;aspect-ratio:16/10}
  .t27-grid{grid-template-columns:minmax(0,1fr)}
  .t27-day{min-width:56px;padding:0 14px}
  .t27-shot{flex-basis:78vw}
}
@media (prefers-reduced-motion:reduce){.t27-planner.on .t27-panel.on{animation:none}}
[dir=rtl] .t27-stats li+li{border-left:0;border-right:1px solid var(--line)}
[dir=rtl] .t27-n{right:auto;left:22px}
[dir=rtl] .t27-strip{margin-right:0;padding-right:0;margin-left:calc(var(--gut) * -1);padding-left:var(--gut)}
@media (max-width:900px){[dir=rtl] .t27-stats li:nth-child(3){border-right:0}}

/* an odd one out on the last row spans the full width, so the grid never ends on a lone card */
@media (min-width:901px){.t27-grid>li:last-child:nth-child(3n+1){grid-column:1/-1}}
