.hctt{--hctt-blue:#0b4b7d;--hctt-navy:#112c41;--hctt-ink:#163044;--hctt-muted:#60717d;--hctt-line:#e0e6e8;box-sizing:border-box;width:100%;max-width:1320px;margin:0 auto;padding:clamp(20px,3vw,44px);color:#000;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;container-type:inline-size;container-name:hct-trainers}
.hctt *{box-sizing:border-box}
.hctt [hidden]{display:none!important}
.hctt .hctt-heading{text-align:center;margin:0 0 clamp(28px,4vw,48px)}
.hctt .hctt-heading>span{color:var(--hctt-blue);font-size:12px;font-weight:750;letter-spacing:.14em}
.hctt .hctt-heading h2{margin:12px 0 0;color:var(--hctt-blue);font-family:inherit;font-size:clamp(30px,4vw,52px);font-weight:800;line-height:1.15;letter-spacing:-.035em;text-transform:none;overflow-wrap:anywhere;hyphens:auto}
.hctt .hctt-heading p{margin:8px auto 0;max-width:720px;color:#294c66;font-family:inherit;font-size:clamp(15px,1.5vw,19px);font-weight:400;line-height:1.6;letter-spacing:normal;text-transform:none;overflow-wrap:anywhere}
.hctt .hctt-role-switch{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:900px;margin:0 auto 24px}
.hctt .hctt-role-button{display:flex;align-items:center;justify-content:center;flex:1 1 160px;min-width:0;min-height:48px;max-width:100%;padding:12px 18px;margin:0;border:1px solid #91a8b8;border-radius:7px;background:#fff;color:var(--hctt-blue);font-family:inherit;font-size:15px;font-weight:650;line-height:1.4;text-align:center;letter-spacing:normal;text-transform:none;box-shadow:none;cursor:pointer;overflow-wrap:anywhere}
.hctt .hctt-role-button:hover{background:#edf4fa;border-color:var(--hctt-blue)}
.hctt .hctt-role-button[aria-pressed="true"]{background:var(--hctt-blue);border-color:var(--hctt-blue);color:#fff}
.hctt .hctt-role-button:focus-visible{outline:3px solid #2376a6;outline-offset:4px}
/* Fixed card widths and centered wrapping keep incomplete / filtered rows centered. */
.hctt .hctt-grid{--hctt-card-width:calc((100% - 56px)/3);display:flex;flex-wrap:wrap;justify-content:center;gap:36px 28px;align-items:flex-start}
.hctt .hctt-card{flex:0 0 var(--hctt-card-width);min-width:0;width:var(--hctt-card-width);max-width:500px;margin:0;padding:0;background:transparent;overflow:hidden;border:0;border-radius:0;box-shadow:none}
.hctt .hctt-filter{margin:0 0 28px;padding:0;color:var(--hctt-ink)}
.hctt .hctt-filter-buttons{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 22px}
.hctt .hctt-filter-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;max-width:100%;padding:8px 15px;margin:0;border:1px solid var(--hctt-line);border-radius:24px;background:#fff;color:var(--hctt-ink);font-family:inherit;font-size:13px;font-weight:400;line-height:1.5;letter-spacing:normal;text-transform:none;box-shadow:none;cursor:pointer;overflow-wrap:anywhere}
.hctt .hctt-filter-button:hover{background:#f3f6f5;border-color:#91a8b8;color:var(--hctt-ink)}
.hctt .hctt-filter-button[aria-pressed="true"]{background:var(--hctt-navy);border-color:var(--hctt-navy);color:#fff}
.hctt .hctt-filter-count{opacity:.7;margin-left:5px;font-size:11px}
.hctt .hctt-team-dropdown{display:none;flex-direction:column;align-items:stretch;gap:6px;width:100%;min-width:0;margin:0 0 18px;color:var(--hctt-ink);font:inherit;font-size:13px;font-weight:600;line-height:1.5}
.hctt .hctt-team-filter{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;height:48px;min-height:48px;margin:0;padding:10px 12px;border:1px solid #91a8b8;border-radius:7px;background-color:#fff;color:var(--hctt-ink);font-family:inherit;font-size:16px;font-weight:400;letter-spacing:normal;text-transform:none;line-height:1.5;box-shadow:none;cursor:pointer}
.hctt .hctt-filter-button:focus-visible,.hctt .hctt-team-filter:focus-visible{outline:3px solid #2376a6;outline-offset:4px}
.hctt .hctt-result-count{margin:0 0 20px;font-size:12px;color:var(--hctt-muted)}
.hctt .hctt-portrait{width:100%;aspect-ratio:1;background:#fff}
.hctt .hctt-photo{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:contain;object-position:center;border:0;border-radius:0;padding:0;margin:0;box-shadow:none}
.hctt .hctt-placeholder{display:grid;place-items:center;width:100%;height:100%;aspect-ratio:1;background:#edf4fa;color:#7391a8}
.hctt .hctt-placeholder svg{width:48%;height:48%;fill:currentColor}
.hctt .hctt-info{padding:20px 16px 24px;text-align:center}
.hctt .hctt-info h3{margin:0 0 8px;padding:0;color:var(--hctt-blue);font-family:inherit;font-size:clamp(21px,2.2vw,26px);font-weight:750;letter-spacing:-.02em;line-height:1.25;text-transform:none;overflow-wrap:anywhere}
.hctt .hctt-teams{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;list-style:none;margin:0;padding:0}
.hctt .hctt-teams li{list-style:none;margin:0;padding:0;color:#000;font-size:16px;line-height:1.55;min-width:0;overflow-wrap:anywhere}
.hctt .hctt-teams a,.hctt .hctt-teams a:visited{display:inline-block;color:#000!important;text-decoration:underline;text-decoration-color:#afbecb;text-underline-offset:4px;font-family:inherit;font-size:inherit;font-weight:400;letter-spacing:normal;text-transform:none;padding:4px 0}
.hctt .hctt-teams span{display:inline-block;color:#000;padding:4px 0}
.hctt .hctt-teams a:hover{color:var(--hctt-blue)!important;text-decoration-color:currentColor}
.hctt .hctt-teams a:focus-visible{outline:3px solid var(--hctt-blue);outline-offset:4px}
.hctt .hctt-empty{text-align:center;color:#000}
@media(max-width:980px){.hctt .hctt-grid{--hctt-card-width:calc((100% - 22px)/2);gap:28px 22px}}
@media(max-width:639px){.hctt .hctt-filter-buttons{display:none}.hctt .hctt-team-dropdown{display:flex}}
@media(max-width:600px){.hctt .hctt-grid{--hctt-card-width:100%;gap:28px}.hctt .hctt-info{padding:18px 14px 22px}.hctt .hctt-teams a{min-height:44px;display:inline-flex;align-items:center}.hctt .hctt-teams span{padding:10px 0}}
/* Also adapt inside narrow Elementor columns, independent of the screen width. */
@container hct-trainers (max-width:980px){.hctt .hctt-grid{--hctt-card-width:calc((100% - 22px)/2);gap:28px 22px}}
@container hct-trainers (max-width:639px){.hctt .hctt-filter-buttons{display:none}.hctt .hctt-team-dropdown{display:flex}}
@container hct-trainers (max-width:600px){.hctt .hctt-grid{--hctt-card-width:100%;gap:28px}}
