.tvk-home-hero { padding: clamp(54px,6vw,82px) 0 clamp(54px,6vw,78px); background: var(--tvk-paper-2); color: var(--tvk-text); }
.tvk-home-hero__grid { display: grid; grid-template-columns: minmax(0,.84fr) minmax(0,1.16fr); gap: clamp(42px,7vw,92px); align-items: center; }
.tvk-home-hero__copy h1 { max-width: 700px; margin: 14px 0 20px; font-size: clamp(2.55rem,4.55vw,4rem); line-height: .97; letter-spacing: -.04em; }
.tvk-home-hero__copy > p { max-width: 600px; color: var(--tvk-muted); font-size: 1rem; line-height: 1.66; }
.tvk-home-hero__copy .tvk-kicker { color: var(--tvk-water); }
.tvk-home-hero__copy .tvk-text-link { color: var(--tvk-ink); }
.tvk-home-hero__statement { display: grid; grid-template-columns: 138px 1fr; gap: 22px; max-width: 610px; margin-top: 38px; padding-top: 22px; border-top: 1px solid var(--tvk-line); }
.tvk-home-hero__statement span { color: var(--tvk-water); font-size: .74rem; font-weight: var(--tvk-weight-bold); letter-spacing: .1em; text-transform: uppercase; }
.tvk-home-hero__statement p { margin: 0; color: var(--tvk-muted); font-size: .86rem; line-height: 1.58; }
.tvk-hero-frame { position: relative; display: block; overflow: hidden; aspect-ratio: 16/9; border: 1px solid rgba(16,40,74,.11); border-radius: var(--tvk-radius-lg); background: var(--tvk-ink-2); box-shadow: 0 34px 90px rgba(16,40,74,.18); }
.tvk-hero-frame img { width: 100%; height: 100%; object-fit: cover; }
.tvk-hero-frame::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,15,20,.02) 34%, rgba(5,15,20,.82) 100%); }
.tvk-hero-frame .tvk-play-button { position: absolute; z-index: 3; left: 24px; bottom: 24px; }
.tvk-hero-frame__label { position: absolute; z-index: 3; top: 20px; left: 20px; padding: 7px 11px; border-radius: 999px; background: rgba(5,15,20,.68); color:#fff; backdrop-filter: blur(10px); font-size: .7rem; font-weight: var(--tvk-weight-bold); text-transform: uppercase; }
.tvk-hero-frame__copy { position:absolute; z-index:2; right:24px; bottom:22px; left:112px; display:grid; gap:5px; color:#fff; }
.tvk-hero-frame__copy small { color:rgba(255,255,255,.66); font-size:.68rem; font-style:normal; font-weight:var(--tvk-weight-semibold); letter-spacing:.08em; text-transform:uppercase; }
.tvk-hero-frame__copy strong { display:-webkit-box; overflow:hidden; font-size:clamp(1rem,1.55vw,1.35rem); line-height:1.18; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.tvk-hero-frame__copy em { display:inline-flex; align-items:center; gap:6px; margin-top:2px; color:var(--tvk-water-light); font-size:.75rem; font-style:normal; font-weight:var(--tvk-weight-bold); }
.tvk-section--picks { padding-block: clamp(42px,5vw,64px); background:#fff; border-top:1px solid var(--tvk-line); border-bottom:1px solid var(--tvk-line); }
.tvk-home-picks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; align-items:stretch; }
.tvk-home-picks .tvk-card--feature, .tvk-home-picks .tvk-card--promoted { grid-column:auto; grid-template-columns:1fr; min-width:0; height:100%; }
.tvk-home-picks .tvk-card--feature .tvk-card__media, .tvk-home-picks .tvk-card--promoted .tvk-card__media { min-height:0; aspect-ratio:16/9; }
.tvk-home-picks .tvk-card--feature .tvk-card__body, .tvk-home-picks .tvk-card--promoted .tvk-card__body { padding:24px 22px 26px; }
.tvk-home-picks .tvk-card--feature .tvk-card__body h3, .tvk-home-picks .tvk-card--promoted .tvk-card__body h3 { font-size:clamp(1.4rem,2.2vw,2rem); }
.tvk-section-head--compact { margin-bottom:24px; }
.tvk-section-head--compact h2 { max-width:760px; }
.tvk-editorial-grid--home { grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.tvk-ketrzyn-grid--home { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.tvk-program-grid--home { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.tvk-location-cards--home { grid-template-columns:repeat(4,minmax(0,1fr)); }
.tvk-bridge-grid--home { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:960px; }


.tvk-promoted-strip { padding: 34px 0 48px; background: linear-gradient(180deg, #f7faff 0%, #eff4fb 100%); border-bottom: 1px solid var(--tvk-line); }
.tvk-promoted-strip__head { display: flex; justify-content: space-between; gap: 30px; align-items: end; margin-bottom: 24px; }
.tvk-promoted-strip__head p { max-width: 540px; margin: 0; color: var(--tvk-muted); font-size: .88rem; text-align: right; }
.tvk-promoted-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,420px),1fr)); gap: 24px; }
.tvk-promoted-grid .tvk-card--feature { grid-row: auto; }
.tvk-promoted-grid .tvk-card--feature .tvk-card__media { aspect-ratio: 16/9; }
@media (max-width: 720px) {
  .tvk-promoted-strip { padding: 28px 0 36px; }
  .tvk-promoted-strip__head { display: block; }
  .tvk-promoted-strip__head p { margin-top: 8px; text-align: left; }
}
.tvk-format-links { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; background: transparent; }
.tvk-format-links a { display: grid; min-height: 178px; align-content: start; gap: 18px; padding: 24px; border: 1px solid var(--tvk-line); border-radius: 20px; background: #fff; box-shadow: var(--tvk-shadow-soft); }
.tvk-format-links span { color: var(--tvk-brick); font-size: .78rem; font-weight: var(--tvk-weight-bold); text-transform: uppercase; }
.tvk-format-links strong { max-width: 260px; font-size: 1.32rem; line-height: 1.14; }
.tvk-place-list { margin-top: 30px; border-top: 1px solid var(--tvk-line); }
.tvk-place-list a { display: flex; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid var(--tvk-line); }
.tvk-place-list b { color: var(--tvk-water); }
.tvk-topic-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1px; background: var(--tvk-line); }
.tvk-topic-grid a { display: grid; min-height: 150px; grid-template-columns: 1fr auto; align-content: space-between; padding: 24px; background: #fff; }
.tvk-topic-grid span { grid-column: 1/-1; font-size: 1.2rem; font-weight: 700; }
.tvk-topic-grid small { color: var(--tvk-muted); }
.tvk-bridge-head { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(280px,.85fr); gap: 38px; align-items: end; margin-bottom: 32px; }
.tvk-bridge-head h2 { margin: 10px 0 0; }
.tvk-bridge-head p { color: var(--tvk-muted); }
.tvk-bridge-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.tvk-bridge-empty { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); gap: 18px 24px; align-items: center; padding: 28px 30px; border: 1px solid var(--tvk-line); border-radius: 24px; background: #fff; box-shadow: var(--tvk-shadow-soft); }
.tvk-bridge-empty div span { display: block; color: var(--tvk-water); font-size: .78rem; font-weight: var(--tvk-weight-bold); text-transform: uppercase; }
.tvk-bridge-empty div strong { display: block; margin-top: 8px; font-size: 1.15rem; line-height: 1.22; }
.tvk-bridge-symbol { color: var(--tvk-water); font-size: 1.55rem; font-weight: var(--tvk-weight-bold); }
.tvk-card--sibling .tvk-card__source-badge { position: absolute; z-index: 3; top: 12px; left: 12px; display: inline-flex; min-height: 28px; align-items: center; padding: 0 10px; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; background: rgba(16,40,74,.88); color: #fff; font-size: .68rem; font-weight: var(--tvk-weight-bold); letter-spacing: .04em; backdrop-filter: blur(10px); }
.tvk-card--sibling .tvk-card__eyebrow { display: flex; justify-content: space-between; gap: 10px; align-items: center; color: var(--tvk-muted); font-size: .7rem; font-weight: var(--tvk-weight-semibold); }
.tvk-card--sibling .tvk-card__eyebrow > span { color: var(--tvk-water); text-transform: uppercase; letter-spacing: .06em; }
.tvk-card--sibling .tvk-text-link { margin-top: auto; }

.tvk-history-placeholder { max-width: 760px; padding: 40px; border: 1px solid rgba(255,255,255,.16); border-radius: 24px; background: rgba(255,255,255,.03); }
.tvk-history-placeholder span { color: var(--tvk-amber); font-size: .78rem; font-weight: var(--tvk-weight-bold); text-transform: uppercase; }
.tvk-history-placeholder h3 { margin: 12px 0; font-size: 2rem; }
.tvk-history-placeholder p { color: rgba(255,255,255,.62); }
.tvk-history-strip--home { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: none; }
.tvk-history-strip--home .tvk-card--archive { grid-template-columns: 84px 220px minmax(0,1fr); gap: 22px; height: 100%; }
.tvk-history-strip--home .tvk-card__body h3 { font-size: clamp(1.2rem,1.7vw,1.7rem); line-height: 1.1; max-width: 18ch; }
.tvk-history-strip--home .tvk-card__body p { font-size: .92rem; }
.tvk-contribute-grid { display: grid; grid-template-columns: 1fr .8fr; gap: 80px; align-items: center; }
.tvk-contribute-grid h2 { max-width: 800px; margin: 10px 0 0; }
.tvk-contribute-grid .tvk-kicker { color: #ffd4bb; }
.tvk-contribute-actions { display: grid; }
.tvk-contribute-actions a { display: flex; justify-content: space-between; gap: 20px; padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.25); font-weight: var(--tvk-weight-semibold); }
.tvk-owner-story { padding: 82px 0; background: #eef4fc; }
.tvk-owner-story__grid { display: grid; grid-template-columns: 1fr .8fr; gap: 80px; align-items: start; }
.tvk-owner-story h2 { margin: 10px 0 0; }
.tvk-owner-story p { color: var(--tvk-muted); }
.tvk-catalog-tools { position: sticky; z-index: 20; top: 126px; padding: 15px 0 12px; border-bottom: 1px solid var(--tvk-line); background: rgba(250,248,243,.96); backdrop-filter: blur(14px); }
.admin-bar .tvk-catalog-tools { top: 158px; }
.tvk-filter-bar--advanced { display: grid; grid-template-columns: minmax(220px,1.3fr) repeat(6,minmax(120px,.62fr)) auto; gap: 10px; align-items: end; }
.tvk-filter-bar label > span { display: block; margin-bottom: 6px; color: var(--tvk-muted); font-size: .72rem; font-weight: var(--tvk-weight-semibold); letter-spacing: .06em; text-transform: uppercase; }
.tvk-filter-bar input, .tvk-filter-bar select { width: 100%; min-height: 44px; padding: 0 11px; border: 1px solid var(--tvk-line); border-radius: 10px; background: #fff; color: var(--tvk-text); font-size: .8rem; }
.tvk-filter-search { display: grid; grid-template-columns: 20px 1fr; gap: 8px; align-items: center; min-height: 44px; padding: 0 11px; border: 1px solid var(--tvk-line); border-radius: 10px; background: #fff; }
.tvk-filter-search input { min-height: 40px; padding: 0; border: 0; outline: 0; }
.tvk-catalog-quick { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding-top: 11px; color: var(--tvk-muted); font-size: .72rem; }
.tvk-catalog-quick a { padding: 5px 9px; border: 1px solid var(--tvk-line); border-radius: 999px; background: rgba(255,255,255,.5); color: var(--tvk-text); }
.tvk-results-head { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-bottom: 30px; color: var(--tvk-muted); }
.tvk-results-head p { margin: 0; }
.tvk-view-switch { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; }
.tvk-view-switch button, .tvk-view-switch a { min-height: 38px; padding: 0 12px; border: 1px solid var(--tvk-line); border-radius: 999px; background: transparent; color: var(--tvk-muted); font-size: .72rem; font-weight: var(--tvk-weight-semibold); cursor: pointer; }
.tvk-view-switch button[aria-pressed="true"] { border-color: var(--tvk-ink); background: var(--tvk-ink); color: #fff; }
.tvk-catalog-grid--list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 32px; }
.tvk-catalog-grid--timeline { display: block; }
.tvk-pagination { display: grid; justify-items: center; gap: 20px; margin-top: 54px; }
.tvk-load-more { display: inline-flex; min-height: 50px; align-items: center; gap: 9px; padding: 0 22px; border-radius: 999px; background: var(--tvk-ink); color: #fff; font-weight: var(--tvk-weight-bold); }
.tvk-load-more[aria-busy="true"] { opacity: .65; pointer-events: none; }
.tvk-pagination__classic { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.tvk-pagination__classic .page-numbers { display: inline-grid; min-width: 42px; height: 42px; place-items: center; padding: 0 10px; border: 1px solid var(--tvk-line); border-radius: 999px; }
.tvk-pagination__classic .current { border-color: var(--tvk-water); background: var(--tvk-water); color: #fff; }
.tvk-catalog-story { max-width: 980px; margin-top: clamp(70px,10vw,130px); padding: clamp(32px,5vw,62px); border: 1px solid var(--tvk-line); border-radius: var(--tvk-radius-lg); background: linear-gradient(135deg,rgba(255,255,255,.7),#f2f6fc); }
.tvk-catalog-story h2 { margin: 10px 0 16px; }
.tvk-catalog-story p { max-width: 820px; color: var(--tvk-muted); line-height: 1.75; }
.tvk-catalog-story > div { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 22px; }
.tvk-catalog-story a { display: inline-flex; gap: 7px; align-items: center; font-size: .8rem; font-weight: var(--tvk-weight-semibold); }
@media (max-width: 1440px) { .tvk-filter-bar--advanced { grid-template-columns: minmax(220px,1.2fr) repeat(3,minmax(130px,.7fr)) auto; } }
@media (max-width: 960px) { .tvk-catalog-tools { position: static; } .admin-bar .tvk-catalog-tools { top: auto; } .tvk-filter-bar--advanced { grid-template-columns: repeat(2,minmax(0,1fr)); } .tvk-filter-bar--advanced > * { grid-row: auto; } .tvk-filter-search { grid-column: 1 / -1; } .tvk-filter-bar--advanced .tvk-button { grid-column: 1 / -1; } .tvk-catalog-grid--list { grid-template-columns: 1fr; } }
@media (max-width: 720px) { .tvk-filter-bar--advanced { grid-template-columns: 1fr; } .tvk-filter-search, .tvk-filter-bar--advanced .tvk-button { grid-column: auto; } .tvk-results-head { align-items: flex-start; flex-direction: column; } .tvk-view-switch { width: 100%; } .tvk-view-switch button { flex: 1; } .tvk-pagination__classic { display: none; } }
.tvk-live-landing { padding: 70px 0 96px; background: var(--tvk-ink); color: #fff; }
.tvk-live-feature { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: center; }
.tvk-live-feature h1, .tvk-live-offline h1 { margin: 20px 0; }
.tvk-live-feature p, .tvk-live-offline p { color: rgba(255,255,255,.66); }
.tvk-live-feature__media { position: relative; overflow: hidden; aspect-ratio: 16/9; border-radius: var(--tvk-radius-lg); }
.tvk-live-feature__media img { width: 100%; height: 100%; object-fit: cover; }
.tvk-live-feature__media span { position: absolute; left: 28px; bottom: 28px; display: grid; width: 64px; height: 64px; place-items: center; border-radius: 50%; background: #fff; color: var(--tvk-ink); }
.tvk-live-offline { max-width: 900px; text-align: left; }
.tvk-live-offline__signal { display: grid; width: 72px; height: 72px; place-items: center; margin-bottom: 28px; border: 1px solid var(--tvk-line-dark); border-radius: 50%; color: var(--tvk-amber); }
.tvk-live-card { overflow: hidden; border-radius: var(--tvk-radius); background: #fff; }
.tvk-live-card img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.tvk-live-card > div { padding: 20px; }
.tvk-live-card h3 { margin: 12px 0 6px; }
.tvk-history-hero { padding: 100px 0 120px; background: linear-gradient(120deg,#181a1a,#382d27); color: #fff; }
.tvk-history-hero .tvk-kicker { color: var(--tvk-amber); }
.tvk-history-hero h1 { max-width: 980px; margin: 16px 0 24px; }
.tvk-history-hero p { max-width: 760px; color: rgba(255,255,255,.64); }
.tvk-timeline { position: relative; }
.tvk-timeline::before { content: ""; position: absolute; left: 72px; top: 0; bottom: 0; width: 1px; background: var(--tvk-line-dark); }
.tvk-timeline-era { display: grid; grid-template-columns: 145px minmax(0,1fr); gap: 34px; padding: 38px 0 56px; }
.tvk-timeline-year { position: relative; z-index: 1; }
.tvk-timeline-year span { display: inline-flex; padding: 12px 18px; border-radius: 999px; background: var(--tvk-amber); color: #1b1714; font-weight: var(--tvk-weight-bold); }
.tvk-history-strip--timeline { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; align-items: stretch; }
.tvk-history-strip--timeline .tvk-card--archive { position: relative; display: grid; grid-template-columns: 1fr; grid-template-rows: auto 1fr; gap: 0; overflow: hidden; min-width: 0; padding: 0; border: 1px solid rgba(255,255,255,.12); border-radius: 18px; background: rgba(255,255,255,.035); }
.tvk-history-strip--timeline .tvk-card__archive-year { position: absolute; z-index: 4; top: 12px; left: 12px; padding: 6px 9px; border-radius: 999px; background: rgba(7,28,53,.82); color: var(--tvk-water-light); font-size: .78rem; letter-spacing: 0; backdrop-filter: blur(8px); }
.tvk-history-strip--timeline .tvk-card__media-wrap { min-width: 0; }
.tvk-history-strip--timeline .tvk-card__media { width: 100%; aspect-ratio: 16/9; border-radius: 0; }
.tvk-history-strip--timeline .tvk-card__body { display: flex; min-width: 0; flex-direction: column; padding: 18px 18px 20px; }
.tvk-history-strip--timeline .tvk-card__body h3 { margin: 6px 0 9px; font-size: clamp(1.02rem,1.25vw,1.28rem); line-height: 1.16; overflow-wrap: anywhere; }
.tvk-history-strip--timeline .tvk-card__body p { color: rgba(255,255,255,.58); }
.tvk-history-strip--timeline .tvk-card__body .tvk-text-link { margin-top: auto; padding-top: 8px; color: #fff; }
.tvk-history-submit { padding: 80px 0; background: var(--tvk-paper); }
.tvk-history-submit .tvk-container, .tvk-context-cta .tvk-container { display: flex; justify-content: space-between; gap: 60px; align-items: center; }
.tvk-history-submit h2, .tvk-context-cta h2 { max-width: 820px; margin: 10px 0; }
.tvk-history-submit p { max-width: 680px; color: var(--tvk-muted); }
.tvk-context-cta { padding: 76px 0; background: var(--tvk-ink-2); color: #fff; }
.tvk-watch-header { padding: clamp(54px,7vw,82px) 0 38px; background: linear-gradient(180deg,#f6f9fe 0%,#eef4fc 100%); border-bottom: 1px solid var(--tvk-line); }
.tvk-watch-header h1 { max-width: 1040px; margin: 14px 0 16px; font-size: clamp(2.35rem,4.2vw,3.8rem); line-height: 1.01; letter-spacing: -.04em; }
.tvk-watch-header p { max-width: 820px; margin-bottom: 0; color: var(--tvk-muted); font-size: 1.02rem; line-height: 1.65; }
.tvk-watch-layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: clamp(34px,4vw,56px); padding: 38px 0 96px; }
.tvk-watch-main { min-width: 0; }
.tvk-watch-aside { display: grid; align-content: start; gap: 14px; position: sticky; top: calc(var(--tvk-header) + 24px); align-self: start; }
.tvk-watch-toolbar { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: center; padding: 16px 0 26px; border-bottom: 1px solid var(--tvk-line); }
.tvk-watch-later, .tvk-moment-copy { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; padding: 0 13px; border: 1px solid var(--tvk-line); border-radius: 999px; background: #fff; cursor: pointer; font-weight: var(--tvk-weight-semibold); font-size: .82rem; }
.tvk-content-section { margin-top: 56px; }
.tvk-content-section h2 { margin: 10px 0 24px; }
.tvk-chapters { display: grid; gap: 1px; background: var(--tvk-line); }
.tvk-chapters button { display: grid; grid-template-columns: 70px 1fr 30px; gap: 14px; align-items: center; padding: 16px 18px; border: 0; background: #fff; text-align: left; cursor: pointer; }
.tvk-chapters time { color: var(--tvk-water); font-weight: var(--tvk-weight-bold); }
.tvk-transcript { margin-top: 36px; border-top: 1px solid var(--tvk-line); border-bottom: 1px solid var(--tvk-line); }
.tvk-transcript summary { display: flex; justify-content: space-between; padding: 22px 0; cursor: pointer; font-weight: var(--tvk-weight-semibold); }
.tvk-transcript > div { max-width: var(--tvk-reading); padding-bottom: 30px; color: var(--tvk-muted); }
.tvk-podcast-hero { padding: 90px 0; background: #171b20; color: #fff; }
.tvk-podcast-hero__grid { display: grid; grid-template-columns: 360px 1fr; gap: 70px; align-items: center; }
.tvk-podcast-cover { overflow: hidden; aspect-ratio: 1/1; border-radius: 24px; box-shadow: 0 35px 80px rgba(0,0,0,.3); }
.tvk-podcast-cover img { width: 100%; height: 100%; object-fit: cover; }
.tvk-podcast-hero h1 { margin: 14px 0 20px; }
.tvk-podcast-hero p { max-width: 720px; color: rgba(255,255,255,.66); }
.tvk-story-layout, .tvk-event-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 70px; }
.tvk-event-detail { padding: 80px 0; background: #f3f7fd; }
.tvk-event-detail__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; align-items: center; }
.tvk-event-detail h1 { margin: 14px 0 20px; }
.tvk-event-detail__facts { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 28px; }
.tvk-event-detail__facts span { display: inline-flex; align-items: center; gap: 8px; }
.tvk-event-detail__media { overflow: hidden; aspect-ratio: 16/10; border-radius: var(--tvk-radius-lg); }
.tvk-event-detail__media img { width: 100%; height: 100%; object-fit: cover; }
.tvk-source-hero { padding: 90px 0; background: var(--tvk-ink); color: #fff; }
.tvk-source-hero__grid { display: grid; grid-template-columns: 190px 1fr; gap: 54px; align-items: center; }
.tvk-source-avatar { overflow: hidden; aspect-ratio: 1/1; border-radius: 50%; }
.tvk-source-avatar img { width: 100%; height: 100%; object-fit: cover; }
.tvk-source-hero h1 { margin: 10px 0 18px; }
.tvk-source-hero p { max-width: 760px; color: rgba(255,255,255,.64); }
.tvk-collection-hero { padding: 80px 0; background: var(--tvk-paper); }
.tvk-collection-hero__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: center; }
.tvk-collection-hero h1 { margin: 12px 0 20px; }
.tvk-collection-hero__media { overflow: hidden; aspect-ratio: 16/10; border-radius: var(--tvk-radius-lg); }
.tvk-collection-hero__media img { width: 100%; height: 100%; object-fit: cover; }
.tvk-contact-layout, .tvk-submit-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; }
.tvk-contact-primary h2, .tvk-submit-info h2 { margin: 10px 0 18px; }
.tvk-contact-primary p, .tvk-submit-info p { color: var(--tvk-muted); }
.tvk-contact-mail, .tvk-contact-links a { display: grid; grid-template-columns: 44px 1fr auto; gap: 16px; align-items: center; padding: 20px 0; border-top: 1px solid var(--tvk-line); }
.tvk-contact-mail { margin-top: 32px; border-bottom: 1px solid var(--tvk-line); }
.tvk-contact-links { display: grid; }
.tvk-contact-links small, .tvk-contact-mail small { display: block; color: var(--tvk-muted); font-size: .78rem; text-transform: uppercase; }
.tvk-contact-links strong, .tvk-contact-mail strong { display: block; margin-top: 4px; }
.tvk-submit-info ul { padding-left: 20px; line-height: 1.9; }
.tvk-submit-form { display: grid; gap: 18px; padding: 32px; border-radius: var(--tvk-radius-lg); background: #fff; box-shadow: var(--tvk-shadow); }
.tvk-submit-form label > span { display: block; margin-bottom: 7px; font-size: .78rem; font-weight: var(--tvk-weight-semibold); }
.tvk-submit-form input, .tvk-submit-form select, .tvk-submit-form textarea { width: 100%; padding: 13px 14px; border: 1px solid var(--tvk-line); border-radius: 10px; background: #fff; }
.tvk-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.tvk-form-consent { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: start; }
.tvk-form-consent input { width: 18px; }
.tvk-honeypot { position: absolute; left: -9999px; }
.tvk-form-notice { padding: 14px 16px; border-radius: 10px; }
.tvk-form-notice--success { background: rgba(40,117,84,.12); color: var(--tvk-success); }
.tvk-form-notice--error { background: rgba(167,63,63,.12); color: var(--tvk-danger); }
.tvk-collab-hero { padding: 110px 0; background: linear-gradient(120deg,var(--tvk-ink),#233f43); color: #fff; }
.tvk-collab-hero h1 { max-width: 1000px; margin: 16px 0 24px; }
.tvk-collab-hero p { max-width: 760px; color: rgba(255,255,255,.66); }
.tvk-services-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--tvk-line); }
.tvk-services-grid article { min-height: 260px; padding: 30px; background: var(--tvk-paper); }
.tvk-services-grid article > span { color: var(--tvk-brick); font-size: .78rem; font-weight: var(--tvk-weight-bold); }
.tvk-services-grid h2 { margin: 42px 0 12px; font-size: 1.6rem; }
.tvk-services-grid p { color: var(--tvk-muted); }
.tvk-about-grid { display: grid; grid-template-columns: .55fr 1.45fr; gap: 80px; }
.tvk-about-grid > div:last-child { max-width: 820px; font-size: 1.06rem; }
.tvk-about-grid p a { color: var(--tvk-water); font-weight: var(--tvk-weight-semibold); text-decoration: underline; text-underline-offset: 3px; }
.tvk-about-pillars { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--tvk-line); }
.tvk-about-pillars article { min-height: 220px; padding: 28px; background: var(--tvk-paper); }
.tvk-about-pillars span { color: var(--tvk-water); font-size: .78rem; font-weight: var(--tvk-weight-bold); text-transform: uppercase; }
.tvk-about-pillars h3 { margin-top: 54px; }
.tvk-sitemap-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 44px; }
.tvk-sitemap-grid section { display: flex; flex-direction: column; gap: 12px; }
.tvk-sitemap-grid h2 { padding-bottom: 12px; border-bottom: 1px solid var(--tvk-line); font-size: 1.3rem; }
.tvk-sitemap-grid a { color: var(--tvk-muted); }
.tvk-404 { padding: 100px 0; background: var(--tvk-ink); color: #fff; }
.tvk-404__grid { display: grid; grid-template-columns: 1fr .8fr; gap: 90px; align-items: center; }
.tvk-404__copy { position: relative; }
.tvk-404__number { position: absolute; z-index: 0; left: -20px; top: -90px; color: rgba(255,255,255,.035); font-size: clamp(10rem, 22vw, 20rem); font-weight: var(--tvk-weight-bold); letter-spacing: -.08em; }
.tvk-404__copy > *:not(.tvk-404__number) { position: relative; z-index: 1; }
.tvk-404 h1 { margin: 14px 0 20px; }
.tvk-404 p { max-width: 700px; color: rgba(255,255,255,.66); }
.tvk-404__search { padding: 34px; border: 1px solid var(--tvk-line-dark); border-radius: var(--tvk-radius-lg); background: rgba(255,255,255,.04); }
.tvk-search-launch { display: flex; width: 100%; gap: 12px; align-items: center; padding: 18px; border: 1px solid var(--tvk-line-dark); border-radius: 12px; background: transparent; color: rgba(255,255,255,.62); cursor: pointer; }
.tvk-404__links { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 24px; font-size: .82rem; }
@media (max-width: 960px) {
  .tvk-format-links, .tvk-topic-grid, .tvk-bridge-grid, .tvk-services-grid, .tvk-about-pillars, .tvk-sitemap-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .tvk-filter-bar { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .tvk-filter-bar .tvk-button { align-self: end; }
}
@media (max-width: 1120px) {
  .tvk-history-strip--timeline { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tvk-editorial-grid--home, .tvk-location-cards--home { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tvk-home-hero__grid, .tvk-live-feature, .tvk-podcast-hero__grid, .tvk-event-detail__grid, .tvk-collection-hero__grid { grid-template-columns: 1fr; }
  .tvk-home-hero__media { max-width: 900px; }
  .tvk-bridge-empty { grid-template-columns: 1fr 1fr; }
  .tvk-bridge-symbol { display: none; }
  .tvk-bridge-empty .tvk-button { grid-column: 1/-1; justify-self: start; }
  .tvk-watch-layout, .tvk-story-layout, .tvk-event-layout { grid-template-columns: 1fr; }
  .tvk-watch-aside { grid-template-columns: repeat(2,1fr); }
  .tvk-contact-layout, .tvk-submit-layout { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .tvk-home-hero { padding-top: 46px; }
  .tvk-home-hero__grid { gap: 42px; }
  .tvk-home-hero__statement { grid-template-columns: 1fr; gap: 10px; }
  .tvk-format-links, .tvk-topic-grid, .tvk-bridge-grid, .tvk-services-grid, .tvk-about-pillars, .tvk-sitemap-grid { grid-template-columns: 1fr; }
  .tvk-bridge-head, .tvk-contribute-grid, .tvk-owner-story__grid, .tvk-404__grid { grid-template-columns: 1fr; gap: 36px; }
  .tvk-bridge-empty { grid-template-columns: 1fr; text-align: center; }
  .tvk-bridge-symbol { transform: rotate(90deg); }
  .tvk-filter-bar { grid-template-columns: 1fr; }
  .tvk-catalog-tools { position: static; }
  .tvk-live-feature { gap: 40px; }
  .tvk-home-picks { grid-template-columns:1fr; }
  .tvk-history-strip--home { grid-template-columns:1fr; }
  .tvk-history-strip--timeline { grid-template-columns:1fr; }
  .tvk-timeline::before { left: 12px; }
  .tvk-timeline-era { grid-template-columns: 1fr; gap: 24px; padding-left: 28px; }
  .tvk-history-submit .tvk-container, .tvk-context-cta .tvk-container { display: block; }
  .tvk-history-submit .tvk-button, .tvk-context-cta .tvk-button { margin-top: 24px; }
  .tvk-podcast-cover { max-width: 280px; }
  .tvk-source-hero__grid { grid-template-columns: 100px 1fr; gap: 24px; }
  .tvk-form-row { grid-template-columns: 1fr; }
  .tvk-submit-form { padding: 22px; }
  .tvk-about-grid { grid-template-columns: 1fr; gap: 30px; }
  .tvk-404 { padding-top: 84px; }
}

/* Progressive catalog interaction */
.tvk-catalog-shell { position: relative; }
.tvk-catalog-shell::after { content: ""; position: fixed; z-index: 999; inset: var(--tvk-header) 0 0; visibility: hidden; opacity: 0; background: rgba(250,248,243,.52); backdrop-filter: blur(2px); pointer-events: none; transition: opacity var(--tvk-transition), visibility var(--tvk-transition); }
.tvk-catalog-shell.is-loading::after { visibility: visible; opacity: 1; }
.tvk-catalog-shell.is-loading [data-tvk-catalog-results] { opacity: .42; pointer-events: none; }
[data-tvk-catalog-results] { transition: opacity var(--tvk-transition); }

/* Catalog promotions */
.tvk-catalog-promoted { margin-bottom: clamp(48px, 7vw, 88px); padding-bottom: clamp(44px, 6vw, 72px); border-bottom: 1px solid var(--tvk-line); }
.tvk-catalog-promoted .tvk-section-head { margin-bottom: 28px; }

/* Editorial and group pages */
.tvk-story-flow { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; margin: 34px 0 28px; counter-reset: flow; }
.tvk-story-flow span { position: relative; display: flex; min-height: 96px; align-items: flex-end; padding: 18px; border: 1px solid var(--tvk-line); border-radius: var(--tvk-radius); background: rgba(255,255,255,.55); font-weight: var(--tvk-weight-semibold); }
.tvk-story-flow span:not(:last-child)::after { content: ""; position: absolute; top: 50%; right: -11px; z-index: 2; width: 12px; height: 1px; background: var(--tvk-water); }
.tvk-wide-copy { max-width: 880px; color: var(--tvk-muted); font-size: 1.05rem; line-height: 1.78; }
.tvk-natural-links { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 24px; }
.tvk-natural-links a { display: inline-flex; align-items: center; min-height: 42px; border-bottom: 1px solid currentColor; color: inherit; font-weight: var(--tvk-weight-semibold); }
.tvk-process-layout, .tvk-faq-layout { display: grid; grid-template-columns: minmax(240px,.7fr) minmax(0,1.3fr); gap: clamp(40px,7vw,110px); align-items: start; }
.tvk-process-intro, .tvk-faq-layout > div:first-child { position: sticky; top: calc(var(--tvk-header) + 34px); }
.tvk-process-steps, .tvk-faq-list { display: grid; gap: 12px; }
.tvk-process-steps details, .tvk-faq-list details { border: 1px solid var(--tvk-line); border-radius: var(--tvk-radius); background: rgba(255,255,255,.62); }
.tvk-process-steps summary, .tvk-faq-list summary { display: grid; grid-template-columns: 46px 1fr 22px; gap: 14px; align-items: center; padding: 20px 22px; cursor: pointer; list-style: none; }
.tvk-process-steps summary::-webkit-details-marker, .tvk-faq-list summary::-webkit-details-marker { display: none; }
.tvk-process-steps summary span { color: var(--tvk-brick); font-size: .78rem; font-weight: var(--tvk-weight-bold); letter-spacing: .08em; }
.tvk-process-steps summary .tvk-icon { transition: transform var(--tvk-transition); }
.tvk-process-steps details[open] summary .tvk-icon { transform: rotate(180deg); }
.tvk-process-steps details p, .tvk-faq-list details p { margin: 0; padding: 0 22px 22px 82px; color: var(--tvk-muted); line-height: 1.7; }
.tvk-faq-list summary { grid-template-columns: 1fr; font-weight: var(--tvk-weight-semibold); }
.tvk-faq-list details p { padding-left: 22px; }
.tvk-feature-list { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; background: var(--tvk-line-dark); border: 1px solid var(--tvk-line-dark); }
.tvk-feature-list article { padding: clamp(24px,3vw,38px); background: var(--tvk-ink); }
.tvk-feature-list h3 { margin: 0 0 12px; color: #fff; font-size: 1.25rem; }
.tvk-feature-list p { margin: 0; color: rgba(255,255,255,.66); line-height: 1.65; }
.tvk-history-timeline { display: grid; gap: 12px; }
.tvk-history-milestone { display: grid; grid-template-columns: minmax(220px,.65fr) minmax(0,1.35fr); border-top: 1px solid var(--tvk-line); }
.tvk-history-milestone > button { display: grid; grid-template-columns: 110px 1fr; gap: 20px; align-items: start; width: 100%; padding: 24px 18px 24px 0; border: 0; background: transparent; text-align: left; cursor: pointer; }
.tvk-history-milestone > button span { color: var(--tvk-brick); font-weight: var(--tvk-weight-bold); }
.tvk-history-milestone > button strong { font-size: 1.2rem; }
.tvk-history-milestone > div { display: block; padding: 24px 0 28px 30px; border-left: 1px solid var(--tvk-line); }
[data-tvk-timeline][data-tvk-enhanced="true"] .tvk-history-milestone > div { display: none; }
[data-tvk-timeline][data-tvk-enhanced="true"] .tvk-history-milestone.is-active > div { display: block; }
.tvk-history-milestone > div p { max-width: 720px; margin-top: 0; color: var(--tvk-muted); line-height: 1.75; }
.tvk-history-milestone > div a { display: inline-flex; gap: 8px; align-items: center; font-size: .82rem; font-weight: var(--tvk-weight-semibold); }
.tvk-curiosity-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.tvk-curiosity-grid article { padding: clamp(24px,3vw,38px); border: 1px solid var(--tvk-line); border-radius: var(--tvk-radius-lg); background: rgba(255,255,255,.48); }
.tvk-curiosity-grid article > span { color: var(--tvk-water); font-size: .75rem; font-weight: var(--tvk-weight-bold); letter-spacing: .1em; text-transform: uppercase; }
.tvk-curiosity-grid h3 { margin: 12px 0; }
.tvk-curiosity-grid p { margin: 0; color: var(--tvk-muted); line-height: 1.7; }
.tvk-regional-comparison { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.tvk-regional-comparison article { padding: clamp(28px,4vw,52px); border: 1px solid var(--tvk-line); border-radius: var(--tvk-radius-lg); background: rgba(255,255,255,.55); }
.tvk-regional-comparison article > span { color: var(--tvk-brick); font-size: .76rem; font-weight: var(--tvk-weight-bold); letter-spacing: .09em; text-transform: uppercase; }
.tvk-regional-comparison h3 { margin: 14px 0; font-size: clamp(1.55rem,2.7vw,2.35rem); }
.tvk-regional-comparison p { color: var(--tvk-muted); }
.tvk-regional-comparison a { display: inline-flex; gap: 8px; align-items: center; margin-top: 14px; font-weight: var(--tvk-weight-semibold); }
.tvk-group-layout { display: grid; grid-template-columns: .72fr .72fr 1.3fr; gap: clamp(24px,5vw,70px); align-items: start; }
.tvk-group-tabs { display: grid; border-top: 1px solid var(--tvk-line); }
.tvk-group-tabs button { display: grid; grid-template-columns: 38px 1fr auto; gap: 12px; align-items: center; min-height: 58px; padding: 12px 0; border: 0; border-bottom: 1px solid var(--tvk-line); background: transparent; text-align: left; cursor: pointer; }
.tvk-group-tabs button > span { color: var(--tvk-muted); font-size: .72rem; }
.tvk-group-tabs button small { color: var(--tvk-brick); font-size: .72rem; font-weight: var(--tvk-weight-semibold); }
.tvk-group-tabs button[aria-selected="true"] { color: var(--tvk-water); }
.tvk-group-panels article { min-height: 360px; padding: clamp(30px,4vw,52px); border-radius: var(--tvk-radius-lg); background: var(--tvk-ink); color: #fff; }
.tvk-group-panels article h3 { margin: 12px 0; font-size: clamp(2rem,4vw,3.5rem); }
.tvk-group-panels article > p { color: rgba(255,255,255,.68); font-size: 1.05rem; line-height: 1.72; }
.tvk-group-panels dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin: 28px 0; }
.tvk-group-panels dl div { padding-top: 14px; border-top: 1px solid var(--tvk-line-dark); }
.tvk-group-panels dt { color: rgba(255,255,255,.48); font-size: .72rem; text-transform: uppercase; }
.tvk-group-panels dd { margin: 6px 0 0; }
.tvk-home-story { padding-block: clamp(58px,7vw,86px); background: linear-gradient(135deg,var(--tvk-ink),#102b33); color: #fff; }
.tvk-home-story__grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(360px,.95fr); gap: clamp(42px,7vw,92px); align-items: center; }
.tvk-home-story__copy h2 { max-width:760px; margin:10px 0 16px; }
.tvk-home-story__copy > p { max-width: 720px; color: rgba(255,255,255,.68); font-size: .98rem; line-height: 1.7; }
.tvk-home-story .tvk-natural-links { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:24px; }
.tvk-home-story .tvk-natural-links a { color: var(--tvk-water-light); font-weight:var(--tvk-weight-semibold); }
.tvk-story-path { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.tvk-story-path span { display:grid; min-height:92px; align-content:center; gap:8px; padding:14px; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(255,255,255,.035); color:#fff; font-size:.82rem; font-weight:var(--tvk-weight-semibold); }
.tvk-story-path b { color:var(--tvk-amber); font-size:.68rem; letter-spacing:.08em; }

.tvk-group-layout:not([data-tvk-enhanced="true"]) .tvk-group-panels { display: grid; gap: 16px; }
.tvk-group-footer { display: grid; grid-template-columns: .9fr 1.35fr 1fr; gap: clamp(30px,5vw,70px); padding: 54px 0; border-top: 1px solid var(--tvk-line-dark); border-bottom: 1px solid var(--tvk-line-dark); }
.tvk-group-footer__intro h3 { margin: 10px 0 18px; font-size: 1.55rem; }
.tvk-group-footer__intro > a, .tvk-group-footer__agency > a { display: inline-flex; gap: 8px; align-items: center; color: var(--tvk-water-light); font-weight: var(--tvk-weight-semibold); }
.tvk-group-footer__columns { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.tvk-group-footer__columns > div { display: flex; flex-direction: column; gap: 10px; }
.tvk-group-footer__columns strong { color: rgba(255,255,255,.46); font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; }
.tvk-group-footer__columns a, .tvk-group-footer__columns span { color: rgba(255,255,255,.74); font-size: .88rem; }
.tvk-group-footer__columns small { color: var(--tvk-amber); }
.tvk-group-footer__agency { padding-left: 30px; border-left: 1px solid var(--tvk-line-dark); }
.tvk-group-footer__agency > span { color: rgba(255,255,255,.48); font-size: .72rem; text-transform: uppercase; }
.tvk-group-footer__agency > strong { display: block; margin: 9px 0; font-size: 1.35rem; }
.tvk-group-footer__agency p { color: rgba(255,255,255,.62); font-size: .9rem; }
.tvk-footer-grid--expanded { grid-template-columns: repeat(4,minmax(0,1fr)); }

@media (max-width: 1120px) {
  .tvk-story-flow { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .tvk-feature-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tvk-group-layout { grid-template-columns: .8fr 1.2fr; }
  .tvk-group-intro { grid-column: 1 / -1; }
  .tvk-home-story__grid, .tvk-group-footer { grid-template-columns: 1fr; }
  .tvk-group-footer__agency { padding: 28px 0 0; border-top: 1px solid var(--tvk-line-dark); border-left: 0; }
}
@media (max-width: 960px) {
  .tvk-process-layout, .tvk-faq-layout { grid-template-columns: 1fr; }
  .tvk-process-intro, .tvk-faq-layout > div:first-child { position: static; }
  .tvk-history-milestone { grid-template-columns: 1fr; }
  .tvk-history-milestone > div { padding-left: 0; border-left: 0; }
  .tvk-footer-grid--expanded { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .tvk-story-flow, .tvk-feature-list, .tvk-curiosity-grid, .tvk-regional-comparison, .tvk-group-layout, .tvk-group-footer__columns, .tvk-footer-grid--expanded { grid-template-columns: 1fr; }
  .tvk-story-flow span:not(:last-child)::after { display: none; }
  .tvk-process-steps summary { grid-template-columns: 38px 1fr 20px; padding-inline: 16px; }
  .tvk-process-steps details p { padding: 0 16px 18px; }
  .tvk-history-milestone > button { grid-template-columns: 88px 1fr; }
  .tvk-group-panels article { min-height: 0; }
  .tvk-home-story__grid { grid-template-columns: 1fr; }
}
.tvk-video-context{margin-top:56px;padding:clamp(28px,4vw,48px);border:1px solid var(--tvk-line);border-radius:var(--tvk-radius-lg);background:linear-gradient(135deg,#ffffff,#f1f6fd)}.tvk-video-context h2{max-width:760px;margin:9px 0 14px}.tvk-video-context p{max-width:760px;color:var(--tvk-muted);line-height:1.72}.tvk-video-context__links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:20px}.tvk-video-context__links a{display:inline-flex;gap:7px;align-items:center;font-size:.8rem;font-weight:var(--tvk-weight-semibold)}

/* Homepage commercial, regional and swipe components */
.tvk-section--premium { padding-top: 52px; padding-bottom: 44px; background: linear-gradient(180deg,#ffffff 0%,#f5f8fd 100%); border-bottom: 1px solid var(--tvk-line); }
.tvk-premium-editorial { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); gap:clamp(28px,4vw,56px); align-items:stretch; }
.tvk-premium-card--main { padding:clamp(26px,3.2vw,40px); border:1px solid rgba(255,255,255,.08); border-radius:20px; background:linear-gradient(135deg,var(--tvk-ink) 0%,#173e72 100%); color:#fff; }
.tvk-premium-card--main p, .tvk-premium-card--main .tvk-kicker, .tvk-premium-card--main .tvk-text-link { color:rgba(255,255,255,.86); }
.tvk-premium-card--main h3 { max-width:760px; margin:9px 0 10px; font-size:clamp(1.35rem,2.2vw,1.9rem); line-height:1.14; }
.tvk-premium-card--main p { max-width:720px; margin:0; line-height:1.62; }
.tvk-premium-notes { display:grid; align-content:center; border-top:1px solid var(--tvk-line); border-bottom:1px solid var(--tvk-line); }
.tvk-premium-note { padding:22px 0; }
.tvk-premium-note + .tvk-premium-note { border-top:1px solid var(--tvk-line); }
.tvk-premium-note > span { display:block; margin-bottom:7px; color:var(--tvk-water); font-size:.72rem; font-weight:var(--tvk-weight-bold); letter-spacing:.08em; text-transform:uppercase; }
.tvk-premium-note strong { display:block; font-size:1.03rem; }
.tvk-premium-note p { margin:7px 0 0; color:var(--tvk-muted); font-size:.88rem; line-height:1.55; }
.tvk-section--locations { background: var(--tvk-paper-2); }
.tvk-location-cards { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.tvk-location-card { display: grid; gap: 10px; padding: 21px 18px; border: 1px solid var(--tvk-line); border-radius: 18px; background: #fff; color: inherit; text-decoration: none; box-shadow: var(--tvk-shadow-soft); transition: transform var(--tvk-transition), border-color var(--tvk-transition), box-shadow var(--tvk-transition); }
.tvk-location-card:hover, .tvk-location-card:focus-visible { transform: translateY(-2px); border-color: rgba(45,104,183,.34); box-shadow: var(--tvk-shadow); }
.tvk-location-card span { display: inline-grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: #eef4ff; color: var(--tvk-water); }
.tvk-location-card strong { font-size: 1.02rem; }
.tvk-location-card small { color: var(--tvk-muted); }
.tvk-location-card--all { background: linear-gradient(180deg,#f7faff 0%,#edf3fb 100%); }

/* Mobile experience: home, catalog, region and watch pages */
.tvk-mobile-catalog-tools, .tvk-mobile-region-rail, .tvk-mobile-read-more { display: none; }

@media (max-width: 1023px) {
  .tvk-home-hero { padding: 28px 0 54px; }
  .tvk-home-hero__grid { display: flex; flex-direction: column; gap: 24px; }
  .tvk-home-hero__media { order: -1; width: 100%; max-width: none; }
  .tvk-hero-frame { aspect-ratio: 16/9; border-radius: 20px; box-shadow: 0 24px 70px rgba(0,0,0,.25); }
  .tvk-hero-frame .tvk-play-button { left: 18px; bottom: 18px; width: 58px; height: 58px; }
  .tvk-hero-frame__label { top: 14px; left: 14px; font-size: .67rem; }
  .tvk-home-hero__copy h1 { margin: 10px 0 14px; font-size: clamp(1.95rem,7.2vw,2.45rem); line-height: 1.03; }
  .tvk-home-hero__copy > p { font-size: .96rem; line-height: 1.65; }
  .tvk-home-hero__copy .tvk-actions { gap: 12px; }
  .tvk-home-hero__copy .tvk-actions > * { flex: 1 1 auto; }
  .tvk-home-hero__statement { grid-template-columns: 1fr; gap: 8px; margin-top: 30px; padding-top: 20px; }
  .tvk-home-hero__statement p { font-size: .8rem; }
  .tvk-watch-header { padding: 36px 0 26px; }
  .tvk-watch-header h1 { font-size: clamp(1.85rem,7vw,2.35rem); line-height: 1.04; }
  .tvk-watch-header p { font-size: .94rem; }
  .tvk-watch-layout { padding-top: 24px; padding-bottom: 72px; }

  .tvk-promoted-strip { padding: 30px 0 42px; }
  .tvk-promoted-strip__head { align-items: flex-start; flex-direction: column; gap: 7px; }
  .tvk-promoted-strip__head p { margin: 0; text-align: left; }
  [data-tvk-mobile-rail], .tvk-editorial-grid, .tvk-ketrzyn-grid, .tvk-promoted-grid, .tvk-program-grid, .tvk-events-grid { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(270px,84vw); grid-template-columns: none; gap: 14px; overflow-x: auto; margin-right: -14px; margin-left: -14px; padding: 0 14px 12px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  [data-tvk-mobile-rail]::-webkit-scrollbar, .tvk-editorial-grid::-webkit-scrollbar, .tvk-ketrzyn-grid::-webkit-scrollbar, .tvk-promoted-grid::-webkit-scrollbar, .tvk-program-grid::-webkit-scrollbar, .tvk-events-grid::-webkit-scrollbar { display: none; }
  [data-tvk-mobile-rail] > *, .tvk-editorial-grid > *, .tvk-ketrzyn-grid > *, .tvk-promoted-grid > *, .tvk-program-grid > *, .tvk-events-grid > * { min-width: 0; scroll-snap-align: start; }
  .tvk-editorial-grid > .tvk-card, .tvk-ketrzyn-grid > .tvk-card { padding: 0; border-top: 0; }
  .tvk-editorial-grid > .tvk-card--feature, .tvk-ketrzyn-grid > .tvk-card--feature { margin-bottom: 0; }
  .tvk-premium-editorial { grid-template-columns: 1fr; }
  .tvk-location-cards { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(248px,80vw); grid-template-columns: none; gap: 12px; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .tvk-location-cards::-webkit-scrollbar { display: none; }
  .tvk-location-card { scroll-snap-align: start; }

  .tvk-mobile-region-rail { display: grid; grid-auto-columns: minmax(190px,62vw); grid-auto-flow: column; gap: 10px; overflow-x: auto; margin: 30px -14px 0; padding: 0 14px 10px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .tvk-mobile-region-rail::-webkit-scrollbar { display: none; }
  .tvk-mobile-region-rail a { display: grid; min-height: 122px; grid-template-columns: 40px 1fr; grid-template-rows: auto auto; gap: 5px 11px; align-content: center; padding: 16px; border: 1px solid rgba(255,255,255,.11); border-radius: 18px; background: rgba(255,255,255,.045); color: #fff; scroll-snap-align: start; }
  .tvk-section--map .tvk-mobile-region-rail a { border-color: var(--tvk-line); background: var(--tvk-paper-2); color: var(--tvk-text); }
  .tvk-mobile-region-rail a > span { grid-row: 1 / span 2; display: grid; width: 40px; height: 40px; place-items: center; border-radius: 13px; background: var(--tvk-ink); color: var(--tvk-water-light); }
  .tvk-mobile-region-rail strong { align-self: end; }
  .tvk-mobile-region-rail small { color: var(--tvk-muted); font-size: .7rem; }
  .tvk-mobile-region-rail__all { border-color: rgba(111,163,255,.38); }

  .tvk-bridge-head, .tvk-contribute-grid, .tvk-owner-story__grid, .tvk-404__grid { grid-template-columns: 1fr; gap: 34px; }
  .tvk-bridge-grid { grid-template-columns: 1fr; }
  .tvk-history-strip { grid-template-columns: 1fr; }
  .tvk-format-links { grid-template-columns: 1fr; }
  .tvk-format-links a { min-height: 146px; padding: 20px; }

  .tvk-catalog-tools--desktop { display: none; }
  .tvk-mobile-catalog-tools { position: sticky; z-index: 24; top: calc(var(--tvk-mobile-header) + var(--tvk-mobile-safe-top)); display: block; padding: 10px 14px; border-bottom: 1px solid var(--tvk-line); background: rgba(250,248,243,.95); backdrop-filter: blur(18px); }
  .admin-bar .tvk-mobile-catalog-tools { top: calc(var(--tvk-mobile-header) + var(--tvk-mobile-safe-top) + 32px); }
  .tvk-mobile-catalog-tools__bar { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 8px; align-items: center; }
  .tvk-mobile-catalog-tools__bar > span { display: grid; min-width: 0; }
  .tvk-mobile-catalog-tools__bar strong { font-size: 1rem; }
  .tvk-mobile-catalog-tools__bar small { color: var(--tvk-muted); font-size: .7rem; }
  .tvk-mobile-catalog-tools__bar button { min-height: 44px; padding: 0 13px; border: 1px solid var(--tvk-line); border-radius: 13px; background: #fff; color: var(--tvk-text); font-size: .73rem; font-weight: var(--tvk-weight-semibold); cursor: pointer; }
  .tvk-mobile-catalog-tools__bar b { display: inline-grid; min-width: 20px; height: 20px; place-items: center; margin-left: 4px; border-radius: 999px; background: var(--tvk-amber); color: var(--tvk-ink); font-size: .65rem; }
  .tvk-active-filter-chips { display: flex; gap: 7px; overflow-x: auto; margin-top: 9px; padding-bottom: 2px; scrollbar-width: none; }
  .tvk-active-filter-chips::-webkit-scrollbar { display: none; }
  .tvk-active-filter-chips a { display: inline-flex; min-height: 44px; flex: 0 0 auto; align-items: center; gap: 6px; padding: 0 10px; border: 1px solid var(--tvk-line); border-radius: 999px; background: var(--tvk-paper); color: var(--tvk-text); font-size: .72rem; font-weight: var(--tvk-weight-semibold); }
  .tvk-active-filter-chips__clear { color: var(--tvk-brick); }

  .tvk-mobile-filter-form { display: flex; min-height: 0; flex: 1; flex-direction: column; overflow: hidden; }
  .tvk-mobile-filter-form .tvk-mobile-sheet__scroll { display: grid; gap: 15px; }
  .tvk-mobile-filter-form label > span { display: block; margin-bottom: 6px; color: var(--tvk-muted); font-size: .72rem; font-weight: var(--tvk-weight-bold); letter-spacing: .06em; text-transform: uppercase; }
  .tvk-mobile-filter-form input, .tvk-mobile-filter-form select { width: 100%; min-height: 50px; padding: 0 13px; border: 1px solid var(--tvk-line); border-radius: 14px; background: #fff; }
  .tvk-mobile-filter-form .tvk-filter-search { min-height: 50px; border-radius: 14px; }
  .tvk-mobile-filter-form__footer { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 10px; align-items: center; padding: 12px 18px calc(14px + var(--tvk-mobile-safe-bottom)); border-top: 1px solid var(--tvk-line); background: var(--tvk-paper-2); }
  .tvk-mobile-filter-form__footer > a { font-size: .72rem; font-weight: var(--tvk-weight-semibold); }
  .tvk-mobile-filter-form__footer .tvk-button { width: 100%; }

  .tvk-results-head { margin-bottom: 22px; }
  .tvk-results-head > p { display: none; }
  .tvk-view-switch { width: 100%; justify-content: flex-end; }
  .tvk-view-switch button, .tvk-view-switch a { min-height: 40px; }
  .tvk-catalog-grid { grid-template-columns: 1fr; gap: 24px; }
  .tvk-catalog-grid--grid > .tvk-card:nth-child(n+2):not(.tvk-card--feature):not(.tvk-card--promoted) { display: grid; grid-template-columns: 126px minmax(0,1fr); gap: 13px; align-items: center; padding: 13px 0; border-top: 1px solid var(--tvk-line); }
  .tvk-catalog-grid--grid > .tvk-card:nth-child(n+2):not(.tvk-card--feature):not(.tvk-card--promoted) .tvk-card__media { aspect-ratio: 16/9; border-radius: 12px; }
  .tvk-catalog-grid--grid > .tvk-card:nth-child(n+2):not(.tvk-card--feature):not(.tvk-card--promoted) .tvk-card__body { padding: 0; }
  .tvk-catalog-grid--grid > .tvk-card:nth-child(n+2):not(.tvk-card--feature):not(.tvk-card--promoted) .tvk-card__body > p, .tvk-catalog-grid--grid > .tvk-card:nth-child(n+2):not(.tvk-card--feature):not(.tvk-card--promoted) .tvk-card__meta { display: none; }
  .tvk-catalog-grid--grid > .tvk-card:nth-child(n+2):not(.tvk-card--feature):not(.tvk-card--promoted) .tvk-card__body h3 { font-size: .93rem; -webkit-line-clamp: 2; }
  .tvk-catalog-grid--list { grid-template-columns: 1fr; gap: 0; }
  .tvk-catalog-promoted { margin-bottom: 44px; padding-bottom: 40px; }
  .tvk-pagination { margin-top: 38px; }
  .tvk-load-more { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 9px; width: 100%; border: 1px solid var(--tvk-line); border-radius: 999px; background: var(--tvk-ink); color: #fff; font-weight: var(--tvk-weight-bold); }
  .tvk-pagination__classic { font-size: .74rem; }
  .tvk-catalog-story { position: relative; margin-top: 58px; padding: 26px 22px; border-radius: 20px; }
  .tvk-catalog-story [data-tvk-collapsible-content] { position: relative; max-height: 128px; overflow: hidden; }
  .tvk-catalog-story:not(.is-expanded) [data-tvk-collapsible-content]::after { content: ""; position: absolute; right: 0; bottom: 0; left: 0; height: 66px; background: linear-gradient(transparent,var(--tvk-paper-2)); }
  .tvk-catalog-story.is-expanded [data-tvk-collapsible-content] { max-height: none; }
  .tvk-mobile-read-more { display: inline-flex; min-height: 44px; align-items: center; margin-top: 13px; padding: 0; border: 0; background: transparent; color: var(--tvk-water); font-weight: var(--tvk-weight-semibold); cursor: pointer; }

  .tvk-watch-layout, .tvk-story-layout, .tvk-event-layout { grid-template-columns: 1fr; gap: 36px; }
  .tvk-watch-main > .tvk-player, .tvk-watch-main > .tvk-player-fallback, .tvk-video-player, .tvk-live-player { margin-inline: -14px; border-radius: 0; }
  .tvk-watch-toolbar { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; gap: 8px; }
  .tvk-watch-toolbar .tvk-share { grid-column: 1 / -1; justify-content: flex-start; overflow-x: auto; padding-bottom: 2px; scrollbar-width: none; }
  .tvk-watch-toolbar .tvk-share::-webkit-scrollbar { display: none; }
  .tvk-watch-later, .tvk-moment-copy { justify-content: center; min-width: 0; padding-inline: 10px; font-size: .76rem; }
  .tvk-watch-toolbar .tvk-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tvk-watch-aside { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tvk-related-grid, .tvk-bridge-grid { display: grid; grid-auto-columns: minmax(260px,82vw); grid-auto-flow: column; grid-template-columns: none; gap: 14px; overflow-x: auto; margin-right: -14px; margin-left: -14px; padding: 0 14px 10px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .tvk-related-grid::-webkit-scrollbar, .tvk-bridge-grid::-webkit-scrollbar { display: none; }

  .tvk-home-story__grid, .tvk-group-footer, .tvk-group-layout { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .tvk-watch-aside { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(240px,78vw); grid-template-columns: none; gap: 12px; overflow-x: auto; margin-inline: -14px; padding: 0 14px 8px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .tvk-watch-aside::-webkit-scrollbar { display: none; }
  .tvk-watch-aside > * { scroll-snap-align: start; }
}

@media (max-width: 782px) {
  .admin-bar .tvk-mobile-catalog-tools { top: calc(var(--tvk-mobile-header) + var(--tvk-mobile-safe-top) + 46px); }
}

@media (max-width: 430px) {
  .tvk-home-hero { padding-top: 20px; }
  .tvk-home-hero__copy h1 { font-size: clamp(1.78rem,7.6vw,2.18rem); }
  .tvk-watch-header h1 { font-size: clamp(1.72rem,7.4vw,2.1rem); }
  [data-tvk-mobile-rail], .tvk-editorial-grid, .tvk-ketrzyn-grid, .tvk-promoted-grid, .tvk-program-grid, .tvk-events-grid { grid-auto-columns: minmax(246px,86vw); }
  .tvk-editorial-grid > .tvk-card:not(.tvk-card--feature), .tvk-ketrzyn-grid > .tvk-card:not(.tvk-card--feature), .tvk-catalog-grid--grid > .tvk-card:nth-child(n+2):not(.tvk-card--feature):not(.tvk-card--promoted) { grid-template-columns: 112px minmax(0,1fr); gap: 11px; }
  .tvk-mobile-filter-form__footer { grid-template-columns: 1fr; }
  .tvk-mobile-filter-form__footer > a { text-align: center; }
}

/* Camera directory and single camera — 2.9.0 */
.tvk-live-camera-bridge__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: clamp(26px, 5vw, 72px); padding: clamp(32px, 5vw, 64px) 0; }
.tvk-live-camera-bridge__inner h2 { max-width: 780px; margin: 8px 0 12px; }
.tvk-live-camera-bridge__inner p { max-width: 760px; color: rgba(255,255,255,.68); }
.tvk-camera-directory { position: relative; }
.tvk-camera-stage { display: grid; gap: 24px; margin-bottom: 38px; scroll-margin-top: calc(var(--tvk-header, 92px) + 22px); transition: opacity 180ms ease; }
.tvk-camera-stage__head { display: flex; align-items: end; justify-content: space-between; gap: 28px; }
.tvk-camera-stage__head h2 { margin: 7px 0 8px; }
.tvk-camera-stage__head p { max-width: 760px; margin: 0; color: var(--tvk-muted); }
.tvk-camera-filters { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 22px; }
.tvk-camera-filters button { min-height: 42px; padding: 9px 14px; border: 1px solid var(--tvk-line); border-radius: 999px; background: var(--tvk-paper); color: var(--tvk-ink); font: inherit; font-size: .84rem; font-weight: 650; cursor: pointer; transition: border-color var(--tvk-duration) var(--tvk-ease), background var(--tvk-duration) var(--tvk-ease), color var(--tvk-duration) var(--tvk-ease), transform var(--tvk-duration) var(--tvk-ease); }
.tvk-camera-filters button:hover, .tvk-camera-filters button:focus-visible { border-color: rgba(32, 126, 118, .52); transform: translateY(-1px); }
.tvk-camera-filters button.is-active { border-color: var(--tvk-brand); background: var(--tvk-brand); color: #fff; }
.tvk-camera-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.tvk-camera-card { min-width: 0; overflow: clip; border: 1px solid var(--tvk-line); border-radius: var(--tvk-radius-lg); background: var(--tvk-paper); box-shadow: var(--tvk-shadow-soft); transform: translateY(10px); opacity: .84; transition: transform var(--tvk-duration) var(--tvk-ease), box-shadow var(--tvk-duration) var(--tvk-ease), opacity var(--tvk-duration) var(--tvk-ease); }
.tvk-camera-card.is-in-view, .tvk-camera-card:focus-within, .tvk-camera-card:hover { transform: translateY(0); opacity: 1; box-shadow: var(--tvk-shadow); }
.tvk-camera-card.is-active { border-color: rgba(32, 126, 118, .52); box-shadow: 0 0 0 3px rgba(32, 126, 118, .12), var(--tvk-shadow); opacity: 1; transform: translateY(0); }
.tvk-camera-directory.is-loading-camera .tvk-camera-stage { opacity: .72; }
.tvk-camera-card__media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--tvk-ink); }
.tvk-camera-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms var(--tvk-ease); }
.tvk-camera-card:hover .tvk-camera-card__media img, .tvk-camera-card:focus-within .tvk-camera-card__media img { transform: scale(1.025); }
.tvk-camera-card__body { padding: 20px; }
.tvk-camera-card__body > span { display: block; margin-bottom: 7px; color: var(--tvk-muted); font-size: .82rem; font-weight: 650; }
.tvk-camera-card__body h3 { margin: 0 0 8px; font-size: clamp(1.15rem, 2vw, 1.45rem); }
.tvk-camera-card__body h3 a { color: inherit; text-decoration: none; }
.tvk-camera-card__body p { color: var(--tvk-muted); }
.tvk-camera-status { display: inline-flex; align-items: center; gap: 8px; width: max-content; padding: 7px 10px; border-radius: 999px; background: rgba(11, 31, 37, .82); color: #fff; font-size: .73rem; font-weight: 700; letter-spacing: .02em; }
.tvk-camera-card__media .tvk-camera-status { position: absolute; top: 12px; left: 12px; backdrop-filter: blur(12px); }
.tvk-camera-status i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px rgba(255,255,255,.13); }
.tvk-camera-status--online { background: #11654d; }
.tvk-camera-status--offline, .tvk-camera-status--disabled { background: #5b6265; }
.tvk-camera-status--limited { background: #8a5e17; }
.tvk-camera-status--scheduled { background: #1d5d75; }
.tvk-camera-player, .tvk-camera-player--youtube { position: relative; overflow: hidden; width: 100%; aspect-ratio: 16 / 9; border-radius: var(--tvk-radius-xl); background: #06161b; box-shadow: var(--tvk-shadow); }
.tvk-camera-player iframe, .tvk-camera-player video { display: block; width: 100%; height: 100%; border: 0; object-fit: cover; }
.tvk-camera-player__hint, .tvk-camera-player__runtime { position: absolute; left: 16px; right: 16px; bottom: 12px; z-index: 2; margin: 0; padding: 9px 12px; border-radius: 12px; background: rgba(6, 22, 27, .82); color: #fff; font-size: .8rem; backdrop-filter: blur(12px); }
.tvk-camera-player__runtime:empty { display: none; }
.tvk-camera-offline, .tvk-camera-external { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); align-items: center; gap: 36px; overflow: hidden; border-radius: var(--tvk-radius-xl); background: var(--tvk-ink); color: #fff; }
.tvk-camera-offline img, .tvk-camera-external img { width: 100%; height: 100%; min-height: 340px; object-fit: cover; opacity: .58; }
.tvk-camera-offline > div, .tvk-camera-external > div { padding: 34px 34px 34px 0; }
.tvk-camera-single__hero { padding: clamp(28px, 5vw, 72px) 0 clamp(42px, 6vw, 82px); background: var(--tvk-ink); color: #fff; }
.tvk-camera-single__heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .38fr); gap: 42px; align-items: end; margin: 26px 0 30px; }
.tvk-camera-single__heading h1 { max-width: 900px; margin: 12px 0 12px; }
.tvk-camera-single__heading p { max-width: 760px; color: rgba(255,255,255,.72); }
.tvk-camera-facts { display: grid; gap: 10px; margin: 0; }
.tvk-camera-facts div { padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,.14); }
.tvk-camera-facts dt { color: rgba(255,255,255,.54); font-size: .76rem; text-transform: uppercase; letter-spacing: .08em; }
.tvk-camera-facts dd { margin: 4px 0 0; font-weight: 650; }
.tvk-resume-video { position: absolute; left: 50%; bottom: 22px; z-index: 4; transform: translateX(-50%); min-height: 44px; padding: 0 18px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; background: rgba(6, 22, 27, .86); color: #fff; font: inherit; font-weight: 700; cursor: pointer; backdrop-filter: blur(12px); }

@media (max-width: 1023px) {
  .tvk-camera-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tvk-camera-stage__head { align-items: start; flex-direction: column; }
}
@media (max-width: 680px) {
  .tvk-live-camera-bridge__inner { grid-template-columns: 1fr; align-items: start; }
  .tvk-camera-grid { display: flex; gap: 14px; margin-inline: calc(var(--tvk-container-pad) * -1); padding-inline: var(--tvk-container-pad); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .tvk-camera-grid::-webkit-scrollbar { display: none; }
  .tvk-camera-card { flex: 0 0 min(86vw, 360px); scroll-snap-align: start; transform: none; opacity: 1; }
  .tvk-camera-offline, .tvk-camera-external, .tvk-camera-single__heading { grid-template-columns: 1fr; }
  .tvk-camera-offline img, .tvk-camera-external img { min-height: 220px; }
  .tvk-camera-offline > div, .tvk-camera-external > div { padding: 0 22px 26px; }
  .tvk-camera-player, .tvk-camera-player--youtube { border-radius: 18px; }
}

/* Media Hub OS 3.0 — moments, podcasts and people */
.tvk-moment-copy{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:18px 0;padding:14px 16px;border:1px solid var(--tvk-line);border-radius:var(--tvk-radius);background:rgba(255,255,255,.58)}
.tvk-moment-copy p{margin:0;color:var(--tvk-muted);font-size:.86rem}
.tvk-copy-moment{min-height:42px}
.tvk-audio-companion{margin:24px 0;padding:20px;border:1px solid var(--tvk-line);border-radius:var(--tvk-radius);background:var(--tvk-paper-2)}
.tvk-audio-companion audio{width:100%;margin-top:12px}
.tvk-audio-title{display:flex;align-items:center;justify-content:space-between;gap:14px}
.tvk-audio-title strong{font-size:1rem}
.tvk-transcript-workspace{display:grid;gap:18px;margin-top:20px;padding:clamp(18px,3vw,28px);border:1px solid var(--tvk-line);border-radius:var(--tvk-radius-lg);background:var(--tvk-paper-2);box-shadow:var(--tvk-shadow-soft)}
.tvk-transcript-search{display:grid;gap:7px}
.tvk-transcript-search span{font-size:.72rem;font-weight:var(--tvk-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--tvk-muted)}
.tvk-transcript-search input{width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--tvk-line);border-radius:12px;background:#fff;color:var(--tvk-text);font:inherit}
.tvk-transcript-search input:focus-visible{outline:3px solid rgba(47,124,130,.22);outline-offset:2px;border-color:var(--tvk-water)}
.tvk-transcript-status{margin:0;color:var(--tvk-muted);font-size:.82rem}
.tvk-transcript-list{display:grid;gap:8px;max-height:620px;overflow:auto;padding-right:5px;scrollbar-gutter:stable}
.tvk-transcript-segment{display:grid;grid-template-columns:74px minmax(0,1fr);gap:14px;width:100%;padding:13px 14px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--tvk-text);text-align:left;font:inherit;cursor:pointer;transition:background var(--tvk-transition),border-color var(--tvk-transition),transform var(--tvk-transition)}
.tvk-transcript-segment:hover,.tvk-transcript-segment:focus-visible{border-color:var(--tvk-line);background:#fff;transform:translateX(2px)}
.tvk-transcript-segment time{color:var(--tvk-water);font-size:.78rem;font-weight:var(--tvk-weight-bold);font-variant-numeric:tabular-nums}
.tvk-transcript-text{line-height:1.55}
.tvk-transcript-segment[hidden],.tvk-transcript-empty[hidden]{display:none}
.tvk-transcript-empty{margin:0;padding:18px;border:1px dashed var(--tvk-line);border-radius:12px;color:var(--tvk-muted);text-align:center}
.tvk-season-filter{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 28px}
.tvk-season-filter button{min-height:42px;padding:9px 15px;border:1px solid var(--tvk-line);border-radius:999px;background:transparent;color:var(--tvk-text);font:inherit;font-size:.82rem;font-weight:var(--tvk-weight-semibold);cursor:pointer}
.tvk-season-filter button:hover,.tvk-season-filter button:focus-visible,.tvk-season-filter button.is-active{border-color:var(--tvk-water);background:var(--tvk-water);color:#fff}
.tvk-podcast-season{display:grid;gap:18px;margin-top:34px;scroll-margin-top:calc(var(--tvk-header) + 24px)}
.tvk-podcast-season[hidden]{display:none}
.tvk-podcast-season>h3{margin:0;padding-bottom:12px;border-bottom:1px solid var(--tvk-line);font-size:clamp(1.35rem,2.6vw,2rem)}
.tvk-person-profile{margin-top:calc(var(--tvk-section) * -.36);padding-bottom:clamp(34px,5vw,64px)}
.tvk-person-profile__inner{display:grid;grid-template-columns:clamp(120px,16vw,210px) minmax(0,1fr);align-items:center;gap:clamp(22px,4vw,48px);padding:clamp(20px,3vw,34px);border:1px solid var(--tvk-line);border-radius:var(--tvk-radius-lg);background:var(--tvk-paper-2);box-shadow:var(--tvk-shadow)}
.tvk-person-profile__photo{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:50%;background:var(--tvk-ink)}
.tvk-person-profile__role{margin:8px 0 14px;font-size:clamp(1.05rem,2vw,1.4rem);font-weight:var(--tvk-weight-semibold)}
@media(max-width:720px){.tvk-moment-copy{align-items:stretch;flex-direction:column}.tvk-copy-moment{width:100%}.tvk-transcript-segment{grid-template-columns:58px minmax(0,1fr);gap:10px;padding-inline:10px}.tvk-person-profile__inner{grid-template-columns:92px minmax(0,1fr);gap:18px}.tvk-person-profile{margin-top:-24px}}

@media (max-width: 1023px) {
  .tvk-history-strip--home .tvk-card--archive { grid-template-columns: 72px minmax(0,1fr); }
  .tvk-history-strip--home .tvk-card--archive .tvk-card__media-wrap { display: none; }
  .tvk-history-strip--home .tvk-card__body h3 { max-width: none; font-size: 1.32rem; }
}
@media (max-width: 767px) {
  .tvk-bridge-empty { grid-template-columns: 1fr; text-align: left; }
  .tvk-bridge-empty .tvk-button { justify-self: stretch; }
  .tvk-format-links { grid-template-columns: 1fr; gap: 12px; }
}

/* Regional atlas & location profiles 3.2.7 */
.tvk-section--map { background: linear-gradient(180deg,#f6f9fe 0%,#eef4fc 100%); }
.tvk-map-toolbar { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.48fr); gap:34px; align-items:end; margin-bottom:24px; }
.tvk-map-toolbar h2 { max-width:800px; margin:9px 0 10px; }
.tvk-map-toolbar p { max-width:760px; margin:0; color:var(--tvk-muted); }
.tvk-map-search { display:grid; min-height:52px; grid-template-columns:22px minmax(0,1fr); gap:10px; align-items:center; padding:0 16px; border:1px solid var(--tvk-line); border-radius:16px; background:#fff; box-shadow:var(--tvk-shadow-soft); }
.tvk-map-search input { width:100%; border:0; outline:0; background:transparent; color:var(--tvk-text); }
.tvk-map-filters { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
.tvk-map-filters button { min-height:40px; padding:0 14px; border:1px solid var(--tvk-line); border-radius:999px; background:#fff; color:var(--tvk-text); font:inherit; font-size:.8rem; font-weight:var(--tvk-weight-semibold); cursor:pointer; }
.tvk-map-filters button:hover,.tvk-map-filters button:focus-visible,.tvk-map-filters button.is-active { border-color:var(--tvk-ink); background:var(--tvk-ink); color:#fff; }
.tvk-region-explorer { display:grid; grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr); gap:24px; align-items:stretch; }
.tvk-region-explorer__index { display:flex; min-height:660px; flex-direction:column; overflow:hidden; border:1px solid var(--tvk-line); border-radius:24px; background:#fff; box-shadow:var(--tvk-shadow-soft); }
.tvk-region-explorer__stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--tvk-line); border-bottom:1px solid var(--tvk-line); }
.tvk-region-explorer__stats div { padding:17px 18px; background:#fff; }
.tvk-region-explorer__stats strong { display:block; font-size:1.35rem; }
.tvk-region-explorer__stats span { display:block; margin-top:4px; color:var(--tvk-muted); font-size:.75rem; line-height:1.4; }
.tvk-place-list--rich { flex:1; overflow:auto; padding:8px 18px; border:0; scrollbar-width:thin; }
.tvk-place-list--rich a { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; padding:13px 0; border-bottom:1px solid var(--tvk-line); }
.tvk-place-list--rich a[hidden] { display:none; }
.tvk-place-list--rich a.is-active { color:var(--tvk-water); }
.tvk-place-list--rich span { display:grid; gap:3px; min-width:0; }
.tvk-place-list--rich strong { font-size:.96rem; line-height:1.2; }
.tvk-place-list--rich small { display:-webkit-box; overflow:hidden; color:var(--tvk-muted); font-size:.74rem; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.tvk-place-list--rich b { flex:0 0 auto; color:var(--tvk-water); font-size:.8rem; }
.tvk-map-result-count { margin:0; padding:13px 18px; border-top:1px solid var(--tvk-line); color:var(--tvk-muted); font-size:.76rem; }
.tvk-county-map { min-width:0; }
.tvk-county-map__surface { position:relative; min-height:660px; overflow:hidden; border-radius:26px; background:linear-gradient(155deg,#0d335f 0%,#09294d 65%,#0b3158 100%); box-shadow:0 28px 70px rgba(5,20,41,.2); }
.tvk-county-map__grid { position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size:48px 48px; mask-image:linear-gradient(to bottom,rgba(0,0,0,.95),rgba(0,0,0,.6)); }
.tvk-county-map__surface::after { content:""; position:absolute; inset:8% 7%; border:1px solid rgba(255,255,255,.07); border-radius:28px; pointer-events:none; }
.tvk-county-map__compass { position:absolute; inset:18px 20px auto; z-index:1; display:grid; grid-template-columns:1fr 1fr; justify-content:space-between; pointer-events:none; color:rgba(255,255,255,.32); font-size:.62rem; font-weight:var(--tvk-weight-bold); letter-spacing:.1em; text-transform:uppercase; }
.tvk-county-map__compass span:nth-child(1),.tvk-county-map__compass span:nth-child(4) { grid-column:1/-1; text-align:center; }
.tvk-county-map__compass span:nth-child(2) { text-align:left; }
.tvk-county-map__compass span:nth-child(3) { text-align:right; }
.tvk-county-map__label { position:absolute; z-index:3; left:24px; bottom:24px; display:grid; gap:5px; max-width:320px; padding:15px 17px; border:1px solid rgba(255,255,255,.1); border-radius:17px; background:rgba(6,24,45,.72); backdrop-filter:blur(12px); color:#fff; }
.tvk-county-map__label span { color:rgba(255,255,255,.62); font-size:.78rem; line-height:1.5; }
.tvk-county-map__point { position:absolute; left:var(--x); top:var(--y); z-index:2; display:grid; min-width:16px; gap:2px; transform:translate(-50%,-50%); color:#fff; }
.tvk-county-map__point[hidden] { display:none; }
.tvk-county-map__point > span { width:12px; height:12px; border:2px solid #09294d; border-radius:50%; background:#a4c7ff; box-shadow:0 0 0 5px rgba(164,199,255,.10); transition:transform var(--tvk-transition),background var(--tvk-transition),box-shadow var(--tvk-transition); }
.tvk-county-map__point strong,.tvk-county-map__point small,.tvk-county-map__point em { position:absolute; left:20px; width:max-content; max-width:190px; opacity:0; pointer-events:none; transition:opacity var(--tvk-transition),transform var(--tvk-transition); }
.tvk-county-map__point strong { top:-10px; font-size:.82rem; line-height:1.15; }
.tvk-county-map__point small { top:10px; color:rgba(255,255,255,.56); font-size:.64rem; letter-spacing:.05em; text-transform:uppercase; }
.tvk-county-map__point em { top:31px; display:block; padding:8px 10px; border:1px solid rgba(255,255,255,.08); border-radius:10px; background:rgba(5,20,38,.9); color:rgba(255,255,255,.78); font-style:normal; font-size:.72rem; line-height:1.4; box-shadow:0 10px 24px rgba(0,0,0,.18); }
.tvk-county-map__point.is-featured strong,.tvk-county-map__point.is-featured small { opacity:1; }
.tvk-county-map__point:hover,.tvk-county-map__point:focus-visible,.tvk-county-map__point.is-active { z-index:10; }
.tvk-county-map__point:hover > span,.tvk-county-map__point:focus-visible > span,.tvk-county-map__point.is-active > span { transform:scale(1.22); background:#fff; box-shadow:0 0 0 8px rgba(164,199,255,.16); }
.tvk-county-map__point:hover strong,.tvk-county-map__point:hover small,.tvk-county-map__point:hover em,.tvk-county-map__point:focus-visible strong,.tvk-county-map__point:focus-visible small,.tvk-county-map__point:focus-visible em,.tvk-county-map__point.is-active strong,.tvk-county-map__point.is-active small,.tvk-county-map__point.is-active em { opacity:1; transform:translateX(2px); }
.tvk-map-note { margin:10px 4px 0; color:var(--tvk-muted); font-size:.72rem; line-height:1.55; }
.tvk-place-card { display:grid; overflow:hidden; min-width:0; border:1px solid var(--tvk-line); border-radius:20px; background:#fff; box-shadow:var(--tvk-shadow-soft); transition:transform var(--tvk-transition),box-shadow var(--tvk-transition),border-color var(--tvk-transition); }
.tvk-place-card:hover,.tvk-place-card:focus-visible { transform:translateY(-2px); border-color:rgba(45,104,183,.25); box-shadow:0 16px 36px rgba(10,31,57,.09); }
.tvk-place-card img,.tvk-place-card__placeholder { display:grid; width:100%; aspect-ratio:16/9; place-items:center; object-fit:cover; background:linear-gradient(135deg,#eef4fd,#dfeaf9); color:var(--tvk-water); }
.tvk-place-card__placeholder .tvk-icon { width:34px; height:34px; }
.tvk-place-card > div { display:grid; gap:7px; padding:17px 18px 19px; }
.tvk-place-card > div > span { color:var(--tvk-water); font-size:.7rem; font-weight:var(--tvk-weight-bold); letter-spacing:.07em; text-transform:uppercase; }
.tvk-place-card strong { font-size:1.18rem; line-height:1.16; }
.tvk-place-card p { margin:0; color:var(--tvk-muted); font-size:.84rem; line-height:1.55; }
.tvk-place-card small { color:var(--tvk-muted); font-size:.72rem; }
.tvk-related-places__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.tvk-location-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:start; }
.tvk-location-directory section { min-width:0; padding:20px; border:1px solid var(--tvk-line); border-radius:20px; background:#fff; }
.tvk-location-directory section[hidden],.tvk-location-directory a[hidden] { display:none; }
.tvk-location-directory__head { display:flex; justify-content:space-between; gap:14px; align-items:baseline; margin-bottom:10px; }
.tvk-location-directory__head h3 { margin:0; font-size:1.15rem; }
.tvk-location-directory__head > small { flex:0 0 auto; color:var(--tvk-muted); font-size:.7rem; }
.tvk-location-directory section > div { display:grid; gap:1px; }
.tvk-location-directory a { display:flex; justify-content:space-between; gap:12px; padding:9px 0; border-bottom:1px solid var(--tvk-line); font-size:.86rem; }
.tvk-location-directory a:last-child { border-bottom:0; }
.tvk-location-directory a small { color:var(--tvk-muted); }
.tvk-location-group-toggle { display:flex; width:100%; min-height:42px; align-items:center; justify-content:center; gap:8px; margin-top:12px; padding:0 12px; border:1px solid var(--tvk-line); border-radius:12px; background:var(--tvk-paper-2); color:var(--tvk-ink); font:inherit; font-size:.78rem; font-weight:var(--tvk-weight-bold); cursor:pointer; }
.tvk-location-group-toggle small { color:var(--tvk-water); }
.tvk-location-group-toggle b { margin-left:auto; color:var(--tvk-water); }
.tvk-location-group-toggle[hidden] { display:none; }

.tvk-location-page { background:var(--tvk-paper-2); }
.tvk-location-hero { padding:clamp(48px,6vw,82px) 0 34px; background:linear-gradient(180deg,#f6f9fe 0%,#eef4fc 100%); border-bottom:1px solid var(--tvk-line); }
.tvk-location-hero__grid { display:grid; grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr); gap:clamp(34px,6vw,78px); align-items:center; }
.tvk-location-breadcrumbs { display:flex; flex-wrap:wrap; gap:7px; align-items:center; margin-bottom:22px; color:var(--tvk-muted); font-size:.75rem; }
.tvk-location-breadcrumbs a:hover { color:var(--tvk-water); }
.tvk-location-hero__copy h1 { margin:12px 0 18px; font-size:clamp(2.55rem,5vw,4.65rem); line-height:.96; letter-spacing:-.045em; }
.tvk-location-hero__copy > p { max-width:660px; margin:0; color:var(--tvk-muted); font-size:1.03rem; line-height:1.7; }
.tvk-location-hero__actions { display:flex; flex-wrap:wrap; gap:14px 18px; align-items:center; margin-top:26px; }
.tvk-location-hero__media { position:relative; overflow:hidden; min-height:390px; border-radius:26px; background:#dfe8f4; box-shadow:0 26px 60px rgba(12,35,65,.13); }
.tvk-location-hero__media > img { width:100%; height:100%; min-height:390px; aspect-ratio:16/10; object-fit:cover; }
.tvk-location-hero__placeholder { display:grid; min-height:390px; place-content:center; gap:9px; padding:30px; text-align:center; color:var(--tvk-muted); }
.tvk-location-hero__placeholder > span { display:grid; width:58px; height:58px; place-items:center; margin:0 auto; border-radius:18px; background:#fff; color:var(--tvk-water); box-shadow:var(--tvk-shadow-soft); }
.tvk-location-hero__placeholder strong { color:var(--tvk-text); font-size:1.45rem; }
.tvk-location-hero__badge { position:absolute; left:18px; bottom:18px; display:grid; gap:3px; max-width:300px; padding:12px 14px; border:1px solid rgba(255,255,255,.2); border-radius:14px; background:rgba(7,29,54,.78); color:#fff; backdrop-filter:blur(10px); }
.tvk-location-hero__badge span { color:rgba(255,255,255,.66); font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; }
.tvk-location-hero__badge strong { font-size:.83rem; }
.tvk-location-gallery-section { padding:16px 0 6px; background:#fff; }
.tvk-location-gallery { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.tvk-location-gallery a { overflow:hidden; border-radius:16px; background:#e9eef5; }
.tvk-location-gallery img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; transition:transform var(--tvk-transition); }
.tvk-location-gallery a:hover img { transform:scale(1.035); }
.tvk-location-info-grid { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr); gap:48px; align-items:start; }
.tvk-location-editorial h2 { max-width:760px; margin:10px 0 16px; }
.tvk-location-editorial > p { max-width:760px; color:var(--tvk-muted); font-size:1.02rem; line-height:1.78; }
.tvk-location-editorial > .tvk-source-note { margin-top:22px; padding:15px 17px; border-left:3px solid var(--tvk-water); background:#f4f8fd; font-size:.84rem; }
.tvk-location-editorial > .tvk-source-note a { color:var(--tvk-water); font-weight:var(--tvk-weight-semibold); }
.tvk-location-facts-card { padding:22px; border:1px solid var(--tvk-line); border-radius:22px; background:#fff; box-shadow:var(--tvk-shadow-soft); }
.tvk-location-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:18px 0 20px; }
.tvk-location-facts div { padding:13px 14px; border:1px solid var(--tvk-line); border-radius:14px; background:#f7f9fc; }
.tvk-location-facts dt { color:var(--tvk-muted); font-size:.66rem; font-weight:var(--tvk-weight-bold); letter-spacing:.07em; text-transform:uppercase; }
.tvk-location-facts dd { margin:6px 0 0; overflow-wrap:anywhere; word-break:normal; font-size:.9rem; font-weight:var(--tvk-weight-semibold); }
.tvk-location-source-links { display:grid; gap:8px; padding-top:16px; border-top:1px solid var(--tvk-line); }
.tvk-location-source-links a { display:grid; grid-template-columns:1fr auto; gap:2px 10px; padding:11px 0; }
.tvk-location-source-links a > span { grid-column:1; color:var(--tvk-muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.06em; }
.tvk-location-source-links a > strong { grid-column:1; font-size:.84rem; }
.tvk-location-source-links a > .tvk-icon { grid-column:2; grid-row:1/3; align-self:center; }

@media (max-width:1180px) {
  .tvk-region-explorer,.tvk-location-hero__grid,.tvk-location-info-grid { grid-template-columns:1fr; }
  .tvk-region-explorer__index { min-height:420px; max-height:620px; }
  .tvk-county-map__surface { min-height:600px; }
  .tvk-location-hero__media { min-height:0; }
  .tvk-location-hero__media > img { min-height:0; }
  .tvk-related-places__grid,.tvk-location-directory { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px) {
  .tvk-map-toolbar { grid-template-columns:1fr; gap:18px; }
  .tvk-map-filters { display:grid; grid-auto-flow:column; grid-auto-columns:max-content; overflow-x:auto; flex-wrap:nowrap; margin-inline:-14px; padding:0 14px 8px; scrollbar-width:none; }
  .tvk-map-filters::-webkit-scrollbar { display:none; }
  .tvk-region-explorer { gap:16px; }
  .tvk-region-explorer__index { min-height:360px; max-height:500px; }
  .tvk-county-map__surface { min-height:430px; border-radius:20px; }
  .tvk-county-map__label { right:14px; left:14px; bottom:14px; max-width:none; padding:11px 13px; }
  .tvk-county-map__label span { font-size:.7rem; }
  .tvk-county-map__point strong,.tvk-county-map__point small,.tvk-county-map__point em { display:none; }
  .tvk-county-map__point.is-featured strong { display:block; left:16px; top:-5px; max-width:88px; padding:4px 6px; border-radius:7px; background:rgba(6,24,45,.8); opacity:1; font-size:.65rem; }
  .tvk-related-places__grid,.tvk-location-directory { grid-template-columns:1fr; }
  .tvk-location-hero { padding-top:34px; }
  .tvk-location-hero__copy h1 { font-size:clamp(1.85rem,7.8vw,2.35rem); line-height:1.03; }
  .tvk-location-hero__copy > p { font-size:.95rem; line-height:1.62; }
  .tvk-location-hero__actions .tvk-button { width:100%; }
  .tvk-location-hero__media { margin-inline:-14px; border-radius:0; }
  .tvk-location-hero__media > img,.tvk-location-hero__placeholder { min-height:260px; aspect-ratio:16/10; }
  .tvk-location-gallery { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(150px,58vw); grid-template-columns:none; overflow-x:auto; margin-inline:-14px; padding:0 14px 10px; scroll-snap-type:x mandatory; scrollbar-width:none; }
  .tvk-location-gallery::-webkit-scrollbar { display:none; }
  .tvk-location-gallery a { scroll-snap-align:start; }
  .tvk-location-info-grid { gap:28px; }
  .tvk-location-facts { grid-template-columns:1fr 1fr; }
  .tvk-related-places__grid[data-tvk-mobile-rail] { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(255px,82vw); grid-template-columns:none; overflow-x:auto; margin-inline:-14px; padding:0 14px 10px; scroll-snap-type:x mandatory; scrollbar-width:none; }
  .tvk-related-places__grid[data-tvk-mobile-rail]::-webkit-scrollbar { display:none; }
  .tvk-related-places__grid[data-tvk-mobile-rail] > * { scroll-snap-align:start; }
}
@media (max-width:430px) {
  .tvk-location-facts { grid-template-columns:1fr; }
  .tvk-region-explorer__stats { grid-template-columns:1fr 1fr; }
  .tvk-county-map__surface { min-height:390px; }
}

/* Serwisy informacyjne Radio Kętrzyn */
.tvk-section--bulletins{background:var(--tvk-paper)}
.tvk-bulletin-feature{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(24px,4vw,58px);align-items:center;padding:clamp(24px,4vw,48px);border:1px solid rgba(20,48,65,.10);border-radius:28px;background:#fff;box-shadow:0 18px 55px rgba(16,42,56,.08)}
.tvk-bulletin-feature h2{margin:.45rem 0 .7rem;font-size:clamp(1.65rem,3vw,2.7rem);line-height:1.06}.tvk-bulletin-feature p{max-width:760px;color:var(--tvk-muted);line-height:1.65}.tvk-bulletin-feature__player{display:grid;gap:14px}.tvk-bulletin-feature audio,.tvk-bulletin-row audio{width:100%;min-height:48px}.tvk-bulletin-meta{display:flex;flex-wrap:wrap;gap:.45rem .85rem;margin-top:1rem;color:var(--tvk-muted);font-size:.82rem}.tvk-bulletin-meta>*+*{position:relative;padding-left:.8rem}.tvk-bulletin-meta>*+*:before{content:"";position:absolute;left:0;top:.55em;width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.5}.tvk-bulletins-archive-head{margin-top:clamp(42px,6vw,72px)}.tvk-bulletins-list{display:grid;gap:12px}.tvk-bulletin-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:24px;align-items:center;padding:18px 20px;border-top:1px solid rgba(20,48,65,.10)}.tvk-bulletin-row h3{margin:0;font-size:1.03rem}.tvk-bulletin-row__player{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.tvk-bulletin-row__player>a{display:inline-flex;min-height:44px;align-items:center;gap:5px;color:var(--tvk-ink);font-weight:800;text-decoration:none}.tvk-bulletins-note{padding-top:0}
.tvk-rk-today__bulletin{display:flex;min-width:0;flex-direction:column;gap:18px;padding:clamp(22px,3vw,30px);border-radius:24px;background:var(--tvk-ink);color:#fff}.tvk-rk-today__bulletin h3{margin:.4rem 0 0;font-size:clamp(1.35rem,2.1vw,1.9rem);line-height:1.12}.tvk-rk-today__bulletin .tvk-kicker,.tvk-rk-today__bulletin .tvk-rk-today__meta{color:rgba(255,255,255,.7)}.tvk-rk-today__bulletin audio{width:100%;min-height:48px;margin-top:auto}.tvk-rk-today__meta{display:flex;flex-wrap:wrap;gap:.45rem .85rem;font-size:.8rem}.tvk-rk-today__meta>*+*{position:relative;padding-left:.8rem}.tvk-rk-today__meta>*+*:before{content:"";position:absolute;left:0;top:.55em;width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.5}.tvk-rk-today__bulletin-links{display:flex;flex-wrap:wrap;gap:12px 18px}.tvk-rk-today__bulletin .tvk-text-link{min-height:44px;color:#fff;align-items:center}
.tvk-section--ecosystem-latest{background:linear-gradient(180deg,#f6f1e8 0%,#fff 100%);border-top:1px solid rgba(20,48,65,.08)}.tvk-bridge-head--bottom{margin-top:0}
@media(max-width:760px){.tvk-bulletin-feature{grid-template-columns:1fr;border-radius:20px}.tvk-bulletin-row{grid-template-columns:1fr;padding:16px 0}.tvk-bulletin-row__player{grid-template-columns:1fr}.tvk-bulletin-row__player>a{width:fit-content}.tvk-bulletin-meta{font-size:.78rem}.tvk-rk-today__bulletin{border-radius:20px}.tvk-section--ecosystem-latest .tvk-bridge-grid{scroll-padding-inline:var(--tvk-gutter)}}

/* Radio Kętrzyn: lekkie karty zewnętrznych wiadomości. */
.tvk-rk-news__grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.tvk-rk-news__grid--count-1 { grid-template-columns:minmax(0,1fr); max-width:680px; }
.tvk-rk-news__grid--count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.tvk-rk-news-card {
  min-width:0;
  overflow:hidden;
  border:1px solid var(--tvk-line);
  border-radius:20px;
  background:#fff;
}
.tvk-rk-news-card__media {
  display:block;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#e7edf5;
}
.tvk-rk-news-card__media img {
  width:100%;
  height:100%;
  object-fit:cover;
}
.tvk-rk-news-card__fallback {
  display:grid;
  width:100%;
  height:100%;
  place-items:center;
  font-weight:800;
  letter-spacing:.08em;
}
.tvk-rk-news-card__copy {
  padding:17px;
}
.tvk-rk-news-card__meta {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px 10px;
  color:var(--tvk-muted);
  font-size:.76rem;
  line-height:1.35;
}
.tvk-rk-news-card__meta span,.tvk-rk-news-card__meta time { white-space:nowrap; }
.tvk-rk-news-card__meta > * + *::before { content:"·"; margin-right:10px; color:#8b96a4; }
.tvk-rk-news-card__copy h3 {
  margin:8px 0 9px;
  font-size:1.05rem;
  line-height:1.24;
}
.tvk-rk-news-card__copy h3 a {
  color:inherit;
  text-decoration:none;
}
.tvk-rk-news-card__copy h3 a:hover,
.tvk-rk-news-card__copy h3 a:focus-visible {
  text-decoration:underline;
  text-underline-offset:3px;
}
.tvk-rk-news-card__copy p {
  margin:0 0 12px;
  color:var(--tvk-muted);
  font-size:.86rem;
  line-height:1.52;
}
.tvk-rk-news-card__cta {
  display:inline-flex;
  min-height:44px;
  align-items:center;
  gap:7px;
  font-size:.82rem;
  font-weight:800;
}
@media (max-width:900px) {
  .tvk-rk-news__grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:767px) {
  .tvk-rk-news__grid[data-tvk-mobile-rail] {
    display:grid;
    max-width:none;
    grid-auto-flow:column;
    grid-auto-columns:minmax(268px,84vw);
    grid-template-columns:none;
    overflow-x:auto;
    margin-inline:-14px;
    padding:0 14px 10px;
    scroll-snap-type:x mandatory;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
  }
  .tvk-rk-news__grid[data-tvk-mobile-rail]::-webkit-scrollbar { display:none; }
  .tvk-rk-news-card { scroll-snap-align:start; }
}


/* 3.3.10 — mobile-native long lists: 5 items + disclosure, swipe stays for rails */
.tvk-mobile-list-toggle { display:none; }
@media (max-width:1023px) {
  [data-tvk-mobile-rail],
  [data-tvk-swipe-rail],
  .tvk-location-cards,
  .tvk-location-gallery,
  .tvk-map-filters,
  .tvk-active-filter-chips {
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
    scroll-padding-inline:14px;
  }

  .tvk-mobile-limit.is-collapsed > .tvk-mobile-limit__overflow { display:none; }
  .tvk-mobile-limit.is-expanded > * { animation:tvk-mobile-reveal .18s ease-out; }
  .tvk-mobile-list-toggle {
    display:flex;
    width:100%;
    min-height:48px;
    align-items:center;
    justify-content:center;
    gap:9px;
    margin:14px 0 0;
    padding:0 16px;
    border:1px solid var(--tvk-line);
    border-radius:14px;
    background:var(--tvk-paper);
    color:var(--tvk-text);
    font:inherit;
    font-size:.82rem;
    font-weight:var(--tvk-weight-semibold);
    cursor:pointer;
  }
  .tvk-mobile-list-toggle small {
    display:inline-grid;
    min-width:28px;
    height:24px;
    place-items:center;
    padding:0 7px;
    border-radius:999px;
    background:var(--tvk-paper-2);
    color:var(--tvk-muted);
    font-size:.68rem;
  }
  .tvk-mobile-list-toggle b { color:var(--tvk-water); font-size:.85rem; }
  .tvk-mobile-list-toggle:focus-visible { outline:3px solid color-mix(in srgb,var(--tvk-water) 28%,transparent); outline-offset:2px; }

  /* The location facts shown in the reported warning stay readable instead of
     squeezing desktop cards into a miniature grid. */
  .tvk-location-facts.tvk-mobile-limit { grid-template-columns:1fr; }

  /* Long card sets become compact vertical lists with progressive disclosure;
     dedicated editorial rails keep swipe/scroll-snap. */
  .tvk-source-grid.tvk-mobile-limit,
  .tvk-topic-grid.tvk-mobile-limit,
  .tvk-services-grid.tvk-mobile-limit,
  .tvk-history-strip.tvk-mobile-limit { grid-template-columns:1fr; }
}
@keyframes tvk-mobile-reveal { from { opacity:.55; transform:translateY(-4px); } to { opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce) { .tvk-mobile-limit.is-expanded > * { animation:none; } }

/* 3.3.11 — jawne źródło zdjęć Wikimedia w atlasie. */
.tvk-place-card__media{display:block;overflow:hidden;background:linear-gradient(135deg,#eef4fd,#dfeaf9)}
.tvk-place-card__media img,.tvk-place-card__media .tvk-place-card__placeholder{display:grid;width:100%;aspect-ratio:16/9;place-items:center;object-fit:cover}
.tvk-place-card__source{display:flex;flex-wrap:wrap;gap:4px 7px;align-items:center;padding:7px 18px 0;color:var(--tvk-muted);font-size:.66rem;line-height:1.35}
.tvk-place-card__source a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.tvk-location-image-credit{margin-top:7px;color:var(--tvk-muted);font-size:.68rem;line-height:1.4}
.tvk-location-image-credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}

.tvk-place-card strong a{color:inherit;text-decoration:none}
.tvk-place-card strong a:hover,.tvk-place-card strong a:focus-visible{text-decoration:underline;text-underline-offset:3px}


/* 3.3.12 — atlas: 20 pozycji + jawne rozwinięcie, niezależne od mobile disclosure. */
.tvk-location-list-toggle{display:flex;width:100%;min-height:48px;margin:12px 0 0;padding:0 16px;align-items:center;justify-content:center;gap:9px;border:1px solid var(--tvk-line);border-radius:14px;background:var(--tvk-paper);color:var(--tvk-text);font:inherit;font-size:.8rem;font-weight:var(--tvk-weight-semibold);cursor:pointer}
.tvk-location-list-toggle small{display:inline-grid;min-width:30px;height:24px;place-items:center;padding:0 7px;border-radius:999px;background:var(--tvk-paper-2);color:var(--tvk-muted);font-size:.68rem}
.tvk-location-list-toggle b{color:var(--tvk-water)}
.tvk-location-list-toggle[hidden]{display:none}
.tvk-location-list-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--tvk-water) 28%,transparent);outline-offset:2px}
.tvk-location-hero__media .tvk-location-image-credit{padding:0 4px}
@media (max-width:1023px){.tvk-location-list-toggle{position:static;box-shadow:none}}

/* 3.3.22 — Z naszych Sociali: lekki feed 9:16, bez iframe przy starcie strony. */
.tvk-section--social{background:linear-gradient(180deg,#eef4fc 0%,#f7f9fd 100%);border-top:1px solid var(--tvk-line);border-bottom:1px solid var(--tvk-line)}
.tvk-social-rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(205px,18vw,246px);gap:18px;overflow-x:auto;padding:2px 2px 16px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:rgba(22,38,61,.22) transparent}
.tvk-social-card{display:block;min-width:0;color:var(--tvk-text);text-decoration:none;scroll-snap-align:start;transition:transform var(--tvk-transition)}
.tvk-social-card:hover{transform:translateY(-4px)}
.tvk-social-card__media{position:relative;display:block;aspect-ratio:9/16;overflow:hidden;border-radius:22px;background:linear-gradient(145deg,var(--tvk-ink),var(--tvk-ink-3));box-shadow:var(--tvk-shadow-soft)}
.tvk-social-card__media>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.tvk-social-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,18,38,.04) 44%,rgba(5,18,38,.64) 100%);pointer-events:none}
.tvk-social-card__platform{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(7,24,48,.64);backdrop-filter:blur(10px);color:#fff;font-size:.72rem;font-weight:var(--tvk-weight-bold);letter-spacing:.02em}
.tvk-social-card__play{position:absolute;right:14px;bottom:14px;display:grid;width:46px;height:46px;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.94);color:var(--tvk-ink);box-shadow:0 8px 26px rgba(7,24,48,.24)}
.tvk-social-card__play svg{width:18px;height:18px}
.tvk-social-card__copy{display:block;padding:13px 3px 0}
.tvk-social-card__copy strong{display:-webkit-box;overflow:hidden;min-height:2.7em;color:var(--tvk-text);font-size:.94rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.tvk-social-card__copy small{display:block;margin-top:7px;color:var(--tvk-muted);font-size:.75rem;line-height:1.35}
.tvk-social-card__fallback{position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.9);font-size:3.2rem;font-weight:var(--tvk-weight-bold);letter-spacing:-.06em}
.tvk-social-card--instagram .tvk-social-card__media{background:linear-gradient(160deg,#36236b,#a23a74 55%,#cc7642)}
.tvk-social-card--tiktok .tvk-social-card__media{background:linear-gradient(160deg,#071017,#183540)}
.tvk-social-card--youtube .tvk-social-card__media{background:linear-gradient(160deg,#281418,#7c1f2b)}
@media(max-width:1023px){.tvk-social-rail{grid-auto-columns:clamp(220px,68vw,286px);gap:14px;margin-right:-14px;margin-left:-14px;padding-right:14px;padding-left:14px;scroll-snap-type:x mandatory;scrollbar-width:none}.tvk-social-rail::-webkit-scrollbar{display:none}.tvk-social-card:hover{transform:none}}
@media(max-width:520px){.tvk-social-rail{grid-auto-columns:minmax(226px,72vw)}.tvk-social-card__media{border-radius:20px}.tvk-social-card__copy strong{font-size:.9rem}}


/* 3.3.25 — PC/MOBILE VISUAL COMBO: spójne sekcje, obrazy i hero swipe. */
.tvk-heading-split { text-wrap:balance; }

/* PC: jedna sekcja = jeden język kart. */
@media (min-width:1024px) {
  .tvk-editorial-grid,
  .tvk-ketrzyn-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
  .tvk-editorial-grid > .tvk-card,
  .tvk-ketrzyn-grid > .tvk-card { height:100%; }
  .tvk-editorial-grid .tvk-card__media,
  .tvk-ketrzyn-grid .tvk-card__media,
  .tvk-events-grid .tvk-event-card__media,
  .tvk-rk-news-card__media,
  .tvk-bridge-grid .tvk-card__media { aspect-ratio:16/9; }

  .tvk-promoted-grid { align-items:stretch; }
  .tvk-promoted-grid > .tvk-card--feature,
  .tvk-promoted-grid > .tvk-card--promoted {
    display:flex;
    height:100%;
    flex-direction:column;
    grid-column:auto;
    overflow:hidden;
    border-radius:22px;
  }
  .tvk-promoted-grid > .tvk-card--feature .tvk-card__media-wrap,
  .tvk-promoted-grid > .tvk-card--promoted .tvk-card__media-wrap { height:auto; }
  .tvk-promoted-grid > .tvk-card--feature .tvk-card__media,
  .tvk-promoted-grid > .tvk-card--promoted .tvk-card__media {
    min-height:0;
    height:auto;
    aspect-ratio:16/9;
    border-radius:0;
  }
  .tvk-promoted-grid > .tvk-card--feature .tvk-card__body,
  .tvk-promoted-grid > .tvk-card--promoted .tvk-card__body {
    flex:1;
    justify-content:flex-start;
    padding:24px;
  }
  .tvk-promoted-grid > .tvk-card--feature .tvk-card__body h3,
  .tvk-promoted-grid > .tvk-card--promoted .tvk-card__body h3 { font-size:clamp(1.3rem,1.6vw,1.7rem); }
  .tvk-promoted-grid > .tvk-card--feature .tvk-card__body > p,
  .tvk-promoted-grid > .tvk-card--promoted .tvk-card__body > p {
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
  }
}

/* Radio: serwis audio i wiadomości są osobnymi, czytelnymi blokami. */
.tvk-section--rk-bulletin { background:linear-gradient(180deg,#f4f7fc 0%,#eef4fc 100%); border-top:1px solid rgba(20,48,65,.08); }
.tvk-section--rk-news { background:#fff; border-top:1px solid rgba(20,48,65,.08); border-bottom:1px solid rgba(20,48,65,.08); }
.tvk-rk-today__bulletin--wide {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  grid-template-areas:"copy audio" "links audio";
  gap:18px 34px;
  align-items:center;
  max-width:none;
}
.tvk-rk-today__bulletin--wide .tvk-rk-today__bulletin-copy { grid-area:copy; }
.tvk-rk-today__bulletin--wide audio { grid-area:audio; margin-top:0; }
.tvk-rk-today__bulletin--wide .tvk-rk-today__bulletin-links { grid-area:links; }

/* Mobile: mniejsza typografia, mocniejsza hierarchia, mniej pustej przestrzeni. */
@media (max-width:1023px) {
  .tvk-home-hero { padding:22px 0 44px; }
  .tvk-home-hero__grid { gap:20px; }
  .tvk-home-hero__copy > p { font-size:.91rem; line-height:1.58; }
  .tvk-home-hero__statement { margin-top:24px; padding-top:17px; }
  .tvk-hero-frame__copy { right:16px; bottom:15px; left:88px; }
  .tvk-hero-frame__copy strong { font-size:.98rem; }
  .tvk-hero-frame__copy em { font-size:.7rem; }
  .tvk-story-path { grid-template-columns:repeat(5,minmax(132px,1fr)); overflow-x:auto; margin:0 -14px; padding:0 14px 8px; scroll-snap-type:x proximity; scrollbar-width:none; }
  .tvk-story-path::-webkit-scrollbar { display:none; }
  .tvk-story-path span { min-height:82px; scroll-snap-align:start; }
  .tvk-section-head { display:grid; gap:10px; }
  .tvk-section-head > div { max-width:none; }
  .tvk-section-head h2 { margin:7px 0 8px; }
  .tvk-section-head > .tvk-text-link { justify-self:start; }

  [data-tvk-mobile-rail] {
    scroll-padding-inline:14px;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
  }
  .tvk-editorial-grid[data-tvk-mobile-rail],
  .tvk-ketrzyn-grid[data-tvk-mobile-rail],
  .tvk-promoted-grid[data-tvk-mobile-rail],
  .tvk-program-grid[data-tvk-mobile-rail],
  .tvk-events-grid[data-tvk-mobile-rail],
  .tvk-rk-news__grid[data-tvk-mobile-rail],
  .tvk-bridge-grid[data-tvk-mobile-rail] { grid-auto-columns:min(84vw,350px); }

  .tvk-editorial-grid[data-tvk-mobile-rail] > .tvk-card,
  .tvk-ketrzyn-grid[data-tvk-mobile-rail] > .tvk-card {
    display:block;
    grid-template-columns:none;
    gap:0;
  }
  .tvk-editorial-grid[data-tvk-mobile-rail] > .tvk-card .tvk-card__media,
  .tvk-ketrzyn-grid[data-tvk-mobile-rail] > .tvk-card .tvk-card__media { aspect-ratio:16/9; }
  .tvk-editorial-grid[data-tvk-mobile-rail] > .tvk-card .tvk-card__body,
  .tvk-ketrzyn-grid[data-tvk-mobile-rail] > .tvk-card .tvk-card__body { padding:14px 2px 0; }

  .tvk-card__media,
  .tvk-event-card__media,
  .tvk-rk-news-card__media,
  .tvk-bridge-grid .tvk-card__media { border-radius:16px; }
  .tvk-card__body h3 { font-size:clamp(1.02rem,4.2vw,1.2rem); }
  .tvk-event-card__content { grid-template-columns:52px minmax(0,1fr); gap:15px; padding:18px; }
  .tvk-event-card h3 { margin:6px 0 9px; font-size:1.05rem; }
  .tvk-rk-news-card__copy { padding:15px; }
  .tvk-rk-news-card__copy h3 { font-size:1rem; }

  .tvk-rk-today__bulletin--wide {
    grid-template-columns:1fr;
    grid-template-areas:"copy" "audio" "links";
    gap:16px;
    padding:20px;
    border-radius:20px;
  }
  .tvk-rk-today__bulletin--wide h3 { font-size:clamp(1.15rem,5vw,1.42rem); }

  .tvk-hero-swipe-control { width:38px; height:58px; border-radius:13px; opacity:.76; }
  .tvk-hero-swipe-control span { font-size:1.55rem; }
  .tvk-hero-swipe-control--prev { left:5px; }
  .tvk-hero-swipe-control--next { right:5px; }

  .tvk-social-card__media { border-radius:18px; }
  .tvk-location-card { min-height:126px; }
}

@media (max-width:430px) {
  .tvk-home-hero { padding-top:18px; }
  .tvk-home-hero__copy h1 { font-size:clamp(1.72rem,7.2vw,2.02rem); }
  .tvk-section-head h2 { font-size:clamp(1.42rem,6.1vw,1.72rem); }
  .tvk-page-intro h1,
  .tvk-watch-header h1,
  .tvk-location-hero__copy h1 { font-size:clamp(1.68rem,7vw,2rem); }
  .tvk-editorial-grid[data-tvk-mobile-rail],
  .tvk-ketrzyn-grid[data-tvk-mobile-rail],
  .tvk-promoted-grid[data-tvk-mobile-rail],
  .tvk-program-grid[data-tvk-mobile-rail],
  .tvk-events-grid[data-tvk-mobile-rail],
  .tvk-rk-news__grid[data-tvk-mobile-rail],
  .tvk-bridge-grid[data-tvk-mobile-rail] { grid-auto-columns:calc(100vw - 44px); }
}

@media (prefers-reduced-motion:reduce) {
  .tvk-hero-swipe-control { transition:none; }
}


/* 3.3.34 — LIVE control + context/archive sections. */
.tvk-live-program{display:inline-flex;margin-left:10px;padding:7px 10px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(255,255,255,.72);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.tvk-live-status--waiting{background:#fff3d4;color:#765615}
.tvk-section--live-now{background:linear-gradient(135deg,#071d37 0%,#0b345e 100%);color:#fff}
.tvk-live-now-card{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);position:relative;overflow:hidden;min-height:240px;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:rgba(255,255,255,.05);color:#fff;text-decoration:none;box-shadow:0 24px 70px rgba(0,0,0,.16)}
.tvk-live-now-card>img{width:100%;height:100%;min-height:240px;object-fit:cover}
.tvk-live-now-card>div{display:grid;align-content:center;gap:10px;padding:clamp(24px,4vw,46px)}
.tvk-live-now-card>div small{color:var(--tvk-water-light);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.tvk-live-now-card>div strong{max-width:760px;font-size:clamp(1.45rem,2.5vw,2.5rem);line-height:1.08}
.tvk-live-now-card>div>span{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.72);font-weight:700}
.tvk-live-now-card>.tvk-live-pill{position:absolute;z-index:2;top:18px;left:18px}
.tvk-live-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media(max-width:1100px){.tvk-live-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.tvk-live-now-card{grid-template-columns:1fr;min-height:0}.tvk-live-now-card>img{min-height:0;aspect-ratio:16/9}.tvk-live-now-card>div{padding:20px}.tvk-live-related-grid{display:grid;grid-auto-flow:column;grid-auto-columns:min(84vw,360px);grid-template-columns:none;gap:14px;overflow-x:auto;margin-inline:-14px;padding:0 14px 10px;scroll-snap-type:x mandatory;scrollbar-width:none}.tvk-live-related-grid::-webkit-scrollbar{display:none}.tvk-live-related-grid>*{scroll-snap-align:start}.tvk-live-program{margin:10px 0 0 0}}

.tvk-live-feature__facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin:18px 0 22px;color:rgba(255,255,255,.62);font-size:.8rem}.tvk-live-feature__facts strong{color:#fff;font-weight:700}


/* 3.3.35 — LIVE archive: compact replays under Na żywo + dedicated archive page. */
.tvk-live-replays .tvk-section-head{align-items:end}
.tvk-live-replay-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tvk-live-replay-card{display:grid;min-width:0;color:var(--tvk-text);text-decoration:none}
.tvk-live-replay-card__media{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;border-radius:16px;background:var(--tvk-ink);box-shadow:var(--tvk-shadow-soft)}
.tvk-live-replay-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform var(--tvk-transition)}
.tvk-live-replay-card:hover .tvk-live-replay-card__media img,.tvk-live-replay-card:focus-visible .tvk-live-replay-card__media img{transform:scale(1.025)}
.tvk-live-replay-card__play{position:absolute;right:10px;bottom:10px;display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:rgba(255,255,255,.94);color:var(--tvk-ink);box-shadow:0 8px 22px rgba(7,24,48,.22)}
.tvk-live-replay-card__play .tvk-icon{width:16px;height:16px}
.tvk-live-replay-card__copy{display:grid;gap:6px;padding:11px 2px 0}
.tvk-live-replay-card__copy small{color:var(--tvk-water);font-size:.68rem;font-weight:var(--tvk-weight-bold);letter-spacing:.045em;text-transform:uppercase}
.tvk-live-replay-card__copy strong{display:-webkit-box;overflow:hidden;font-size:.95rem;line-height:1.34;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.tvk-live-replay-card__copy time{color:var(--tvk-muted);font-size:.72rem}
.tvk-live-replays__footer{display:none;margin-top:20px}

.tvk-live-archive-hero{padding:clamp(48px,6vw,82px) 0 clamp(38px,5vw,66px);background:linear-gradient(135deg,var(--tvk-ink) 0%,#15345c 100%);color:#fff}
.tvk-live-archive-hero h1{max-width:880px;margin:14px 0 18px;font-size:clamp(2.35rem,4.6vw,4.3rem);line-height:.98;letter-spacing:-.04em}
.tvk-live-archive-hero>div>p{max-width:790px;color:rgba(255,255,255,.7);font-size:1rem;line-height:1.7}
.tvk-live-archive-hero .tvk-heading-accent{color:var(--tvk-water-light)}
.tvk-live-archive-hero__stats{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.13)}
.tvk-live-archive-hero__stats span{display:flex;align-items:baseline;gap:7px;color:rgba(255,255,255,.64);font-size:.78rem}
.tvk-live-archive-hero__stats strong{color:#fff;font-size:1.35rem}
.tvk-live-archive-hero__stats .tvk-text-link{color:#fff}
.tvk-live-archive-filters{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(150px,.7fr) minmax(190px,1fr) minmax(150px,.7fr) auto;gap:10px;align-items:end;margin-bottom:18px;padding:16px;border:1px solid var(--tvk-line);border-radius:18px;background:var(--tvk-paper);box-shadow:var(--tvk-shadow-soft)}
.tvk-live-archive-filters label{display:grid;gap:6px;min-width:0}
.tvk-live-archive-filters label>span{color:var(--tvk-muted);font-size:.68rem;font-weight:var(--tvk-weight-bold);letter-spacing:.05em;text-transform:uppercase}
.tvk-live-archive-filters input,.tvk-live-archive-filters select{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--tvk-line);border-radius:11px;background:#fff;color:var(--tvk-text);font:inherit;font-size:.82rem}
.tvk-live-archive-filters__clear{align-self:center;color:var(--tvk-muted);font-size:.78rem;text-decoration:underline;text-underline-offset:3px}
.tvk-live-archive-summary{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px;color:var(--tvk-muted);font-size:.8rem}
.tvk-live-archive-summary p{margin:0}.tvk-live-archive-summary strong{color:var(--tvk-text)}
.tvk-live-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tvk-live-archive-card{overflow:hidden;min-width:0;border:1px solid var(--tvk-line);border-radius:20px;background:#fff;box-shadow:var(--tvk-shadow-soft)}
.tvk-live-archive-card__media{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;background:var(--tvk-ink)}
.tvk-live-archive-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform var(--tvk-transition)}
.tvk-live-archive-card:hover .tvk-live-archive-card__media img{transform:scale(1.025)}
.tvk-live-archive-card__play{position:absolute;right:14px;bottom:14px;display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:#fff;color:var(--tvk-ink);box-shadow:0 10px 26px rgba(7,24,48,.2)}
.tvk-live-archive-card__body{display:grid;gap:10px;padding:18px}
.tvk-live-archive-card__meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 12px;color:var(--tvk-muted);font-size:.7rem}
.tvk-live-archive-card__meta span{color:var(--tvk-water);font-weight:var(--tvk-weight-bold);letter-spacing:.04em;text-transform:uppercase}
.tvk-live-archive-card h2{margin:0;font-size:1.15rem;line-height:1.22}
.tvk-live-archive-card h2 a{color:inherit;text-decoration:none}
.tvk-live-archive-card p{margin:0;color:var(--tvk-muted);font-size:.82rem;line-height:1.58}
.tvk-live-archive-card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px}
.tvk-live-archive-card__footer>span{color:var(--tvk-muted);font-size:.67rem}
.tvk-live-archive-pagination{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin-top:28px}
.tvk-live-archive-pagination a{display:grid;min-width:42px;height:42px;place-items:center;border:1px solid var(--tvk-line);border-radius:10px;background:#fff;color:var(--tvk-text);font-size:.8rem;font-weight:700}
.tvk-live-archive-pagination a[aria-current="page"]{border-color:var(--tvk-water);background:var(--tvk-water);color:#fff}
.tvk-live-archive-note{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:40px;align-items:start}
.tvk-live-archive-note h2{margin:8px 0 0}.tvk-live-archive-note p{margin:0;color:rgba(255,255,255,.66);line-height:1.72}
@media(max-width:1100px){.tvk-live-replay-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.tvk-live-archive-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.tvk-live-archive-filters .tvk-button{width:100%}.tvk-live-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tvk-live-archive-note{grid-template-columns:1fr}}
@media(max-width:720px){.tvk-live-replays .tvk-section-head>a{display:none}.tvk-live-replay-strip{display:grid;grid-auto-flow:column;grid-auto-columns:min(76vw,300px);grid-template-columns:none;gap:13px;overflow-x:auto;margin-inline:-14px;padding:0 14px 9px;scroll-snap-type:x mandatory;scrollbar-width:none}.tvk-live-replay-strip::-webkit-scrollbar{display:none}.tvk-live-replay-card{scroll-snap-align:start}.tvk-live-replays__footer{display:block}.tvk-live-replays__footer .tvk-button{width:100%;justify-content:center}.tvk-live-archive-hero{padding-top:34px}.tvk-live-archive-hero h1{font-size:clamp(2rem,10vw,2.65rem)}.tvk-live-archive-hero>div>p{font-size:.92rem}.tvk-live-archive-filters{grid-template-columns:1fr;padding:13px}.tvk-live-archive-filters__clear{text-align:center}.tvk-live-archive-grid{grid-template-columns:1fr;gap:14px}.tvk-live-archive-card{display:grid;grid-template-columns:128px minmax(0,1fr);border-radius:16px}.tvk-live-archive-card__media{height:100%;min-height:142px;aspect-ratio:auto}.tvk-live-archive-card__play{right:9px;bottom:9px;width:36px;height:36px}.tvk-live-archive-card__body{gap:7px;padding:14px}.tvk-live-archive-card h2{font-size:.98rem}.tvk-live-archive-card p{display:none}.tvk-live-archive-card__footer>span{display:none}}
@media(max-width:390px){.tvk-live-archive-card{grid-template-columns:112px minmax(0,1fr)}.tvk-live-archive-card__body{padding:12px}.tvk-live-replay-strip{grid-auto-columns:78vw}}

/* 3.3.37 — hybrydowy Program TV: tylko treści z realną godziną emisji. */
.tvk-home-schedule{padding:28px 0;border-top:1px solid var(--tvk-line);border-bottom:1px solid var(--tvk-line);background:#fff}
.tvk-home-schedule__head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:16px}
.tvk-home-schedule__head h2{margin:5px 0 0;font-size:clamp(1.45rem,2.2vw,2rem)}
.tvk-home-schedule__items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tvk-home-schedule__items>a{display:grid;min-width:0;gap:5px;padding:16px 18px;border:1px solid var(--tvk-line);border-radius:16px;background:var(--tvk-paper);transition:transform var(--tvk-transition),border-color var(--tvk-transition),box-shadow var(--tvk-transition)}
.tvk-home-schedule__items>a:hover,.tvk-home-schedule__items>a:focus-visible{transform:translateY(-2px);border-color:rgba(45,104,183,.28);box-shadow:var(--tvk-shadow-soft)}
.tvk-home-schedule__items time{color:var(--tvk-water);font-size:.82rem;font-weight:700}
.tvk-home-schedule__items span{color:var(--tvk-muted);font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.tvk-home-schedule__items strong{font-size:1rem;line-height:1.25}
.tvk-home-schedule__items small{color:var(--tvk-muted);font-size:.76rem}
.tvk-schedule-hero{padding:clamp(48px,6vw,80px) 0 42px;background:linear-gradient(180deg,#f5f8fd 0%,#fff 100%);border-bottom:1px solid var(--tvk-line)}
.tvk-schedule-hero h1{max-width:850px;margin:12px 0 16px;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.98;letter-spacing:-.04em}
.tvk-schedule-hero p{max-width:780px;color:var(--tvk-muted);font-size:1.02rem;line-height:1.7}
.tvk-schedule-days{display:grid;gap:28px}
.tvk-schedule-day{display:grid;grid-template-columns:160px minmax(0,1fr);gap:28px;align-items:start}
.tvk-schedule-day>header{position:sticky;top:calc(var(--tvk-header) + 18px);display:grid;gap:4px;padding-top:12px}
.tvk-schedule-day>header span{color:var(--tvk-water);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.tvk-schedule-day>header strong{font-size:1.1rem}
.tvk-schedule-list{display:grid;gap:10px}
.tvk-schedule-item{display:grid;grid-template-columns:92px minmax(0,1fr) 24px;gap:18px;align-items:center;min-height:104px;padding:16px 18px;border:1px solid var(--tvk-line);border-radius:18px;background:#fff;box-shadow:var(--tvk-shadow-soft);transition:transform var(--tvk-transition),border-color var(--tvk-transition)}
.tvk-schedule-item:hover,.tvk-schedule-item:focus-visible{transform:translateY(-2px);border-color:rgba(45,104,183,.32)}
.tvk-schedule-item>time{font-size:1.45rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--tvk-ink)}
.tvk-schedule-item>div{min-width:0}
.tvk-schedule-item .tvk-schedule-badge{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;background:rgba(45,104,183,.1);color:var(--tvk-water);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.tvk-schedule-item--live .tvk-schedule-badge{background:rgba(185,47,58,.11);color:var(--tvk-live)}
.tvk-schedule-item small{margin-left:7px;color:var(--tvk-muted);font-size:.72rem}
.tvk-schedule-item h2{margin:6px 0 3px;font-size:1.15rem;line-height:1.25}
.tvk-schedule-item p{margin:0;color:var(--tvk-muted);font-size:.8rem}
.tvk-schedule-explainer{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:48px;align-items:start}
.tvk-schedule-explainer h2{margin:8px 0 0;max-width:760px}
.tvk-schedule-explainer>p{margin:0;color:rgba(255,255,255,.68);line-height:1.7}
@media(max-width:900px){.tvk-home-schedule__items{grid-template-columns:1fr}.tvk-schedule-day{grid-template-columns:1fr;gap:12px}.tvk-schedule-day>header{position:static;grid-template-columns:auto 1fr;align-items:baseline;gap:10px}.tvk-schedule-explainer{grid-template-columns:1fr}}
@media(max-width:600px){.tvk-home-schedule{padding:22px 0}.tvk-home-schedule__head{align-items:flex-start;flex-direction:column;gap:8px}.tvk-home-schedule__items{display:grid;grid-auto-flow:column;grid-auto-columns:calc(100vw - 54px);grid-template-columns:none;overflow-x:auto;margin-inline:-14px;padding:0 14px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.tvk-home-schedule__items::-webkit-scrollbar{display:none}.tvk-home-schedule__items>a{scroll-snap-align:start}.tvk-schedule-hero{padding:34px 0 28px}.tvk-schedule-hero h1{font-size:clamp(2rem,9.2vw,2.85rem)}.tvk-schedule-item{grid-template-columns:72px minmax(0,1fr) 20px;gap:12px;padding:14px}.tvk-schedule-item>time{font-size:1.18rem}.tvk-schedule-item h2{font-size:1rem}.tvk-schedule-item small{display:block;margin:5px 0 0}}
