@layer components{.badge{display:inline-flex;align-items:center;padding:.25em .85em;border-radius:var(--radius-pill);background-color:var(--color-accent);color:var(--icf-deep-blue);font-family:var(--font-display);font-size:var(--text-eyebrow);font-weight:var(--fw-bold);letter-spacing:.04em;line-height:1.6;white-space:nowrap}.coach-archive,.coach-profile{position:relative;overflow:hidden;background-color:var(--color-bg)}.coach-archive .container,.coach-profile .container{position:relative;z-index:var(--z-base)}.coach-filters{display:grid;gap:var(--space-4);align-items:center;margin-block-end:var(--space-8);padding:var(--space-5) var(--space-6);border-radius:var(--radius-card);background-color:var(--color-bg-alt);box-shadow:var(--shadow-card)}.coach-filters__field{max-width:none;margin:0}.coach-filters__reset{max-width:none;margin:0}.coach-filters :is(input,select){inline-size:100%;padding:var(--space-3) var(--space-5);border:2px solid var(--color-border);border-radius:var(--radius-pill);background-color:var(--color-bg-alt);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-nav);line-height:var(--lh-snug);transition:border-color var(--duration-fast) var(--ease)}.coach-filters :is(input,select):hover{border-color:var(--color-border-strong)}.coach-filters :is(input,select):focus-visible{outline:none;border-color:var(--color-border-focus)}.coach-filters select{appearance:none;padding-inline-end:var(--space-10);background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:right var(--space-6) center,right calc(var(--space-6) - 5px) center;background-size:5px 5px,5px 5px;background-repeat:no-repeat;cursor:pointer}.coach-archive__count{max-width:none;margin-block:0 var(--space-6);color:var(--color-text-muted);font-size:var(--text-nav)}.coach-archive__empty{max-width:none;padding:var(--space-16) 0;text-align:center;color:var(--color-text-muted)}.coach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--space-7);margin:0;padding:0;list-style:none}.coach-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);block-size:100%;padding:var(--space-8) var(--space-6);border-radius:28px;background-color:var(--color-bg-alt);color:var(--color-text);text-align:center;text-decoration:none;transition:transform var(--duration-base) var(--ease),box-shadow var(--duration-base) var(--ease);&:hover{transform:translateY(-4px);box-shadow:var(--shadow-card);color:var(--color-text)}&:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:3px}}.coach-card__photo{display:block;inline-size:150px;block-size:150px;border-radius:var(--radius-full);overflow:hidden;background-color:var(--color-bg-muted)}.coach-card__img{inline-size:100%;block-size:100%;object-fit:cover}.coach-card__initials{display:flex;align-items:center;justify-content:center;inline-size:100%;block-size:100%;background-color:var(--color-bg-muted);color:color-mix(in srgb,var(--icf-deep-blue) 45%,transparent);font-family:var(--font-display);font-size:var(--text-h2);font-weight:var(--fw-semibold);line-height:1}.coach-card__name{font-family:var(--font-display);font-size:var(--text-h5);font-weight:var(--fw-semibold);line-height:var(--lh-snug);color:var(--color-primary);text-wrap:balance}.coach-card__badges{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;margin-block-start:auto}.coach-profile__back{max-width:none;margin-block-end:var(--space-8);& a{color:var(--color-text-muted);font-size:var(--text-nav);text-decoration:none}& a:hover{color:var(--color-primary);text-decoration:underline;text-underline-offset:.2em}}.coach-profile__head{display:grid;gap:var(--space-10);align-items:start;padding:var(--space-10);border-radius:var(--radius-card);background-color:var(--color-bg-alt);box-shadow:var(--shadow-card)}.coach-profile__photo{inline-size:220px;block-size:220px;border-radius:var(--radius-full);overflow:hidden;background-color:var(--color-bg-muted);justify-self:center}.coach-profile__img{inline-size:100%;block-size:100%;object-fit:cover}.coach-profile__name{margin-block-end:var(--space-4)}.coach-profile__badges{display:flex;flex-wrap:wrap;gap:var(--space-2);max-width:none;margin-block-end:var(--space-6)}.coach-profile__details{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:var(--space-3) var(--space-6);margin:0 0 var(--space-8);font-size:var(--text-nav);& dt{color:var(--color-text-muted)}& dd{margin:0;font-weight:var(--fw-medium)}}.coach-profile__contact{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.coach-profile__body{display:grid;gap:var(--space-7);margin-block-start:var(--space-7)}.coach-profile__col{display:grid;gap:var(--space-7);align-content:start}.coach-profile__block{padding:var(--space-8) var(--space-10);border-radius:var(--radius-card);background-color:var(--color-bg-alt);box-shadow:var(--shadow-card)}.coach-profile__block h2{margin-block-end:var(--space-5);font-size:var(--text-h4)}.coach-profile__block .flow>*{max-inline-size:68ch}.coach-archive__deco,.coach-profile__deco{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.brush--scatter{inset-block-start:var(--deco-top,0);inline-size:var(--deco-size,260px)}.brush--scatter-left{inset-inline-start:-5%}.brush--scatter-right{inset-inline-end:-4%}.brush--coach-sparkle{inset-block-start:4%;inset-inline-end:2%;inline-size:220px}.brush--coach-wave{inset-block-start:32%;inset-inline-start:-6%;inline-size:320px}.brush--coach-asterisk{inset-block-end:3%;inset-inline-end:-4%;inline-size:300px}@media (min-width:640px){.coach-filters{grid-template-columns:1.4fr repeat(3,1fr)}.coach-filters__reset{grid-column:1 / -1}}@media (min-width:1024px){.coach-filters{grid-template-columns:1.6fr repeat(3,1fr) auto}.coach-filters__reset{grid-column:auto}.coach-profile__head{grid-template-columns:220px minmax(0,1fr);padding:var(--space-12)}.coach-profile__photo{justify-self:start}.coach-profile__body{grid-template-columns:1.65fr 1fr;align-items:start}.coach-profile__body--single{grid-template-columns:minmax(0,1fr)}}}