.cg-spk{--_p:var(--cg-primary,#142033);--_s:var(--cg-secondary,#C8A24A);--_ink:var(--cg-ink,#1B1F24);--_tint:var(--cg-tint,#F4F5F7);--_line:var(--cg-line,#E2E5EA);--_r:var(--cg-radius,16px);--_gap:24px;--cg-spk-per-now:var(--cg-spk-per,4);font-family:var(--cg-font-body,inherit);color:var(--_ink)}
.cg-spk *{box-sizing:border-box}
.cg-spk__head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;margin-bottom:48px}
.cg-spk__head>div{max-width:600px}
.cg-spk__heading{font-family:var(--cg-font-heading,inherit);font-weight:700;font-size:clamp(26px,3vw,34px);line-height:1.2;color:var(--_p);margin:0 0 12px;padding:0}
.cg-spk__sub{font-size:16px;line-height:1.5;opacity:.7;margin:0;padding:0}
.cg-spk__all{flex-shrink:0;font-weight:700;font-size:14.5px;color:var(--_p);text-decoration:none;border-bottom:1px solid var(--_p);padding-bottom:2px}
.cg-spk__all:hover{color:var(--_s);border-color:var(--_s)}

/* Mřížka */
.cg-spk__track{display:flex;flex-wrap:wrap;gap:var(--_gap)}
.cg-spk__card{flex:0 0 calc((100% - var(--_gap) * (var(--cg-spk-per-now) - 1)) / var(--cg-spk-per-now));min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--_line);border-radius:var(--_r);overflow:hidden;transition:box-shadow .2s,transform .2s}
.cg-spk__card.has-bio{cursor:pointer}
.cg-spk__card.has-bio:hover{box-shadow:0 12px 32px rgba(0,0,0,.08);transform:translateY(-2px)}

/* Karusel */
.cg-spk.is-carousel .cg-spk__viewport{overflow:hidden;touch-action:pan-y;padding:4px 0 8px;margin:-4px 0 -8px}
.cg-spk.is-carousel .cg-spk__track{flex-wrap:nowrap;transition:transform .6s cubic-bezier(.22,.61,.36,1);will-change:transform}
@media (prefers-reduced-motion:reduce){.cg-spk.is-carousel .cg-spk__track{transition:none}.cg-spk__card{transition:none}}

.cg-spk__photo-wrap{aspect-ratio:1/1;background:var(--_tint);overflow:hidden}
.cg-spk__photo{display:block;width:100%;height:100%;object-fit:cover}
.cg-spk__info{flex:1;display:flex;flex-direction:column;padding:20px}
.cg-spk__name{font-family:var(--cg-font-body,inherit);font-weight:700;font-size:15.5px;line-height:1.35;color:var(--_p);margin:0 0 2px;padding:0}
.cg-spk__title{font-size:13px;line-height:1.45;opacity:.6;margin-bottom:2px}
.cg-spk__country{font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--_s);margin-bottom:12px}
.cg-spk__talk{font-size:13.5px;font-weight:600;line-height:1.45;color:var(--_p);margin-bottom:10px;text-wrap:pretty}
.cg-spk__teaser{font-size:13px;line-height:1.55;opacity:.7;margin:0 0 12px;padding:0;text-wrap:pretty}
.cg-spk__more{margin-top:auto;align-self:flex-start;background:none;border:0;padding:0;font:inherit;font-size:13px;font-weight:700;color:var(--_p);cursor:pointer}
.cg-spk__more:hover{color:var(--_s)}

.cg-spk__nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:36px}
.cg-spk__arrow{width:40px;height:40px;display:grid;place-items:center;padding:0;border:1px solid var(--_line);border-radius:50%;background:#fff;color:var(--_p);font-size:16px;cursor:pointer;transition:border-color .15s}
.cg-spk__arrow:hover{border-color:var(--_s)}
.cg-spk__dots{display:flex;gap:8px}
.cg-spk__dot{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:var(--_line);cursor:pointer;transition:width .25s,background .25s}
.cg-spk__dot[aria-current="true"]{width:24px;background:var(--_s)}

/* Popup */
.cg-spk-lock{overflow:hidden}
.cg-spk-modal{width:min(640px,calc(100vw - 32px));max-height:calc(100vh - 64px);padding:0;border:0;border-radius:var(--_r);background:#fff;color:var(--_ink);box-shadow:0 24px 64px rgba(0,0,0,.25);overflow:auto}
.cg-spk-modal::backdrop{background:color-mix(in srgb,var(--_p) 70%,transparent)}
.cg-spk-modal[open]{animation:cg-spk-pop .25s ease both}
@keyframes cg-spk-pop{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.cg-spk-modal__close{position:sticky;top:12px;float:right;margin:12px 12px 0 0;width:40px;height:40px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:var(--_tint);color:var(--_p);font-size:24px;line-height:1;cursor:pointer;z-index:1}
.cg-spk-modal__body{padding:40px 44px 44px}
.cg-spk-modal__person{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.cg-spk-modal__person .cg-spk__photo{flex:none;width:96px;height:96px;border-radius:calc(var(--_r) - 6px)}
.cg-spk-modal__name{font-family:var(--cg-font-heading,inherit);font-weight:700;font-size:21px;line-height:1.25;color:var(--_p)}
.cg-spk-modal__title{font-size:14px;opacity:.65;margin-top:4px}
.cg-spk-modal__country{font-size:12.5px;font-weight:600;letter-spacing:.04em;color:var(--_s);margin-top:4px}
.cg-spk-modal__talk{background:var(--_tint);border-radius:calc(var(--_r) - 6px);padding:16px 20px;margin-bottom:24px;font-weight:600;font-size:15.5px;line-height:1.45;color:var(--_p)}
.cg-spk-modal__talk span{display:block;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--_s);margin-bottom:4px}
.cg-spk-modal__text{font-size:15.5px;line-height:1.7}
.cg-spk-modal__text p{margin:0 0 1em;padding:0}
.cg-spk-modal__text a{color:var(--_p);text-decoration:underline}

@media (max-width:1100px){.cg-spk{--cg-spk-per-now:min(3,var(--cg-spk-per,4))}}
@media (max-width:800px){.cg-spk{--cg-spk-per-now:min(2,var(--cg-spk-per,4));--_gap:16px}}
@media (max-width:520px){
  .cg-spk{--cg-spk-per-now:1}
  .cg-spk-modal__body{padding:28px 22px 32px}
  .cg-spk-modal__person{flex-direction:column;align-items:flex-start;gap:14px}
}
