/* Profile patch: scoped to participant records and their directory cards. */
.sfk-card-teams .sfk-card-media,.sfk-card-partners .sfk-card-media,.sfk-card-sponsors .sfk-card-media{display:flex;align-items:center;justify-content:center;aspect-ratio:1.55;background:#fff;border:1px solid #1617131f;color:#111}
.sfk-card-teams .sfk-logo-image,.sfk-card-partners .sfk-logo-image,.sfk-card-sponsors .sfk-logo-image{height:100%;width:100%;max-height:100%;object-fit:contain;padding:28px;transform:none}
.sfk-monogram{display:flex;align-items:center;justify-content:center;align-self:center;width:130px;height:130px;border:5px solid currentColor;font-size:48px;line-height:1;font-weight:900;letter-spacing:-.04em;background:#f8f6ef;color:#111}
.sfk-profile-v64{max-width:1400px;padding:42px clamp(20px,4vw,64px) 90px;font-size:16px;line-height:1.65}
.sfk-profile-v64 .sfk-back{font-size:14px;margin-bottom:30px;line-height:1.5}
.sfk-profile-v64 .sfk-demo-label{font-size:11px;line-height:1.4;color:#fff;background:#111;letter-spacing:.07em}
.sfk-profile-masthead{display:grid;grid-template-columns:220px minmax(0,1fr);gap:36px;padding:42px;background:#eae5d8;border-top:8px solid #ed1724;align-items:center;margin-bottom:44px}
.sfk-profile-masthead.sfk-has-photo{grid-template-columns:190px minmax(0,1fr) minmax(260px,.9fr)}
.sfk-profile-brand{display:flex;align-items:center;justify-content:center;background:#fff;aspect-ratio:1;min-width:0;padding:22px}
.sfk-profile-brand .sfk-logo-image{width:100%;height:100%;max-height:190px;object-fit:contain}
.sfk-profile-small-logo{width:140px;max-height:100px;background:#fff;padding:12px;margin-bottom:20px;display:flex;align-items:center;justify-content:center}.sfk-profile-small-logo img{width:100%;max-height:75px;object-fit:contain}
.sfk-profile-v64 .sfk-profile-heading{min-width:0}
.sfk-profile-v64 .sfk-profile-heading h1{font-family:var(--sf-heading-font,'Barlow Condensed',Impact,sans-serif);font-weight:800;font-size:clamp(38px,4.5vw,70px);line-height:1.02;letter-spacing:-.02em;margin:12px 0 20px;text-transform:uppercase;overflow-wrap:anywhere}
.sfk-profile-v64 .sfk-profile-role{font-size:18px;line-height:1.55;margin:0 0 18px;font-weight:600}
.sfk-profile-kind{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;line-height:1.5;margin:0}
.sfk-profile-status{font-size:13px;line-height:1.5;margin:0 0 18px}
.sfk-profile-visual{margin:0;min-width:0;width:100%}
.sfk-profile-photo{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.sfk-profile-teams .sfk-profile-photo{aspect-ratio:3/2}
.sfk-profile-visual figcaption{font-size:12px;line-height:1.5;margin-top:10px}
.sfk-profile-socials{display:flex;flex-wrap:wrap;gap:8px}
.sfk-profile-socials a{display:inline-flex;gap:12px;align-items:center;border:1px solid currentColor;padding:9px 12px;font-size:13px;font-weight:700;text-decoration:none;line-height:1.4;min-height:40px}
.sfk-profile-socials a:hover{background:#111;color:#fff}
.sfk-profile-body{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,2fr);gap:64px;margin:0 0 55px;align-items:start}
.sfk-profile-facts{margin:0;border-top:3px solid currentColor}
.sfk-profile-facts>div{border-bottom:1px solid #16171333;padding:16px 0}
.sfk-profile-facts dt{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px;line-height:1.5}
.sfk-profile-facts dd{font-size:16px;font-weight:600;margin:0;line-height:1.5;overflow-wrap:anywhere}
.sfk-profile-v64 .sfk-profile-content{font-size:17px;line-height:1.85;max-width:740px}
.sfk-profile-prose{min-width:0}
.sfk-profile-v64 h2{font-family:inherit;font-size:clamp(26px,3vw,38px);line-height:1.15;font-weight:800;letter-spacing:-.03em;margin:0 0 24px;text-transform:none}
.sfk-profile-v64 h3{font-family:inherit;text-transform:none}
.sfk-profile-v64 .sfk-profile-content h2{font-size:27px;margin-top:32px}
.sfk-profile-v64 .sfk-profile-content p{margin:0 0 22px;font-size:inherit;line-height:inherit}
.sfk-profile-v64 .sfk-profile-content ul{padding-left:22px}
.sfk-public-contact{margin-top:32px;overflow-wrap:anywhere}.sfk-profile-v64 .sfk-public-contact h2{font-size:20px;margin-bottom:14px}.sfk-public-contact a{display:block;margin:12px 0;font-size:14px;text-underline-offset:4px}
.sfk-offering{margin:38px 0;max-width:740px}
.sfk-roster-section,.sfk-profile-programme,.sfk-profile-gallery{padding-top:38px;border-top:1px solid #16171333;margin:45px 0 0}
.sfk-section-heading{margin-bottom:28px}.sfk-section-heading .sfk-eyebrow{margin-bottom:10px}
.sfk-roster-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.sfk-member{min-width:0;border-bottom:3px solid #ed1724;background:#fff}
.sfk-member-portrait{aspect-ratio:4/5;background:#e7e3d9;overflow:hidden;display:flex;align-items:center;justify-content:center}
.sfk-roster-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.sfk-member-initials{font-size:60px;font-weight:900;letter-spacing:-.04em;line-height:1}
.sfk-member-info{padding:18px}.sfk-member-role{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#b61620;margin:0 0 9px;line-height:1.5}
.sfk-profile-v64 .sfk-member h3{font-size:21px;line-height:1.2;margin:0 0 12px;font-weight:800;overflow-wrap:anywhere}
.sfk-member-info>p:last-child:not(.sfk-member-role){font-size:14px;line-height:1.65;margin:0}
.sfk-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.sfk-gallery-grid figure{margin:0}.sfk-gallery-photo{width:100%;display:block;aspect-ratio:3/2;object-fit:cover}.sfk-gallery-grid figcaption{font-size:13px;line-height:1.5;margin:10px 0 0}
.sfk-profile-artists .sfk-profile-masthead{background:#21162e;color:#fff;border-color:#9b68d7;grid-template-columns:minmax(0,1fr)}
.sfk-profile-artists .sfk-profile-masthead.sfk-has-photo{grid-template-columns:minmax(0,1fr) minmax(260px,.9fr)}
.sfk-profile-artists .sfk-profile-socials a:hover{background:#fff;color:#21162e}
.sfk-profile-artists .sfk-demo-label{color:#21162e;background:#efe4ff}
.sfk-profile-people .sfk-profile-masthead{grid-template-columns:minmax(0,1fr);border-color:#5a7762;background:#ebece6}
.sfk-profile-people .sfk-profile-masthead.sfk-has-photo{grid-template-columns:minmax(0,1fr) minmax(240px,.7fr)}
.sfk-profile-people .sfk-profile-photo{aspect-ratio:4/5;object-position:center top}
.sfk-profile-partners .sfk-profile-masthead{border-color:#5a7762}
.sfk-profile-sponsors .sfk-profile-masthead{border-color:#d39a24}
.sfk-profile-food .sfk-profile-masthead{grid-template-columns:minmax(0,1fr);border-color:#d39a24}
.sfk-profile-food .sfk-profile-masthead.sfk-has-photo{grid-template-columns:minmax(0,1fr) minmax(240px,.9fr)}
.sfk-profile-sessions .sfk-profile-masthead{grid-template-columns:1fr}
.sfk-profile-v64 :is(a,button,input,select):focus-visible{outline:3px solid #ab4800;outline-offset:4px}
@media(max-width:1100px){.sfk-profile-masthead.sfk-has-photo{grid-template-columns:160px minmax(0,1fr)}.sfk-profile-teams .sfk-profile-visual,.sfk-profile-partners .sfk-profile-visual,.sfk-profile-sponsors .sfk-profile-visual{grid-column:1/-1;max-width:750px}.sfk-roster-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sfk-profile-body{gap:38px}}
@media(max-width:760px){.sfk-profile-v64{padding:28px 20px 60px}.sfk-profile-masthead,.sfk-profile-masthead.sfk-has-photo,.sfk-profile-artists .sfk-profile-masthead.sfk-has-photo,.sfk-profile-people .sfk-profile-masthead.sfk-has-photo,.sfk-profile-food .sfk-profile-masthead.sfk-has-photo{grid-template-columns:minmax(0,1fr);padding:24px;gap:24px}.sfk-profile-brand{width:150px}.sfk-profile-v64 .sfk-profile-heading h1{font-size:44px}.sfk-profile-v64 .sfk-profile-role{font-size:17px}.sfk-profile-body{grid-template-columns:1fr;gap:32px}.sfk-roster-grid,.sfk-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sfk-profile-v64 .sfk-member h3{font-size:18px}.sfk-member-info{padding:14px}.sfk-profile-v64 .sfk-profile-content{font-size:16px;line-height:1.8}.sfk-profile-people .sfk-profile-visual{max-width:420px}}
@media(max-width:420px){.sfk-roster-grid,.sfk-gallery-grid{grid-template-columns:1fr}.sfk-member-portrait{aspect-ratio:1}.sfk-profile-v64 .sfk-profile-heading h1{font-size:38px}.sfk-profile-v64 .sfk-profile-masthead{padding:20px}}
