.trainers-page{background:var(--cloud)}
.trainers-hero{color:var(--white);background:linear-gradient(120deg,#07112ff5,#2340b6e8),url('/keepersschool-team-instagram.jpg') center/cover;min-height:390px;display:grid;align-items:center;padding-block:82px;position:relative;overflow:hidden}
.trainers-hero:after{content:"";position:absolute;width:360px;height:360px;border:2px solid #c8f00052;border-radius:50%;right:-90px;bottom:-230px}
.trainers-hero .section-shell{position:relative;z-index:1}
.trainers-hero h1{font-family:var(--display);font-size:clamp(3.4rem,7vw,6.7rem);letter-spacing:-.055em;line-height:.91;text-transform:uppercase;max-width:820px}
.trainers-hero h1 em{color:var(--lime);font-style:normal}
.trainers-hero p:not(.eyebrow){color:#ffffffbd;max-width:700px;margin-top:28px;font-size:18px;line-height:1.7}
.trainers-list{padding-block:100px}
.trainers-intro{display:grid;grid-template-columns:.8fr 1fr;gap:70px;align-items:end;margin-bottom:58px}
.trainers-intro h2{font-family:var(--display);font-size:clamp(2.65rem,5vw,4.7rem);letter-spacing:-.05em;line-height:.98;text-transform:uppercase}
.trainers-intro>p{color:var(--muted);font-size:16px;line-height:1.75;margin:0}
.trainer-stack{display:grid;gap:34px}
.trainer-card{background:var(--white);border:1px solid var(--mist);display:grid;grid-template-columns:minmax(280px,390px) 1fr;box-shadow:0 18px 54px #0a17480e;scroll-margin-top:110px;overflow:hidden}
.trainer-photo{min-height:520px;position:relative;background:var(--navy);overflow:hidden}
.trainer-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,#07112f99)}
.trainer-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.trainer-number{position:absolute;z-index:1;left:24px;bottom:20px;color:var(--lime);font-family:var(--display);font-size:52px;line-height:1}
.trainer-content{padding:clamp(34px,5vw,64px);align-self:center}
.trainer-role{color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}
.trainer-content h2{font-family:var(--display);font-size:clamp(2.25rem,4.5vw,4rem);letter-spacing:-.05em;line-height:.98;text-transform:uppercase;margin-bottom:24px}
.trainer-summary{font-size:17px;line-height:1.75;color:var(--muted);max-width:720px}
.trainer-bio{border-top:1px solid var(--mist);margin-top:30px;padding-top:0}
.trainer-bio summary{list-style:none;cursor:pointer;color:var(--ink);font-weight:900;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px}
.trainer-bio summary::-webkit-details-marker{display:none}
.trainer-bio summary:after{content:"+";width:34px;height:34px;min-width:34px;background:var(--lime);display:grid;place-items:center;font-size:21px;line-height:1;transition:transform .18s}
.trainer-bio[open] summary:after{content:"−"}
.trainer-bio summary .close-label{display:none}
.trainer-bio[open] summary .open-label{display:none}
.trainer-bio[open] summary .close-label{display:inline}
.bio-copy{padding-top:25px;display:grid;gap:18px;color:var(--muted);font-size:15px;line-height:1.8}
.bio-copy p{margin:0}
.trainer-bio-pending{border-left:5px solid var(--lime-dark);background:var(--cloud);margin-top:30px;padding:20px 22px}
.trainer-bio-pending strong{color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;display:block;margin-bottom:7px}
.trainer-bio-pending p{color:var(--muted);font-size:14px;line-height:1.65;margin:0}
.trainers-cta{background:var(--blue);color:var(--white);padding-block:78px;text-align:center}
.trainers-cta h2{font-family:var(--display);font-size:clamp(2.6rem,5.5vw,5rem);letter-spacing:-.05em;line-height:.98;text-transform:uppercase}
.trainers-cta p{color:#ffffffb0;margin:22px auto 30px;max-width:650px;line-height:1.7}
.trainers-cta .cta-lime{margin-top:0;display:inline-flex}
.desktop-nav a[aria-current="page"]:after{transform:scaleX(1)}
.mobile-trainers-link{display:none;color:var(--blue);font-size:13px;font-weight:900;padding:24px 0;position:relative}
.mobile-trainers-link:after{content:"";position:absolute;left:0;right:0;bottom:17px;height:3px;background:var(--lime-dark)}
.page-back{color:var(--blue)}
@media (width<=850px){.mobile-trainers-link{display:block}.trainers-hero{min-height:340px;padding-block:68px}.trainers-list{padding-block:78px}.trainers-intro{grid-template-columns:1fr;gap:24px}.trainer-card{grid-template-columns:1fr}.trainer-photo{min-height:690px}.trainer-content{padding:42px 34px}}
@media (width<=600px){.trainers-hero{min-height:300px;padding-block:56px}.trainers-hero h1{font-size:clamp(3rem,15vw,4.8rem)}.trainers-hero p:not(.eyebrow){font-size:16px}.trainers-list{padding-block:62px}.trainers-intro{margin-bottom:38px}.trainer-stack{gap:24px}.trainer-photo{min-height:470px}.trainer-content{padding:32px 22px 36px}.trainer-summary{font-size:15px}.bio-copy{font-size:14px}.trainers-cta{padding-block:62px}.mobile-trainers-link{padding:20px 0}.mobile-trainers-link:after{bottom:14px}}
@media (max-width:380px){.mobile-trainers-link{font-size:12px}.brand-logo{height:54px}}
body,.trainer-content,.bio-copy{hyphens:none;overflow-wrap:break-word}
