/* TransferKu B2B refresh: layout & components. Colours come from tk-brand.css */
html { scroll-behavior: smooth; }
body.tk { font-family: var(--tk-font); color: var(--tk-text); font-size: 17px; line-height: 1.65; background: var(--tk-white); -webkit-font-smoothing: antialiased; }
.tk h1,.tk h2,.tk h3,.tk h4,.tk h5 { font-family: var(--tk-font); color: var(--tk-ink); font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; margin: 0 0 .6em; }
.tk h1 { font-size: clamp(2.1rem, 4.2vw, 3.4rem); }
.tk h2 { font-size: clamp(1.7rem, 2.8vw, 2.4rem); }
.tk h3 { font-size: 1.3rem; }
.tk h4 { font-size: 1.1rem; }
.tk p { margin: 0 0 1em; }
.tk a { color: var(--tk-primary); }
.tk a:hover { color: var(--tk-primary-dark); }
.tk img { max-width: 100%; height: auto; }
.tk .container { max-width: 1200px; padding-left: 24px; padding-right: 24px; }
.skip-link { position: absolute; left: -999px; top: 0; background: var(--tk-ink); color: #fff; padding: 8px 14px; z-index: 1000; }
.skip-link:focus { left: 8px; color: #fff; }

/* Header */
.tk-header { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,.96); backdrop-filter: saturate(180%) blur(8px); border-bottom: 1px solid var(--tk-line); }
.tk-header .container { display: flex; align-items: center; height: 72px; }
.tk-logo img { height: var(--tk-logo-height); width: auto; display: block; }
.tk-nav { margin-left: auto; display: flex; align-items: center; gap: 4px; }
.tk-nav a { color: var(--tk-ink); font-size: 15px; font-weight: 500; padding: 8px 12px; border-radius: 8px; text-decoration: none; }
.tk-nav a:hover, .tk-nav a.active { color: var(--tk-primary); background: var(--tk-surface-blue); text-decoration: none; }
.tk-nav .ext::after { content: " \2197"; font-size: .85em; }
.tk-lang { display: inline-flex; border: 1px solid var(--tk-line); border-radius: 8px; margin: 0 6px; overflow: hidden; }
.tk-lang a { padding: 6px 10px; font-size: 13px; font-weight: 600; border-radius: 0; color: var(--tk-muted); }
.tk-lang a.on { background: var(--tk-ink); color: #fff; }
.tk-lang a.on:hover { background: var(--tk-ink); color: #fff; }
.tk-burger { display: none; margin-left: auto; background: none; border: 1px solid var(--tk-line); border-radius: 8px; padding: 8px 11px; color: var(--tk-ink); font-size: 18px; line-height: 1; cursor: pointer; }

/* Buttons */
.tk-btn { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: 16px; padding: 13px 22px; border-radius: 8px; border: 1.5px solid transparent; text-decoration: none !important; transition: background .15s, color .15s, border-color .15s; cursor: pointer; line-height: 1.2; }
.tk-btn-primary { background: var(--tk-primary); color: #fff !important; }
.tk-btn-primary:hover { background: var(--tk-primary-dark); }
.tk-btn-ghost { border-color: var(--tk-line); color: var(--tk-ink) !important; background: #fff; }
.tk-btn-ghost:hover { border-color: var(--tk-primary); color: var(--tk-primary) !important; }
.tk-btn-light { background: #fff; color: var(--tk-ink) !important; }
.tk-btn-outline-light { border-color: rgba(255,255,255,.45); color: #fff !important; }
.tk-btn-outline-light:hover { border-color: #fff; }
.tk-nav .tk-btn { padding: 9px 16px; font-size: 15px; margin-left: 6px; }
.tk-nav .tk-btn:hover { background: var(--tk-primary-dark); color: #fff; }
.tk-btns { display: flex; flex-wrap: wrap; gap: 12px; }

/* Sections */
.tk-section { padding: 96px 0; }
.tk-section.alt { background: var(--tk-surface); }
.tk-section.tight { padding: 64px 0; }
.tk-eyebrow { display: inline-block; font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--tk-primary); margin-bottom: 14px; }
.tk-lead { font-size: 1.2rem; color: var(--tk-text); max-width: 680px; }
.tk-head { max-width: 760px; margin-bottom: 48px; }
.tk-head.center { margin-left: auto; margin-right: auto; text-align: center; }
.tk-head.center .tk-lead { margin-left: auto; margin-right: auto; }

/* Hero */
.tk-hero { padding: 96px 0 88px; background: linear-gradient(180deg, var(--tk-surface-blue) 0%, #fff 100%); border-bottom: 1px solid var(--tk-line); }
.tk-hero h1 { margin-bottom: 20px; }
.tk-hero .tk-lead { margin-bottom: 32px; }
.tk-hero-meta { margin-top: 28px; font-size: 14px; color: var(--tk-muted); display: flex; flex-wrap: wrap; gap: 8px 20px; }
.tk-hero-meta span::before { content: "\2713"; color: var(--tk-primary); font-weight: 700; margin-right: 6px; }
.tk-page-hero { padding: 80px 0 64px; background: var(--tk-surface-blue); border-bottom: 1px solid var(--tk-line); }

/* Flow diagram (hero visual) */
.tk-flow { background: #fff; border: 1px solid var(--tk-line); border-radius: var(--tk-radius-lg); padding: 28px; box-shadow: 0 24px 48px -24px rgba(14,23,38,.18); }
.tk-flow-title { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--tk-muted); margin-bottom: 18px; }
.tk-flow-node { border: 1px solid var(--tk-line); border-radius: var(--tk-radius); padding: 14px 16px; display: flex; align-items: center; gap: 14px; background: #fff; }
.tk-flow-node i { width: 38px; height: 38px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; background: var(--tk-surface-blue); color: var(--tk-primary); flex: none; }
.tk-flow-node strong { display: block; color: var(--tk-ink); font-size: 15px; }
.tk-flow-node small { color: var(--tk-muted); font-size: 13px; }
.tk-flow-node.core { background: var(--tk-primary); border-color: var(--tk-primary); }
.tk-flow-node.core strong, .tk-flow-node.core small { color: #fff; }
.tk-flow-node.core i { background: rgba(255,255,255,.18); color: #fff; }
.tk-flow-arrow { text-align: center; color: var(--tk-accent); font-size: 14px; line-height: 1; padding: 7px 0; }
.tk-flow-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.tk-chip { font-size: 12.5px; font-weight: 600; padding: 4px 10px; border-radius: 999px; background: var(--tk-surface); border: 1px solid var(--tk-line); color: var(--tk-ink); }
.tk-flow-note { font-size: 12px; color: var(--tk-muted); margin-top: 14px; }

/* Cards & grids */
.tk-card { background: #fff; border: 1px solid var(--tk-line); border-radius: var(--tk-radius-lg); padding: 32px; height: 100%; transition: border-color .15s, box-shadow .15s; }
.tk-card:hover { border-color: #C9D5F7; box-shadow: 0 12px 32px -18px rgba(52,93,232,.35); }
.tk-card h3 { margin-bottom: 10px; }
.tk-card .tk-tag { font-size: 13px; font-weight: 600; color: var(--tk-primary); margin-bottom: 10px; display: block; }
.tk-card ul, .tk-list { list-style: none; padding: 0; margin: 16px 0 0; }
.tk-card li, .tk-list li { position: relative; padding-left: 24px; margin-bottom: 8px; font-size: 15.5px; }
.tk-card li::before, .tk-list li::before { content: ""; position: absolute; left: 2px; top: .62em; width: 10px; height: 2px; background: var(--tk-primary); }
.tk-icon { width: 46px; height: 46px; border-radius: 11px; background: var(--tk-surface-blue); color: var(--tk-primary); display: inline-flex; align-items: center; justify-content: center; font-size: 19px; margin-bottom: 20px; }
.tk-grid { display: grid; gap: 24px; }
.tk-grid.g2 { grid-template-columns: repeat(2, 1fr); }
.tk-grid.g3 { grid-template-columns: repeat(3, 1fr); }
.tk-grid.g4 { grid-template-columns: repeat(4, 1fr); }
.tk-card-link { display: inline-block; margin-top: 14px; font-weight: 600; font-size: 15px; text-decoration: none; }
.tk-card-link::after { content: " \2192"; }

/* Steps */
.tk-steps { counter-reset: step; display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.tk-step { border-top: 2px solid var(--tk-primary); padding-top: 20px; }
.tk-step::before { counter-increment: step; content: "0" counter(step); display: block; font-weight: 700; color: var(--tk-primary); font-size: 14px; letter-spacing: .08em; margin-bottom: 8px; }
.tk-step h4 { margin-bottom: 6px; }
.tk-step p { font-size: 15.5px; }

/* Corridor table */
.tk-table { width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--tk-line); border-radius: var(--tk-radius-lg); overflow: hidden; background: #fff; font-size: 15.5px; }
.tk-table th, .tk-table td { padding: 16px 20px; text-align: left; border-bottom: 1px solid var(--tk-line); vertical-align: top; }
.tk-table th { background: var(--tk-surface); color: var(--tk-ink); font-size: 13px; text-transform: uppercase; letter-spacing: .06em; }
.tk-table tr:last-child td { border-bottom: 0; }
.tk-table td:first-child { font-weight: 600; color: var(--tk-ink); white-space: nowrap; }

/* Trust band */
.tk-trust { background: var(--tk-dark); color: #C9D2E3; }
.tk-trust h2, .tk-trust h3, .tk-trust h4 { color: #fff; }
.tk-trust .tk-eyebrow { color: var(--tk-accent); }
.tk-trust .tk-lead { color: #C9D2E3; }
.tk-licence { border: 1px solid rgba(255,255,255,.14); border-radius: var(--tk-radius-lg); padding: 28px; background: rgba(255,255,255,.03); height: 100%; }
.tk-licence dt { font-size: 12px; text-transform: uppercase; letter-spacing: .1em; color: #8E9AB0; font-weight: 600; }
.tk-licence dd { color: #fff; font-size: 16px; margin: 2px 0 16px; font-weight: 500; }
.tk-licence dd:last-child { margin-bottom: 0; }
.tk-trust .tk-card { background: rgba(255,255,255,.03); border-color: rgba(255,255,255,.12); color: #C9D2E3; }
.tk-trust .tk-card:hover { box-shadow: none; border-color: rgba(255,255,255,.25); }
.tk-trust .tk-icon { background: rgba(71,172,251,.12); color: var(--tk-accent); }
.tk-trust a { color: var(--tk-accent); }

/* Quote / story */
.tk-story { border-left: 3px solid var(--tk-primary); padding-left: 24px; }
.tk-pull { font-size: 1.5rem; font-weight: 600; color: var(--tk-ink); line-height: 1.35; letter-spacing: -0.01em; }

/* Placeholders (must be resolved before launch) */
.tk-ph { border: 2px dashed #E0A800; background: #FFF8E1; color: #6B5200; border-radius: var(--tk-radius); padding: 14px 18px; font-size: 14px; font-weight: 600; font-family: var(--tk-mono); }
.tk-ph-inline { background: #FFF8E1; color: #6B5200; border: 1px dashed #E0A800; border-radius: 4px; padding: 0 5px; font-size: .9em; font-family: var(--tk-mono); }

/* CTA band */
.tk-cta { background: var(--tk-primary); color: #fff; border-radius: var(--tk-radius-lg); padding: 56px; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.tk-cta h2 { color: #fff; margin-bottom: 8px; }
.tk-cta p { color: rgba(255,255,255,.85); margin: 0; max-width: 560px; }

/* Forms */
.tk-form { background: #fff; border: 1px solid var(--tk-line); border-radius: var(--tk-radius-lg); padding: 36px; }
.tk-form label { display: block; font-size: 14px; font-weight: 600; color: var(--tk-ink); margin-bottom: 6px; }
.tk-form input, .tk-form select, .tk-form textarea { width: 100%; border: 1px solid #CDD5E1; border-radius: 8px; padding: 11px 13px; font-size: 16px; font-family: var(--tk-font); color: var(--tk-ink); background: #fff; }
.tk-form input:focus, .tk-form select:focus, .tk-form textarea:focus { outline: none; border-color: var(--tk-primary); box-shadow: 0 0 0 3px rgba(52,93,232,.15); }
.tk-form textarea { min-height: 130px; resize: vertical; }
.tk-form .row > div { margin-bottom: 18px; }
.tk-form .tk-consent { font-size: 13px; color: var(--tk-muted); margin: 4px 0 18px; }
.tk-form-msg { margin-top: 16px; font-size: 15px; }
.tk-form-msg.ok { color: #13795B; } .tk-form-msg.err { color: #B42318; }
.tk-contact-list { list-style: none; padding: 0; margin: 0; }
.tk-contact-list li { display: flex; gap: 14px; margin-bottom: 22px; }
.tk-contact-list i { color: var(--tk-primary); margin-top: 5px; width: 18px; text-align: center; }
.tk-contact-list span { display: block; font-size: 13px; color: var(--tk-muted); font-weight: 600; text-transform: uppercase; letter-spacing: .06em; }

/* Legal pages (body text kept verbatim) */
.tk-legal { padding: 56px 0 96px; font-size: 16px; }
.tk-legal .container > section, .tk-legal section { padding: 0 !important; background: none !important; }
.tk-legal h1 { font-size: 2.2rem; }
.tk-legal h5 { font-size: 15px; color: var(--tk-muted); font-weight: 500; }
.tk-legal ol, .tk-legal ul { padding-left: 1.4rem; }
.tk-legal li { margin-bottom: .5em; }
.tk-legal .text-justify { text-align: left !important; }

/* Footer */
.tk-footer { background: var(--tk-dark); color: #9AA6BC; font-size: 14.5px; padding: 72px 0 0; }
.tk-footer a { color: #C9D2E3; text-decoration: none; }
.tk-footer a:hover { color: #fff; }
.tk-footer h5 { color: #fff; font-size: 13px; text-transform: uppercase; letter-spacing: .1em; margin-bottom: 16px; font-weight: 700; }
.tk-footer ul { list-style: none; padding: 0; margin: 0; }
.tk-footer li { margin-bottom: 9px; }
.tk-footer .tk-logo img { height: var(--tk-logo-height); margin-bottom: 18px; }
.tk-footer-reg { border-top: 1px solid rgba(255,255,255,.1); margin-top: 48px; padding: 24px 0; font-size: 13px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; }
.tk-footer-reg strong { color: #C9D2E3; font-weight: 600; }

/* Responsive */
@media (max-width: 1100px) {
  .tk-nav a { padding: 8px 9px; font-size: 14.5px; }
}
@media (max-width: 991px) {
  .tk-burger { display: inline-block; }
  .tk-nav { display: none; position: absolute; top: 72px; left: 0; right: 0; background: #fff; flex-direction: column; align-items: stretch; padding: 12px 24px 24px; border-bottom: 1px solid var(--tk-line); box-shadow: 0 16px 24px -16px rgba(0,0,0,.15); gap: 2px; }
  .tk-nav.open { display: flex; }
  .tk-nav a { padding: 12px 8px; font-size: 16px; }
  .tk-lang { margin: 10px 0; align-self: flex-start; }
  .tk-nav .tk-btn { margin: 8px 0 0; justify-content: center; }
  .tk-grid.g3, .tk-grid.g4, .tk-steps { grid-template-columns: repeat(2, 1fr); }
  .tk-hero .tk-flow { margin-top: 48px; }
}
@media (max-width: 640px) {
  body.tk { font-size: 16px; }
  .tk-section { padding: 64px 0; }
  .tk-hero { padding: 56px 0 56px; }
  .tk-page-hero { padding: 56px 0 44px; }
  .tk-grid.g2, .tk-grid.g3, .tk-grid.g4, .tk-steps { grid-template-columns: 1fr; }
  .tk-card { padding: 24px; }
  .tk-cta { padding: 32px 24px; }
  .tk-form { padding: 24px; }
  .tk-btns .tk-btn { width: 100%; justify-content: center; }
  .tk-table thead { display: none; }
  .tk-table, .tk-table tbody, .tk-table tr, .tk-table td { display: block; width: 100%; }
  .tk-table tr { border-bottom: 1px solid var(--tk-line); padding: 8px 0; }
  .tk-table td { border: 0; padding: 6px 18px; }
  .tk-table td:first-child { white-space: normal; }
  .tk-table td[data-label]::before { content: attr(data-label); display: block; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--tk-muted); font-weight: 600; }
}
.tk-contact-list li > div { min-width: 0; }
.tk-contact-list a, .tk-footer a, .tk-ph, .tk-ph-inline { overflow-wrap: anywhere; word-break: break-word; }

/* v2: partner logos, stats, corridor tables */
.tk-partners { text-align: center; }
.tk-partners-label { font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--tk-muted); margin-bottom: 24px !important; }
.tk-partners-logos { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 28px 64px; }
.tk-partners-logos li { height: 44px; display: flex; align-items: center; }
.tk-partners-logos img { height: 40px; width: auto; max-width: 190px; object-fit: contain; filter: grayscale(100%); opacity: .62; transition: filter .2s, opacity .2s; }
.tk-partners-logos li:hover img { filter: none; opacity: 1; }
.tk-stats { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 8px; }
.tk-stat { flex: 1 1 140px; background: #fff; border: 1px solid var(--tk-line); border-radius: var(--tk-radius); padding: 16px 18px; }
.tk-section:not(.alt) .tk-stat { background: var(--tk-surface); }
.tk-stat strong { display: block; font-size: 1.75rem; line-height: 1.1; color: var(--tk-primary); letter-spacing: -0.02em; }
.tk-stat span { display: block; font-size: 13.5px; color: var(--tk-muted); margin-top: 4px; }
.tk-table .tk-reg th { background: var(--tk-surface-blue); color: var(--tk-primary-dark); font-size: 12px; padding: 10px 20px; }
.tk-ccy { display: inline-block; font-family: var(--tk-mono); font-size: 13px; font-weight: 700; color: var(--tk-ink); background: var(--tk-surface); border: 1px solid var(--tk-line); border-radius: 6px; padding: 1px 7px; white-space: nowrap; }
.tk-corr td, .tk-corr th { padding: 12px 16px; }
.tk-corr { font-size: 14.5px; }
.tk-corr-full { font-size: 13.5px; }
.tk-corr-full td:first-child { white-space: normal; min-width: 110px; }
.tk-table-wrap { overflow-x: auto; border-radius: var(--tk-radius-lg); }
.tk-note { font-size: 13.5px; color: var(--tk-muted); margin-top: 14px !important; }
.tk-cta-mail { flex-basis: 100%; margin: 4px 0 0 !important; font-size: 15px; color: rgba(255,255,255,.8); }
.tk-cta-mail a { color: #fff !important; font-weight: 600; text-decoration: underline; }
@media (max-width: 640px) {
  .tk-partners-logos { gap: 22px 36px; }
  .tk-partners-logos img { height: 30px; max-width: 140px; }
  .tk-table .tk-reg th { display: block; }
  .tk-table-wrap { overflow: visible; }
}
.tk-corr-full td.rep { color: transparent; }
.tk-corr-full th:nth-child(3), .tk-corr-full td:nth-child(3) { min-width: 150px; }
.tk-corr-full th:nth-child(4), .tk-corr-full td:nth-child(4) { min-width: 90px; }
.tk-corr-full th:nth-child(5), .tk-corr-full td:nth-child(5) { min-width: 260px; }
.tk-corr-full th:nth-child(6), .tk-corr-full td:nth-child(6) { min-width: 200px; }
@media (max-width: 640px) { .tk-corr-full td.rep { color: var(--tk-ink); } .tk-corr-full td { min-width: 0 !important; } }
.tk-soon { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .02em; color: #8A4B00; background: #FFF1DB; border: 1px solid #F5C77E; border-radius: 999px; padding: 2px 10px; white-space: nowrap; }
.tk-chip-soon { background: #FFF1DB; border-color: #F5C77E; color: #8A4B00; }

/* v3: interactive corridor explorer */
.tk-stats { margin-bottom: 28px; }
.tk-explorer { margin-top: 8px; }
.tk-ex-controls { background: #fff; border: 1px solid var(--tk-line); border-radius: var(--tk-radius-lg); padding: 16px; margin-bottom: 20px; }
.tk-ex-controls[hidden] { display: none; }
.tk-segs { display: flex; flex-wrap: wrap; gap: 6px; padding-bottom: 14px; margin-bottom: 14px; border-bottom: 1px dashed var(--tk-line); }
.tk-seg { font: inherit; font-size: 14px; font-weight: 600; color: var(--tk-muted); background: var(--tk-surface); border: 1px solid var(--tk-line); border-radius: 999px; padding: 7px 16px; cursor: pointer; transition: background .15s, color .15s, border-color .15s; }
.tk-seg:hover { color: var(--tk-primary); border-color: var(--tk-primary); }
.tk-seg[aria-pressed="true"] { background: var(--tk-primary); border-color: var(--tk-primary); color: #fff; }
.tk-seg:focus-visible, .tk-cc summary:focus-visible, .tk-ex-field input:focus-visible, .tk-ex-field select:focus-visible { outline: 3px solid var(--tk-accent); outline-offset: 2px; }
.tk-ex-fields { display: grid; grid-template-columns: 2fr 1fr 1fr auto; gap: 12px; align-items: end; }
.tk-ex-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.tk-ex-field label { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--tk-muted); margin: 0; }
.tk-ex-field input, .tk-ex-field select { font: inherit; font-size: 15px; padding: 10px 12px; border: 1px solid var(--tk-line); border-radius: 8px; background: #fff; color: var(--tk-ink); width: 100%; }
.tk-ex-reset { padding: 10px 18px; font-size: 15px; }
.tk-ex-count { font-size: 13.5px; color: var(--tk-muted); margin: 12px 0 0 !important; }
.tk-ex-empty { text-align: center; padding: 40px 20px; border: 1px dashed var(--tk-line); border-radius: var(--tk-radius-lg); color: var(--tk-muted); background: #fff; }
.tk-cc-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 16px; align-items: start; }
.tk-cc[hidden] { display: none; }
.tk-cc details { background: #fff; border: 1px solid var(--tk-line); border-radius: var(--tk-radius-lg); transition: border-color .15s, box-shadow .15s; }
.tk-cc details:hover, .tk-cc details[open] { border-color: #C9D6F8; box-shadow: 0 14px 30px -22px rgba(52,93,232,.55); }
.tk-cc summary { list-style: none; cursor: pointer; padding: 18px 18px 16px; display: flex; flex-direction: column; gap: 10px; border-radius: var(--tk-radius-lg); }
.tk-cc summary::-webkit-details-marker { display: none; }
.tk-cc-top { display: flex; align-items: center; gap: 10px; }
.tk-cc-name { flex: 1; font-weight: 700; font-size: 1.05rem; color: var(--tk-ink); }
.tk-cc-ccys { display: flex; flex-wrap: wrap; gap: 6px; }
.tk-cc-methods { font-size: 14px; color: var(--tk-text); }
.tk-cc-more { font-size: 13.5px; font-weight: 600; color: var(--tk-primary); }
.tk-cc-more::after { content: "\203A"; display: inline-block; margin-left: 6px; transition: transform .15s; }
.tk-cc details[open] .tk-cc-more::after { transform: rotate(90deg); }
.tk-cc-more .c, .tk-cc details[open] .tk-cc-more .o { display: none; }
.tk-cc details[open] .tk-cc-more .c { display: inline; }
.tk-speed { font-size: 12px; font-weight: 700; padding: 3px 10px; border-radius: 999px; white-space: nowrap; border: 1px solid; }
.tk-speed.s0 { background: #E9F8F1; color: #0B6B45; border-color: #A9E4C8; }
.tk-speed.s1 { background: var(--tk-surface-blue); color: var(--tk-primary-dark); border-color: #C9D6F8; }
.tk-speed.s2 { background: #FFF7E6; color: #8A5300; border-color: #F3D49A; }
.tk-speed.s3 { background: var(--tk-surface); color: var(--tk-muted); border-color: var(--tk-line); }
.tk-routes { list-style: none; margin: 0; padding: 0 18px 16px; }
.tk-route { border-top: 1px solid var(--tk-line); padding: 12px 0; transition: opacity .15s; }
.tk-route.dim { opacity: .38; }
.tk-route-head { display: flex; align-items: center; gap: 8px; font-size: 14.5px; color: var(--tk-ink); margin-bottom: 6px; }
.tk-route-dl { margin: 0; display: grid; gap: 6px; font-size: 13.5px; }
.tk-route-dl div { display: grid; grid-template-columns: 118px 1fr; gap: 10px; }
.tk-route-dl dt { font-size: 11.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--tk-muted); padding-top: 2px; }
.tk-route-dl dd { margin: 0; color: var(--tk-text); }
.tk-cc details.soon { background: #FFFCF6; border-style: dashed; border-color: #F3D49A; }
@media (max-width: 991px) { .tk-ex-fields { grid-template-columns: 1fr 1fr; } .tk-ex-search { grid-column: 1 / -1; } }
@media (max-width: 640px) {
  .tk-ex-fields { grid-template-columns: 1fr; }
  .tk-segs { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .tk-seg { white-space: nowrap; }
  .tk-cc-grid { grid-template-columns: 1fr; }
  .tk-route-dl div { grid-template-columns: 1fr; gap: 2px; }
}
@media (prefers-reduced-motion: reduce) { .tk-cc details, .tk-route, .tk-cc-more::after, .tk-seg { transition: none; } }
