.director-card{display:grid;grid-template-columns:1fr 1fr;background:#202422;color:#fff;min-height:560px}.director-photo{position:relative;min-height:560px;overflow:hidden}.director-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 46%}.director-photo>span{position:absolute;left:25px;bottom:24px;background:#202422;padding:8px 12px;font-size:10px;letter-spacing:1.4px}.director-copy{padding:55px 12%;align-self:center}.trainer-role{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--red);margin:0 0 13px;font-weight:600}.director-copy .trainer-role{color:#ff6861}.director-copy h3{font-size:clamp(60px,6vw,88px);line-height:.95;margin:0 0 26px}.director-copy>p:not(.trainer-role){font-size:15px;color:#c3c9c3}.trainer-tags{display:flex;flex-wrap:wrap;gap:7px;margin:26px 0}.trainer-tags span{border:1px solid #626961;padding:6px 10px;font-size:11px}.trainer-bio{border-top:1px solid var(--line);border-bottom:0}.trainer-bio summary{display:flex;justify-content:space-between;gap:15px;padding:15px 0;font-size:12px}.trainer-bio summary span{font-size:18px;line-height:1}.trainer-bio[open] summary span{transform:rotate(45deg)}.trainer-bio p{font-size:13px;line-height:1.65;color:var(--muted);margin:0 0 15px}.director-copy .trainer-bio{border-color:#515952}.director-copy .trainer-bio p{color:#c3c9c3}.director-contact{display:inline-block;font-size:12px;margin-top:16px;border-bottom:1px solid #747d73;padding-bottom:4px}.team-subheading{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:1.5px;margin:48px 0 22px}.team-subheading span:last-child{color:var(--muted)}.trainer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}.trainer-photo{position:relative;height:350px;overflow:hidden;background:#242724}.trainer-photo img{height:100%;width:100%;object-fit:cover;object-position:center 32%;transition:transform .4s}.trainer-photo.diego img{height:115%;object-position:center 55%;transform:translateY(-8%)}.trainer-photo.juan img{object-position:50% 38%}.trainer-photo::after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7));pointer-events:none}.trainer-photo>span{position:absolute;z-index:1;left:16px;right:12px;bottom:18px;color:#fff;font-size:11px;letter-spacing:.25px}.trainer-copy{padding-top:22px}.trainer-copy .trainer-role{min-height:28px;line-height:1.5;margin-bottom:4px}.trainer-copy h3{font-size:32px;min-height:70px;margin-bottom:12px}.trainer-hours{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px;font-size:13px;font-weight:500}.trainer-hours small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-bottom:5px}.trainer-hours>span:last-child{font-size:24px;color:var(--red)}.schedule-toolbar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.schedule-days{display:flex;gap:7px;flex-wrap:wrap}.schedule-days button{background:transparent;border:1px solid #b3b9b1;padding:14px 20px;font:inherit;font-size:13px;cursor:pointer}.schedule-days button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.coach-filter-label{font-size:11px;color:var(--muted);display:grid;gap:7px;min-width:210px}.coach-filter-label select{font:inherit;font-size:13px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid #9da69c;padding:12px 25px 12px 0;max-width:100%}.schedule-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #a6aaa5;padding-bottom:18px;gap:16px}.schedule-title h3{font-size:32px;margin:0}.schedule-title span{font-size:12px;color:var(--muted)}.session-group{display:grid;grid-template-columns:220px 1fr;gap:30px;padding:22px 0;border-bottom:1px solid #c5cac2;align-items:center}.session-person{display:flex;align-items:center;gap:12px}.session-person img{width:44px;height:52px;object-fit:cover;object-position:center 30%}.session-person strong{font-size:13px;font-weight:500;display:block}.session-person small{font-size:10px;color:var(--muted);display:block;margin-top:3px}.session-times{display:flex;flex-wrap:wrap;gap:8px}.session-times span{font-size:13px;padding:9px 12px;background:#f7f7f5;white-space:nowrap}.schedule-empty{padding:35px 0;color:var(--muted);font-size:14px}.schedule-footer{display:flex;justify-content:space-between;gap:20px;margin-top:25px;font-size:12px}.schedule-footer p{color:var(--muted);margin:0}.schedule-footer a{text-decoration:underline}button:focus-visible,select:focus-visible,.trainer-bio summary:focus-visible{outline:2px solid var(--red);outline-offset:4px}
@media(max-width:1100px){.trainer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 22px}.trainer-photo{height:430px}.trainer-copy h3{min-height:0}.trainer-copy .trainer-role{min-height:0}.director-copy{padding:35px 9%}.schedule-days button{padding:13px 15px}}
@media(max-width:760px){.director-card{grid-template-columns:1fr}.director-photo{min-height:420px}.director-photo img{object-position:center 43%}.director-copy{padding:32px 25px}.director-copy h3{font-size:66px}.team-subheading{margin-top:34px;font-size:10px}.team-subheading span:last-child{display:none}.trainer-grid{gap:30px 14px}.trainer-photo{height:270px}.trainer-photo>span{font-size:10px;left:12px;bottom:12px}.trainer-copy{padding-top:16px}.trainer-copy h3{font-size:27px;min-height:60px}.trainer-copy .trainer-role{font-size:9px;min-height:28px}.trainer-hours{font-size:12px}.trainer-hours small{font-size:9px}.schedule-toolbar{align-items:stretch;flex-direction:column;gap:20px}.schedule-days{flex-wrap:nowrap;gap:5px}.schedule-days button{flex:1;padding:12px 0;font-size:12px}.coach-filter-label{max-width:100%}.session-group{grid-template-columns:1fr;gap:15px}.schedule-title h3{font-size:29px}.schedule-footer{flex-direction:column;gap:10px}.trainer-bio summary{font-size:11px}.trainer-bio p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.trainer-photo img{transition:none}}
