:root {
    --yellow: #ffd800;
    --yellow2: #ffeb58;
    --blue: #183b9e;
    --blue2: #3157d7;
    --text: #20252d;
    --muted: #697586;
    --line: #e4e8ef;
    --bg: #f6f8fb;
    --green: #16b36a;
    --orange: #ff7043;
    --shadow: 0 4px 16px rgba(30, 45, 70, .10)
}

* {
    box-sizing: border-box
}

html,
body {
    margin: 0;
    padding: 0;
    font-family: Arial, Helvetica, sans-serif;
    color: var(--text);
    background: var(--bg)
}

a {
    color: inherit;
    text-decoration: none
}

img {
    max-width: 100%
}

.vct-header {
    background: var(--yellow);
    box-shadow: 0 2px 10px rgba(0, 0, 0, .12);
    position: sticky;
    top: 0;
    z-index: 50
}

.vct-topbar {
    max-width: 1180px;
    margin: auto;
    min-height: 66px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    gap: 28px
}

.vct-logo {
    display: flex;
    flex-direction: column;
    line-height: 1;
    min-width: 250px
}

.vct-logo-yellow {
    font-size: 11px;
    letter-spacing: 2px;
    color: #c58c00;
    font-weight: 700
}

.vct-logo strong {
    font-size: 18px;
    color: #123d9f;
    margin-top: 4px
}

.vct-nav {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 13px;
    font-weight: 600
}

.vct-nav a:hover {
    text-decoration: underline
}

.vct-register-link {
    color: #153a9b
}

.vct-menu {
    display: none;
    border: 0;
    background: transparent;
    font-size: 24px
}

.vct-mobile-nav {
    background: #fff;
    border-bottom: 1px solid var(--line);
    padding: 10px 16px;
    gap: 8px;
    flex-wrap: wrap
}

.vct-mobile-nav a {
    padding: 9px 12px;
    background: #f4f6fa;
    border-radius: 8px
}

.vct-hero {
    background: linear-gradient(180deg, #ffeb4e 0, #ffef72 100%);
    padding: 46px 16px 38px
}

.vct-hero-inner {
    max-width: 900px;
    margin: auto;
    text-align: center
}

.vct-hero h1 {
    font-size: 30px;
    color: #2451ce;
    margin: 0 0 8px;
    font-weight: 700
}

.vct-hero p {
    margin: 0 0 20px;
    color: #4c5360
}

.vct-search {
    max-width: 900px;
    margin: 0 auto;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(25, 45, 75, .16);
    padding: 8px
}

.vct-search-main {
    display: flex;
    align-items: center
}

.vct-search-main>span {
    font-size: 24px;
    color: #8c97a8;
    padding: 0 8px
}

.vct-search-main input {
    flex: 1;
    border: 0;
    outline: 0;
    font-size: 14px;
    padding: 12px
}

.vct-search-main button,
.vct-simple-search button {
    background: var(--blue);
    color: #fff;
    border: 0;
    border-radius: 8px;
    padding: 11px 20px;
    font-weight: 700;
    cursor: pointer
}

.vct-search-filters {
    display: flex;
    gap: 8px;
    padding: 4px 6px
}

.vct-search-filters select {
    flex: 1;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 8px;
    background: #fff;
    color: #555
}

.vct-container {
    max-width: 1180px;
    margin: 0 auto;
    padding: 14px 16px 44px
}

.vct-banner-row {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 10px;
    margin: 0 0 16px
}

.vct-banner-row a,
.vct-banner-wide a {
    display: block;
    border-radius: 7px;
    overflow: hidden;
    background: #fff;
    box-shadow: var(--shadow)
}

.vct-banner-row img,
.vct-banner-wide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.vct-section {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 14px;
    margin-bottom: 14px
}

.vct-section-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 12px
}

.vct-section-head h2,
.vct-page-head h1 {
    margin: 2px 0 5px;
    font-size: 20px
}

.vct-section-head p {
    margin: 0;
    color: var(--muted);
    font-size: 12px
}

.vct-section-head.compact {
    margin-bottom: 10px
}

.vct-kicker {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .12em;
    color: var(--blue2)
}

.vct-kicker.orange {
    color: var(--orange)
}

.vct-more {
    font-size: 12px;
    color: var(--blue);
    font-weight: 700
}

.vct-business-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 9px
}

.vct-business-card {
    position: relative;
    display: flex;
    gap: 10px;
    background: #fff;
    border: 1px solid #e8ebf0;
    border-radius: 8px;
    padding: 10px;
    min-height: 86px;
    box-shadow: 0 2px 7px rgba(25, 45, 70, .05)
}

.vct-business-card:hover {
    border-color: #bfcaf0;
    box-shadow: 0 5px 15px rgba(25, 45, 70, .10)
}

.vct-business-logo {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    border: 1px solid #edf0f4;
    border-radius: 7px;
    background: #fff;
    display: grid;
    place-items: center;
    overflow: hidden
}

.vct-business-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.vct-business-logo span {
    font-size: 18px;
    font-weight: 700;
    color: var(--blue)
}

.vct-business-info {
    min-width: 0;
    flex: 1
}

.vct-card-title {
    display: flex;
    align-items: flex-start;
    gap: 5px
}

.vct-card-title h3 {
    font-size: 12px;
    line-height: 1.35;
    margin: 0;
    flex: 1
}

.vct-card-title h3 a:hover {
    color: var(--blue)
}

.vct-verified {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    background: #eafaf2;
    color: #0b9b59;
    border-radius: 10px;
    padding: 2px 6px;
    font-size: 9px;
    font-weight: 700;
    white-space: nowrap
}

.vct-verified.large {
    font-size: 11px;
    padding: 5px 8px
}

.vct-industry-link {
    display: block;
    font-size: 10px;
    color: var(--blue2);
    margin: 4px 0
}

.vct-address {
    font-size: 9px;
    color: #818b99;
    margin: 3px 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.vct-card-meta {
    display: flex;
    gap: 9px;
    color: #697586;
    font-size: 9px;
    flex-wrap: wrap
}

.vct-featured-dot {
    position: absolute;
    right: 7px;
    bottom: 7px;
    color: #f08b00;
    font-size: 8px;
    font-weight: 700
}

.vct-blue-btn {
    display: inline-block;
    background: var(--blue2);
    color: #fff;
    border-radius: 7px;
    padding: 9px 15px;
    font-size: 11px;
    font-weight: 700;
    border: 0;
    cursor: pointer
}

.vct-center {
    text-align: center;
    margin-top: 12px
}

.vct-banner-wide {
    margin: 0 0 16px
}

.vct-two-col {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 16px;
    margin-bottom: 16px
}

.vct-news-list,
.vct-side-news {
    display: grid;
    gap: 8px
}

.vct-news-item {
    display: grid;
    grid-template-columns: 125px 1fr;
    gap: 10px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 8px
}

.vct-news-image {
    display: block;
    height: 92px;
    overflow: hidden;
    border-radius: 6px
}

.vct-news-image img,
.vct-side-news img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.vct-news-item h3 {
    font-size: 13px;
    margin: 5px 0;
    line-height: 1.35
}

.vct-news-item p {
    font-size: 10px;
    color: #687386;
    margin: 0 0 4px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.vct-news-item small {
    font-size: 9px;
    color: #8a95a4
}

.vct-side-news article {
    display: grid;
    grid-template-columns: 75px 1fr;
    gap: 8px;
    border-bottom: 1px solid var(--line);
    padding-bottom: 8px
}

.vct-side-news article>a {
    height: 58px;
    overflow: hidden;
    border-radius: 6px
}

.vct-side-news h3 {
    font-size: 11px;
    line-height: 1.3;
    margin: 4px 0
}

.vct-pill {
    display: inline-block;
    font-size: 8px;
    font-weight: 700;
    border-radius: 9px;
    padding: 3px 6px
}

.vct-pill.green {
    background: #dff8eb;
    color: #0a9d59
}

.vct-pill.blue {
    background: #e8edff;
    color: #3157d7
}

.vct-industry-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 9px
}

.vct-industry {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 12px 7px;
    text-align: center;
    min-height: 112px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px
}

.vct-industry:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow)
}

.vct-industry-icon {
    width: 44px;
    height: 44px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    background: #eef2ff;
    color: var(--blue);
    font-size: 26px
}

.vct-industry b {
    font-size: 10px;
    line-height: 1.25
}

.vct-industry small {
    font-size: 8px;
    color: #8b95a3
}

.vct-about {
    display: flex;
    gap: 12px;
    background: #eaf2ff;
    border: 1px solid #d8e5fb;
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 16px
}

.vct-about-icon {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #d7e5ff;
    color: var(--blue);
    display: grid;
    place-items: center;
    font-weight: 700;
    flex: 0 0 26px
}

.vct-about h2 {
    font-size: 16px;
    margin: 0 0 7px
}

.vct-about p {
    font-size: 11px;
    line-height: 1.6;
    color: #586577;
    margin: 0
}

.vct-stats {
    display: flex;
    gap: 20px;
    margin-top: 10px;
    font-size: 10px;
    color: #657080
}

.vct-stats b {
    font-size: 16px;
    color: var(--blue);
    margin-right: 3px
}

.vct-alphabet {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 16px;
    text-align: center
}

.vct-alphabet h2 {
    font-size: 12px;
    margin: 0 0 12px
}

.vct-alphabet div,
.vct-alpha {
    display: flex;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap
}

.vct-alphabet a,
.vct-alpha a {
    min-width: 29px;
    padding: 8px 7px;
    border-radius: 6px;
    background: var(--yellow);
    font-size: 10px;
    font-weight: 700
}

.vct-page {
    padding-top: 22px
}

.vct-breadcrumb {
    font-size: 11px;
    color: #7c8796;
    margin-bottom: 18px
}

.vct-breadcrumb span {
    padding: 0 5px
}

.vct-page-head {
    text-align: center;
    margin: 10px auto 18px;
    max-width: 760px
}

.vct-page-head p {
    color: var(--muted);
    font-size: 13px
}

.vct-simple-search {
    display: flex;
    max-width: 650px;
    margin: 0 auto 14px;
    background: #fff;
    border: 1px solid var(--line);
    padding: 6px;
    border-radius: 9px
}

.vct-simple-search input {
    flex: 1;
    border: 0;
    outline: 0;
    padding: 10px
}

.vct-alpha {
    justify-content: flex-start;
    margin: 0 0 14px
}

.vct-alpha a {
    background: #fff;
    border: 1px solid var(--line)
}

.vct-alpha a:hover {
    background: var(--yellow)
}

.vct-industry-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px
}

.vct-industry-list a {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 14px;
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 4px 9px
}

.vct-industry-list a span {
    grid-row: span 2;
    width: 34px;
    height: 34px;
    background: #eef2ff;
    color: var(--blue);
    border-radius: 7px;
    display: grid;
    place-items: center
}

.vct-industry-list b {
    font-size: 12px
}

.vct-industry-list small {
    font-size: 9px;
    color: #8b95a3
}

.vct-location-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px
}

.vct-location-grid a {
    background: #fff;
    border: 1px solid var(--line);
    padding: 15px;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px
}

.vct-location-grid a:hover {
    border-color: #b9c5ed
}

.vct-location-grid b {
    font-size: 12px
}

.vct-location-grid span {
    font-size: 9px;
    color: #8791a0
}

.vct-result-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 14px 0 8px;
    font-size: 12px;
    color: #7b8593
}

.vct-business-list {
    display: grid;
    gap: 9px
}

.vct-business-list .vct-business-card {
    min-height: 96px
}

.vct-pagination {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin: 18px 0
}

.vct-pagination a {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 8px 11px;
    font-size: 11px
}

.vct-pagination a.active {
    background: var(--blue);
    color: #fff;
    border-color: var(--blue)
}

.vct-empty {
    background: #f8fafc;
    border: 1px dashed #d7dde6;
    border-radius: 8px;
    padding: 22px;
    text-align: center;
    color: #7b8593;
    font-size: 12px
}

.vct-empty.big {
    padding: 60px 20px
}

.vct-detail {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 22px;
    margin-bottom: 16px
}

.vct-detail-main {
    display: flex;
    gap: 18px;
    align-items: center;
    border-bottom: 1px solid var(--line);
    padding-bottom: 18px
}

.vct-detail-logo {
    width: 100px;
    height: 100px;
    border: 1px solid var(--line);
    border-radius: 12px;
    display: grid;
    place-items: center;
    overflow: hidden;
    background: #fff
}

.vct-detail-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.vct-detail-logo span {
    font-size: 36px;
    color: var(--blue);
    font-weight: 700
}

.vct-detail h1 {
    font-size: 26px;
    margin: 5px 0 8px
}

.vct-lead {
    color: #677384;
    font-size: 13px;
    line-height: 1.6;
    max-width: 760px
}

.vct-contact-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 18px 0
}

.vct-contact-grid>div {
    background: #f7f9fc;
    border-radius: 8px;
    padding: 11px;
    display: flex;
    flex-direction: column;
    gap: 4px
}

.vct-contact-grid b {
    font-size: 10px;
    color: #6e7888
}

.vct-contact-grid span,
.vct-contact-grid a {
    font-size: 12px
}

.vct-description {
    font-size: 13px;
    line-height: 1.7
}

.vct-description h2 {
    font-size: 18px
}

.vct-register,
.vct-contact-page {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 25px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 26px
}

.vct-register h1,
.vct-contact-page h1 {
    font-size: 28px;
    margin: 5px 0 10px
}

.vct-register p,
.vct-contact-page p {
    color: #677384;
    line-height: 1.6
}

.vct-register ul {
    padding-left: 18px;
    color: #536071;
    line-height: 2
}

.vct-register form,
.vct-contact-page form {
    display: grid;
    gap: 10px
}

.vct-register label,
.vct-contact-page label {
    font-size: 11px;
    font-weight: 700;
    color: #596474;
    display: grid;
    gap: 5px
}

.vct-register input,
.vct-register textarea,
.vct-contact-page input,
.vct-contact-page textarea {
    border: 1px solid #dfe4ec;
    border-radius: 7px;
    padding: 10px;
    outline: 0;
    font: inherit;
    font-size: 12px
}

.vct-register input:focus,
.vct-register textarea:focus,
.vct-contact-page input:focus,
.vct-contact-page textarea:focus {
    border-color: #9caee9
}

.vct-contact-box {
    display: grid;
    gap: 8px;
    background: #f6f8fc;
    padding: 15px;
    border-radius: 8px;
    margin-top: 15px;
    font-size: 12px
}

.vct-event-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px
}

.vct-event-grid article {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 8px;
    overflow: hidden
}

.vct-event-grid img {
    width: 100%;
    height: 180px;
    object-fit: cover
}

.vct-event-grid article>div {
    padding: 12px
}

.vct-event-grid h2 {
    font-size: 15px;
    margin: 6px 0
}

.vct-event-grid p {
    font-size: 11px;
    line-height: 1.5;
    color: #6d7786
}

.vct-footer {
    background: #ffdb00;
    margin-top: 10px
}

.vct-footer-grid {
    max-width: 1180px;
    margin: auto;
    padding: 30px 16px;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 40px
}

.vct-footer h3 {
    font-size: 14px;
    margin: 0 0 10px
}

.vct-footer p,
.vct-footer a {
    display: block;
    font-size: 11px;
    line-height: 1.7;
    color: #333
}

.vct-footer a:hover {
    text-decoration: underline
}

.vct-footer-bottom {
    background: #080808;
    color: #fff;
    text-align: center;
    padding: 10px;
    font-size: 10px
}

@media(max-width:900px) {
    .vct-nav {
        gap: 10px;
        font-size: 11px
    }

    .vct-logo {
        min-width: 190px
    }

    .vct-business-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .vct-industry-grid {
        grid-template-columns: repeat(4, 1fr)
    }

    .vct-location-grid {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media(max-width:700px) {
    .vct-topbar {
        min-height: 58px
    }

    .vct-nav {
        display: none
    }

    .vct-menu {
        display: block;
        margin-left: auto
    }

    .vct-logo strong {
        font-size: 15px
    }

    .vct-logo-yellow {
        font-size: 9px
    }

    .vct-hero {
        padding: 28px 10px
    }

    .vct-hero h1 {
        font-size: 23px
    }

    .vct-search-filters {
        display: none
    }

    .vct-search-main button {
        padding: 10px 12px;
        font-size: 11px
    }

    .vct-banner-row {
        grid-template-columns: 1fr
    }

    .vct-banner-side {
        display: none !important
    }

    .vct-business-grid {
        grid-template-columns: 1fr
    }

    .vct-two-col {
        grid-template-columns: 1fr
    }

    .vct-industry-grid {
        grid-template-columns: repeat(3, 1fr)
    }

    .vct-industry-list {
        grid-template-columns: 1fr
    }

    .vct-location-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .vct-contact-grid {
        grid-template-columns: 1fr
    }

    .vct-register,
    .vct-contact-page {
        grid-template-columns: 1fr;
        padding: 18px
    }

    .vct-detail-main {
        align-items: flex-start
    }

    .vct-detail-logo {
        width: 76px;
        height: 76px;
        flex-basis: 76px
    }

    .vct-detail h1 {
        font-size: 20px
    }

    .vct-event-grid {
        grid-template-columns: 1fr
    }

    .vct-footer-grid {
        grid-template-columns: 1fr;
        gap: 18px
    }

    .vct-news-item {
        grid-template-columns: 95px 1fr
    }

    .vct-news-image {
        height: 75px
    }

    .vct-side-news article {
        grid-template-columns: 85px 1fr
    }

    .vct-about {
        align-items: flex-start
    }

    .vct-stats {
        flex-wrap: wrap;
        gap: 10px
    }
}

.vct-header {
    background: #ffd400 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .12)
}

.vct-logo strong {
    color: #0b4aa2 !important
}

.vct-logo-yellow {
    color: #111 !important
}

.vct-hero {
    background: linear-gradient(135deg, #fff59a 0%, #ffd400 100%) !important
}

.vct-blue-btn,
.vct-search-main button {
    background: #2554d9 !important
}

.vct-kicker {
    color: #2554d9 !important
}

@media(max-width:800px) {
    .vct-nav {
        display: none !important
    }

    .vct-topbar {
        padding: 10px 12px !important
    }

    .vct-hero {
        padding: 30px 15px !important
    }
}

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden
}

.vct-container,
.vct-topbar,
.vct-footer-grid {
    width: 100%;
    min-width: 0
}

.vct-section,
.vct-two-col,
.vct-banner-row,
.vct-business-grid,
.vct-industry-grid,
.vct-register,
.vct-contact-page {
    min-width: 0
}

.vct-business-info,
.vct-section-head>div {
    min-width: 0
}

.vct-card-title h3,
.vct-side-news h3,
.vct-news-item h3 {
    overflow-wrap: anywhere
}

.vct-form-alert {
    max-width: 1180px;
    margin: 0 auto 12px;
    padding: 11px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700
}

.vct-form-alert.success {
    background: #eafaf2;
    color: #087c47;
    border: 1px solid #bfe9d2
}

.vct-form-alert.error {
    background: #fff1f2;
    color: #b42318;
    border: 1px solid #f5c2c7
}

.vct-register-note {
    margin-top: 14px;
    padding: 11px 12px;
    border-radius: 8px;
    background: #fff8d6;
    border: 1px solid #ffe48a;
    color: #5e5200;
    font-size: 11px;
    line-height: 1.55
}

.vct-register form small {
    font-size: 10px;
    color: #7c8796;
    font-weight: 500
}

.vct-check-label {
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 8px !important;
    background: #f7f9fc;
    padding: 10px;
    border-radius: 7px
}

.vct-check-label input {
    width: 17px;
    height: 17px;
    margin: 0
}

.vct-news-excerpt {
    font-size: 9px;
    color: #758094;
    margin: 3px 0;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

@media(max-width:700px) {
    .vct-search-filters {
        display: grid !important;
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 6px
    }

    .vct-search-main input {
        min-width: 0
    }

    .vct-search-main button {
        white-space: nowrap
    }

    .vct-section-head {
        align-items: flex-start
    }

    .vct-section-head .vct-more {
        white-space: nowrap
    }

    .vct-detail-main {
        min-width: 0
    }

    .vct-detail-main>div:last-child {
        min-width: 0
    }

    .vct-register h1,
    .vct-contact-page h1 {
        font-size: 24px
    }

    .vct-event-grid img {
        height: 150px
    }
}

.vct-banner-row a,
.vct-banner-wide a {
    min-height: 0
}

.vct-banner-row img,
.vct-banner-wide img {
    background: #fff
}

.vct-news-image img {
    display: block
}

.vct-event-grid article>a.vct-news-image {
    display: block;
    height: 180px;
    overflow: hidden
}

.vct-event-grid article>a.vct-news-image img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.vct-event-grid h2 a:hover {
    color: var(--blue)
}

.vct-register input[type=file] {
    padding: 8px;
    background: #fff
}

.vct-register input[type=file]::file-selector-button {
    border: 0;
    background: #eef2ff;
    color: var(--blue);
    border-radius: 6px;
    padding: 7px 10px;
    margin-right: 8px;
    cursor: pointer
}

@media(max-width:900px) {
    .vct-topbar {
        gap: 16px
    }

    .vct-logo {
        min-width: 210px
    }

    .vct-nav {
        gap: 12px
    }

    .vct-business-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .vct-two-col {
        grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr)
    }
}

@media(max-width:700px) {
    .vct-topbar {
        min-height: 60px
    }

    .vct-logo {
        min-width: 0
    }

    .vct-business-grid,
    .vct-two-col,
    .vct-event-grid {
        grid-template-columns: 1fr
    }

    .vct-banner-row {
        grid-template-columns: 1fr
    }

    .vct-banner-side {
        display: block !important
    }

    .vct-banner-row img {
        height: auto;
        min-height: 0
    }

    .vct-event-grid article>a.vct-news-image {
        height: 150px
    }

    .vct-search-main {
        min-width: 0
    }

    .vct-search-main input {
        font-size: 13px
    }

    .vct-search-main button {
        flex: 0 0 auto
    }

    .vct-container {
        padding-left: 12px;
        padding-right: 12px
    }
}

.vct-body {
    font-size: 16px;
    line-height: 1.55
}

.vct-container,
.vct-topbar,
.vct-footer-grid {
    max-width: 1240px
}

.vct-topbar {
    min-height: 76px
}

.vct-logo strong {
    font-size: 22px
}

.vct-logo-yellow {
    font-size: 12px
}

.vct-nav {
    font-size: 15px;
    gap: 22px
}

.vct-hero {
    padding: 54px 16px 44px
}

.vct-hero h1 {
    font-size: 38px
}

.vct-hero p {
    font-size: 16px
}

.vct-search {
    max-width: 1040px
}

.vct-search-main input {
    font-size: 16px
}

.vct-search-filters select {
    font-size: 15px;
    padding: 12px
}

.vct-section {
    padding: 20px
}

.vct-section-head h2 {
    font-size: 25px
}

.vct-business-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px
}

.vct-business-card {
    min-height: 104px;
    padding: 13px
}

.vct-business-logo {
    width: 58px;
    height: 58px;
    flex-basis: 58px
}

.vct-card-title h3 {
    font-size: 15px
}

.vct-industry-link {
    font-size: 12px
}

.vct-address,
.vct-card-meta {
    font-size: 11px
}

.vct-page-head h1 {
    font-size: 32px
}

.vct-page-head p {
    font-size: 15px
}

.vct-register-modern {
    align-items: start
}

.vct-register-modern form {
    background: #fff
}

.vct-form-section-title {
    font-size: 15px;
    font-weight: 700;
    color: #183b9e;
    border-bottom: 1px solid var(--line);
    padding-bottom: 8px;
    margin-bottom: 2px
}

.vct-form-2col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px
}

.vct-register label {
    font-size: 13px
}

.vct-register input,
.vct-register textarea {
    font-size: 14px;
    padding: 12px
}

.vct-register-note {
    font-size: 12px
}

.vct-logo-upload {
    border: 1px dashed #cbd5e1 !important;
    background: #f8fafc !important
}

.vct-submit-btn {
    font-size: 14px;
    padding: 12px 18px
}

.vct-event-grid h2 {
    font-size: 19px
}

.vct-footer p,
.vct-footer a {
    font-size: 13px
}

@media(max-width:900px) {
    .vct-business-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .vct-nav {
        gap: 12px;
        font-size: 13px
    }

    .vct-logo {
        min-width: 200px
    }
}

@media(max-width:700px) {
    .vct-hero h1 {
        font-size: 29px
    }

    .vct-container {
        padding-left: 12px;
        padding-right: 12px
    }

    .vct-section {
        padding: 14px
    }

    .vct-business-grid,
    .vct-two-col,
    .vct-event-grid {
        grid-template-columns: 1fr
    }

    .vct-form-2col {
        grid-template-columns: 1fr
    }

    .vct-register-modern {
        padding: 18px
    }

    .vct-register h1 {
        font-size: 25px
    }

    .vct-search-main {
        display: flex
    }

    .vct-search-main input {
        font-size: 14px
    }

    .vct-search-main button {
        font-size: 13px
    }

    .vct-nav {
        display: none !important
    }
}

.vct-feature-section {
    overflow: hidden
}

.vct-featured-grid {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch
}

.vct-featured-grid>.vct-business-card {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden
}

.vct-featured-grid .vct-business-info {
    min-width: 0;
    max-width: 100%
}

.vct-featured-grid .vct-card-title {
    min-width: 0;
    max-width: 100%
}

.vct-featured-grid .vct-card-title h3 {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

.vct-featured-grid .vct-address {
    max-width: 100%
}

.vct-banner-side img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover
}

.vct-register-modern {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    overflow: hidden
}

.vct-register-modern>* {
    min-width: 0
}

.vct-register-modern form {
    min-width: 0
}

.vct-register-modern select {
    width: 100%;
    border: 1px solid #dfe4ec;
    border-radius: 7px;
    padding: 12px;
    outline: 0;
    background: #fff;
    font: inherit;
    font-size: 14px;
    color: #20252d
}

.vct-register-modern select:focus {
    border-color: #9caee9
}

.vct-register-benefits {
    display: grid;
    gap: 9px;
    margin: 20px 0
}

.vct-register-benefits>div {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 12px;
    background: #f7f9fc;
    border: 1px solid #e8edf5;
    border-radius: 9px
}

.vct-register-benefits b {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: #eef2ff;
    color: #2554d9;
    font-size: 11px;
    flex: 0 0 30px
}

.vct-register-benefits span {
    font-size: 13px;
    color: #4e5c70;
    font-weight: 600
}

.vct-form-section-title {
    margin-top: 0 !important
}

@media(max-width:1000px) {
    .vct-featured-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .vct-register-modern {
        grid-template-columns: 1fr
    }
}

@media(max-width:700px) {
    .vct-featured-grid {
        grid-template-columns: 1fr;
        gap: 10px
    }

    .vct-featured-grid>.vct-business-card {
        min-height: 92px
    }

    .vct-register-modern {
        padding: 16px !important
    }

    .vct-register-benefits {
        margin: 14px 0
    }

    .vct-register-modern select {
        font-size: 14px
    }
}

.vct-header,
.vct-hero,
.vct-container,
.vct-section,
.vct-two-col,
.vct-banner-row,
.vct-banner-wide,
.vct-featured-grid,
.vct-business-grid {
    max-width: 100%;
    overflow-x: hidden
}

.vct-topbar,
.vct-container {
    margin-left: auto;
    margin-right: auto
}

.vct-business-card,
.vct-business-info,
.vct-card-title,
.vct-section-head {
    min-width: 0
}

.vct-nav {
    min-width: 0;
    flex-wrap: wrap
}

@media(max-width:1050px) {
    .vct-nav {
        display: none !important
    }

    .vct-menu {
        display: block;
        margin-left: auto
    }
}

.vct-body {
    min-width: 320px;
    background: linear-gradient(180deg, #f7f9fc 0%, #eef3f8 100%);
    color: #172033
}

.vct-topbar,
.vct-container,
.vct-footer-grid {
    width: calc(100% - 32px);
    max-width: 1800px
}

.vct-topbar {
    min-height: 82px;
    padding: 12px 0;
    gap: 28px
}

.vct-logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-width: 240px;
    height: 52px
}

.vct-logo img {
    display: block;
    width: 225px;
    height: auto;
    max-height: 52px;
    object-fit: contain;
    object-position: left center
}

.vct-nav {
    flex: 1;
    justify-content: flex-end;
    gap: 10px;
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap
}

.vct-nav a {
    padding: 10px 11px;
    border-radius: 10px;
    transition: .18s ease
}

.vct-nav a:hover {
    background: rgba(255, 255, 255, .65);
    text-decoration: none;
    color: #1247ad
}

.vct-nav .vct-register-link {
    background: #1555c8;
    color: #fff;
    box-shadow: 0 8px 20px rgba(21, 85, 200, .18)
}

.vct-nav .vct-register-link:hover {
    background: #0d45ad;
    color: #fff
}

.vct-hero {
    position: relative;
    overflow: hidden;
    padding: 70px 16px 58px;
    background: radial-gradient(circle at 85% 15%, rgba(255, 255, 255, .65), transparent 28%), linear-gradient(135deg, #fff8b0 0%, #ffd400 54%, #ffc400 100%) !important
}

.vct-hero:after {
    content: "";
    position: absolute;
    inset: auto -10% -110px auto;
    width: 480px;
    height: 240px;
    border-radius: 50%;
    background: rgba(21, 85, 200, .10);
    transform: rotate(-12deg)
}

.vct-hero-inner {
    position: relative;
    z-index: 1;
    max-width: 1120px
}

.vct-hero h1 {
    font-size: 48px;
    line-height: 1.08;
    letter-spacing: -.04em;
    color: #123e9d;
    margin: 0 0 12px;
    text-shadow: 0 2px 0 rgba(255, 255, 255, .45)
}

.vct-hero p {
    font-size: 18px;
    color: #4d5666;
    margin: 0 0 26px
}

.vct-search {
    max-width: 1120px;
    border: 1px solid rgba(21, 85, 200, .10);
    border-radius: 18px;
    padding: 10px;
    box-shadow: 0 18px 45px rgba(22, 42, 76, .16)
}

.vct-search-main input {
    font-size: 16px;
    padding: 15px 10px
}

.vct-search-main button {
    border-radius: 12px;
    padding: 13px 24px;
    font-size: 14px
}

.vct-search-filters {
    padding: 6px 4px 2px;
    gap: 10px
}

.vct-search-filters select {
    border-radius: 10px;
    padding: 11px 12px
}

.vct-container {
    padding: 28px 0 64px
}

.vct-home .vct-banner-row {
    grid-template-columns: minmax(0, 1.85fr) minmax(300px, .85fr);
    gap: 18px;
    margin-bottom: 22px
}

.vct-banner-row a,
.vct-banner-wide a {
    border-radius: 18px;
    border: 1px solid rgba(18, 62, 157, .08);
    box-shadow: 0 12px 30px rgba(26, 45, 76, .09);
    transition: transform .2s ease, box-shadow .2s ease
}

.vct-banner-row a:hover,
.vct-banner-wide a:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(26, 45, 76, .13)
}

.vct-banner-row img {
    width: 100%;
    height: 350px;
    object-fit: cover
}

.vct-banner-wide {
    margin: 0 0 22px
}

.vct-banner-wide img {
    height: 360px;
    object-fit: cover
}

.vct-section {
    border: 1px solid #e5eaf1;
    border-radius: 18px;
    padding: 24px;
    margin-bottom: 22px;
    box-shadow: 0 10px 28px rgba(20, 36, 64, .05)
}

.vct-section-head {
    margin-bottom: 18px
}

.vct-section-head h2 {
    font-size: 27px;
    letter-spacing: -.025em
}

.vct-section-head p {
    font-size: 13px
}

.vct-kicker {
    font-size: 11px;
    letter-spacing: .16em
}

.vct-more {
    font-size: 13px;
    padding: 8px 12px;
    border-radius: 9px;
    background: #eef3ff
}

.vct-business-grid,
.vct-featured-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px
}

.vct-business-card {
    min-width: 0;
    min-height: 124px;
    padding: 15px;
    border-radius: 14px;
    border-color: #e6ebf2;
    box-shadow: 0 5px 18px rgba(20, 36, 64, .055);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease
}

.vct-business-card:hover {
    transform: translateY(-3px);
    border-color: #c7d5fb;
    box-shadow: 0 14px 30px rgba(20, 36, 64, .11)
}

.vct-business-logo {
    width: 64px;
    height: 64px;
    flex-basis: 64px;
    border-radius: 12px
}

.vct-card-title h3 {
    font-size: 15px;
    line-height: 1.35
}

.vct-industry-link {
    font-size: 12px;
    margin: 5px 0
}

.vct-address,
.vct-card-meta {
    font-size: 11px
}

.vct-featured-dot {
    right: 12px;
    bottom: 11px;
    font-size: 9px;
    background: #fff7e6;
    padding: 4px 7px;
    border-radius: 999px
}

.vct-two-col {
    grid-template-columns: minmax(0, 1.65fr) minmax(330px, .85fr);
    gap: 22px;
    margin-bottom: 22px
}

.vct-news-item {
    border-radius: 14px;
    padding: 10px;
    box-shadow: 0 5px 18px rgba(20, 36, 64, .04)
}

.vct-news-image {
    height: 110px;
    border-radius: 10px
}

.vct-news-item h3 {
    font-size: 14px
}

.vct-side-news article {
    padding-bottom: 12px;
    grid-template-columns: 92px minmax(0, 1fr)
}

.vct-side-news article>a {
    height: 70px;
    border-radius: 9px
}

.vct-side-news h3 {
    font-size: 12px
}

.vct-industry-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px
}

.vct-industry {
    min-width: 0;
    min-height: 128px;
    border-radius: 14px;
    padding: 15px 10px;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease
}

.vct-industry:hover {
    transform: translateY(-3px);
    border-color: #c7d5fb;
    box-shadow: 0 14px 28px rgba(20, 36, 64, .08)
}

.vct-industry b {
    font-size: 11px
}

.vct-about {
    border-radius: 18px;
    padding: 22px;
    margin-bottom: 22px;
    box-shadow: 0 10px 28px rgba(20, 36, 64, .05)
}

.vct-alphabet {
    border-radius: 18px;
    box-shadow: 0 10px 28px rgba(20, 36, 64, .04)
}

.vct-footer {
    margin-top: 0;
    background: linear-gradient(135deg, #ffd400, #ffdf38)
}

.vct-footer-grid {
    padding: 42px 0;
    gap: 50px
}

.vct-footer p,
.vct-footer a {
    font-size: 13px
}

.vct-footer-bottom {
    padding: 13px;
    font-size: 11px
}

.directory-reg-page {
    max-width: 1500px !important
}

.directory-reg-page .admin-hero {
    border-radius: 22px !important;
    background: linear-gradient(135deg, #172d50, #2454a8) !important;
    box-shadow: 0 18px 45px rgba(20, 43, 80, .16)
}

.directory-reg-page .admin-kpis {
    gap: 16px
}

.directory-reg-page .admin-card {
    border-radius: 16px !important;
    box-shadow: 0 10px 28px rgba(20, 36, 64, .07)
}

.directory-reg-page .admin-panel {
    border-radius: 18px !important;
    overflow: hidden
}

.directory-reg-page .table-scroll {
    overflow: auto;
    max-width: 100%
}

.directory-reg-page table {
    min-width: 1160px;
    border-collapse: separate;
    border-spacing: 0
}

.directory-reg-page th {
    background: #f7f9fc;
    position: sticky;
    top: 0;
    z-index: 1
}

.directory-reg-page td,
.directory-reg-page th {
    padding: 14px 13px !important;
    vertical-align: middle
}

.directory-reg-page tr:hover td {
    background: #fbfdff
}

.directory-reg-page .payment-actions {
    display: flex;
    gap: 7px;
    flex-wrap: wrap
}

.directory-reg-page .payment-actions form {
    margin: 0
}

.directory-reg-page .btn {
    border-radius: 10px !important
}

@media(max-width:1250px) {
    .vct-nav {
        gap: 4px;
        font-size: 13px
    }

    .vct-nav a {
        padding: 9px 7px
    }

    .vct-business-grid,
    .vct-featured-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .vct-industry-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }
}

@media(max-width:1050px) {
    .vct-topbar {
        gap: 16px
    }

    .vct-nav {
        display: none !important
    }

    .vct-menu {
        display: block;
        margin-left: auto
    }

    .vct-home .vct-banner-row {
        grid-template-columns: minmax(0, 1.6fr) minmax(260px, 1fr)
    }

    .vct-banner-row img {
        height: 250px
    }

    .vct-business-grid,
    .vct-featured-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .vct-two-col {
        grid-template-columns: 1fr
    }
}

@media(max-width:700px) {

    .vct-topbar,
    .vct-container,
    .vct-footer-grid {
        width: calc(100% - 24px)
    }

    .vct-topbar {
        min-height: 64px;
        padding: 8px 0
    }

    .vct-logo {
        min-width: 0;
        width: 190px;
        height: 44px
    }

    .vct-logo img {
        width: 190px;
        max-height: 44px
    }

    .vct-hero {
        padding: 44px 12px 34px
    }

    .vct-hero h1 {
        font-size: 31px
    }

    .vct-hero p {
        font-size: 14px
    }

    .vct-search {
        border-radius: 14px;
        padding: 8px
    }

    .vct-search-main input {
        font-size: 14px;
        padding: 12px 7px
    }

    .vct-search-main button {
        padding: 11px 13px;
        font-size: 12px
    }

    .vct-search-filters {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 7px
    }

    .vct-container {
        padding-top: 16px
    }

    .vct-home .vct-banner-row {
        grid-template-columns: 1fr;
        gap: 10px
    }

    .vct-banner-row img {
        height: auto;
        aspect-ratio: 16/9;
        object-fit: cover
    }

    .vct-banner-side {
        display: block !important
    }

    .vct-section {
        padding: 15px;
        border-radius: 15px
    }

    .vct-section-head {
        align-items: flex-start
    }

    .vct-section-head h2 {
        font-size: 22px
    }

    .vct-business-grid,
    .vct-featured-grid,
    .vct-industry-grid {
        grid-template-columns: 1fr
    }

    .vct-business-card {
        min-height: 100px
    }

    .vct-business-logo {
        width: 58px;
        height: 58px;
        flex-basis: 58px
    }

    .vct-two-col {
        grid-template-columns: 1fr
    }

    .vct-banner-wide img {
        height: auto;
        aspect-ratio: 16/9
    }

    .vct-footer-grid {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 30px 0
    }

    .directory-reg-page .admin-kpis {
        grid-template-columns: 1fr !important
    }
}

.vct-event-excerpt {
    font-size: 13px;
    line-height: 1.65;
    color: #657187;
    margin: 6px 0
}

.vct-event-excerpt p {
    margin: 0 0 8px
}

.vct-event-excerpt h2,
.vct-event-excerpt h3,
.vct-event-excerpt h4 {
    margin: 8px 0 5px;
    color: #1c2b45
}

.vct-event-excerpt ul,
.vct-event-excerpt ol {
    padding-left: 20px;
    margin: 6px 0
}

.vct-event-excerpt blockquote {
    margin: 8px 0;
    padding: 8px 12px;
    border-left: 3px solid #285bd7;
    background: #f4f7ff
}

.vct-event-excerpt a {
    color: #1f5bd7;
    text-decoration: underline
}

.vct-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.72fr) minmax(300px, .72fr);
    gap: 18px;
    align-items: start
}

.vct-company-detail {
    padding: 0;
    overflow: hidden;
    border-radius: 12px
}

.vct-company-hero {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    padding: 18px;
    background: linear-gradient(135deg, #1e55c9 0%, #6937e9 100%);
    color: #fff
}

.vct-company-logo {
    width: 86px;
    height: 86px;
    border-radius: 10px;
    background: #fff;
    border: 4px solid rgba(255, 255, 255, .28);
    display: grid;
    place-items: center;
    overflow: hidden
}

.vct-company-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.vct-company-logo span {
    font-size: 36px;
    font-weight: 700;
    color: #2455c8
}

.vct-company-heading .vct-kicker {
    color: #dce7ff
}

.vct-company-heading h1 {
    font-size: 25px;
    line-height: 1.2;
    margin: 5px 0 8px;
    color: #fff
}

.vct-company-address {
    font-size: 12px;
    margin: 0;
    color: #edf3ff;
    line-height: 1.5
}

.vct-company-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 18px;
    background: #fff;
    border-bottom: 1px solid #e5eaf2
}

.vct-action-call,
.vct-action-light {
    border: 0;
    border-radius: 999px;
    padding: 8px 13px;
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none
}

.vct-action-call {
    background: #16b878;
    color: #fff
}

.vct-action-light {
    background: #f4f6fa;
    color: #46536a;
    border: 1px solid #e2e7ef
}

.vct-company-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 16px 18px 6px
}

.vct-fact {
    display: flex;
    gap: 9px;
    align-items: center;
    min-width: 0;
    border-radius: 9px;
    padding: 10px;
    background: #f8fafc;
    border: 1px solid #edf0f5
}

.vct-fact-icon {
    width: 25px;
    height: 25px;
    border-radius: 7px;
    display: grid;
    place-items: center;
    background: #eaf0ff;
    color: #3157d7;
    font-size: 12px;
    flex: 0 0 25px
}

.vct-fact small {
    display: block;
    font-size: 8px;
    color: #788397;
    margin-bottom: 2px
}

.vct-fact b,
.vct-fact a {
    display: block;
    font-size: 11px;
    color: #243047;
    overflow-wrap: anywhere
}

.vct-fact:nth-child(3n+1) .vct-fact-icon {
    background: #e8fbf3;
    color: #0a9d59
}

.vct-fact:nth-child(3n+2) .vct-fact-icon {
    background: #fff6dc;
    color: #d98b00
}

.vct-company-description,
.vct-company-industries {
    padding: 16px 18px;
    border-top: 1px solid #edf0f5
}

.vct-description-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px
}

.vct-description-head>span {
    width: 27px;
    height: 27px;
    border-radius: 8px;
    background: #eaf0ff;
    color: #3157d7;
    display: grid;
    place-items: center;
    font-weight: 700
}

.vct-description-head h2 {
    font-size: 16px;
    margin: 0;
    color: #23314a
}

.vct-company-description {
    font-size: 12px;
    line-height: 1.75;
    color: #4f5d71
}

.vct-company-description p {
    margin: 0 0 8px
}

.vct-company-description h2,
.vct-company-description h3 {
    color: #26344c
}

.vct-tag-list {
    display: flex;
    gap: 7px;
    flex-wrap: wrap
}

.vct-tag-list a {
    font-size: 9px;
    font-weight: 700;
    color: #2455c8;
    background: #eef4ff;
    border: 1px solid #d9e4ff;
    padding: 6px 9px;
    border-radius: 999px
}

.vct-detail-sidebar {
    display: grid;
    gap: 14px
}

.vct-map-card,
.vct-register-side {
    background: #fff;
    border: 1px solid #e1e6ee;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(30, 45, 70, .06)
}

.vct-side-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 14px;
    background: linear-gradient(135deg, #3157d7, #6841e9);
    color: #fff
}

.vct-side-title b {
    font-size: 12px
}

.vct-side-title a {
    font-size: 9px;
    color: #fff
}

.vct-map-address {
    padding: 10px 13px;
    font-size: 10px;
    color: #677386;
    line-height: 1.5;
    min-height: 42px
}

.vct-map-card iframe {
    display: block;
    width: 100%;
    height: 285px;
    border: 0;
    background: #e7ebf0
}

.vct-map-btn {
    display: block;
    margin: 10px;
    background: linear-gradient(90deg, #3678ed, #6554e8);
    color: #fff;
    text-align: center;
    padding: 10px;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 700
}

.vct-register-side {
    padding: 22px 16px;
    text-align: center
}

.vct-register-side-icon {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: #ff8a00;
    color: #fff;
    display: grid;
    place-items: center;
    font-size: 28px;
    margin: 0 auto 10px
}

.vct-register-side h3 {
    font-size: 15px;
    margin: 0 0 7px
}

.vct-register-side p {
    font-size: 10px;
    line-height: 1.55;
    color: #697586;
    margin: 0 0 12px
}

.vct-industry-ads {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 12px
}

.vct-industry-ads a {
    display: block;
    height: 100px;
    overflow: hidden;
    border-radius: 7px;
    background: #fff;
    border: 1px solid #e0e6ee;
    box-shadow: 0 3px 10px rgba(20, 40, 70, .07)
}

.vct-industry-ads img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.vct-industry-letter {
    background: #fff;
    border: 1px solid #e1e6ee;
    border-radius: 10px;
    padding: 12px 14px;
    margin-bottom: 14px;
    text-align: center
}

.vct-industry-letter-title {
    text-align: left;
    font-size: 11px;
    color: #59677b;
    border-bottom: 1px solid #e7ebf1;
    padding-bottom: 9px
}

.vct-industry-letter .vct-alpha {
    justify-content: center;
    margin: 10px 0 5px
}

.vct-industry-letter .vct-alpha a {
    min-width: 30px;
    background: #ffd400;
    border-color: #ffd400;
    color: #20252d;
    font-size: 10px
}

.vct-industry-letter small {
    font-size: 8px;
    color: #9aa3b1
}

.vct-industry-layout {
    display: grid;
    grid-template-columns: 205px minmax(0, 1fr);
    gap: 14px;
    align-items: start
}

.vct-industry-sidebar {
    display: grid;
    gap: 12px;
    position: sticky;
    top: 86px
}

.vct-filter-box {
    background: #fff;
    border: 1px solid #e0e6ee;
    border-radius: 10px;
    padding: 11px
}

.vct-filter-box h3 {
    font-size: 10px;
    color: #43516a;
    margin: 0 0 9px
}

.vct-current-industry {
    background: #eef5ff;
    border: 1px solid #cfe0ff;
    color: #2455c8;
    border-radius: 7px;
    padding: 10px;
    font-size: 10px;
    font-weight: 700
}

.vct-city-list {
    max-height: 410px;
    overflow: auto;
    margin-top: 4px;
    padding-right: 2px
}

.vct-city-filter {
    display: flex;
    justify-content: space-between;
    gap: 7px;
    padding: 7px 8px;
    border-radius: 6px;
    font-size: 9px;
    color: #687486
}

.vct-city-filter:hover,
.vct-city-filter.active {
    background: #e9f1ff;
    color: #2455c8;
    font-weight: 700
}

.vct-city-filter span {
    color: #98a2b0
}

.vct-industry-results {
    min-width: 0
}

.vct-industry-title {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin-bottom: 8px
}

.vct-industry-title h1 {
    font-size: 21px;
    margin: 0 0 3px;
    color: #1e2c45
}

.vct-industry-title p {
    font-size: 10px;
    color: #7a8595;
    margin: 0
}

.vct-industry-title p b {
    color: #1e2c45
}

.vct-industry-search {
    display: flex;
    gap: 6px;
    background: #fff;
    border: 1px solid #e1e6ee;
    border-radius: 8px;
    padding: 6px;
    margin-bottom: 10px
}

.vct-industry-search input {
    min-width: 0;
    flex: 1;
    border: 0;
    outline: 0;
    padding: 8px 9px;
    font-size: 10px
}

.vct-industry-search button {
    border: 0;
    border-radius: 6px;
    background: #2d5bdd;
    color: #fff;
    padding: 7px 14px;
    font-size: 10px;
    font-weight: 700
}

.vct-industry-business-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px
}

.vct-industry-business {
    position: relative;
    background: #fff;
    border: 1px solid #e6dfb4;
    border-radius: 10px;
    overflow: hidden;
    min-width: 0;
    box-shadow: 0 3px 10px rgba(80, 70, 20, .04);
    padding-bottom: 42px
}

.vct-industry-business-head {
    display: block;
    background: #fffde9;
    border-bottom: 1px solid #efe8c1;
    padding: 11px 12px 8px
}

.vct-industry-business-head b {
    display: block;
    font-size: 10px;
    color: #343b48;
    margin-bottom: 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.vct-industry-business-head span {
    display: block;
    font-size: 8px;
    color: #7f8792;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.vct-industry-business-body {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 9px;
    padding: 10px 12px
}

.vct-industry-logo {
    height: 88px;
    border: 1px solid #edf0f3;
    border-radius: 7px;
    background: #fff;
    display: grid;
    place-items: center;
    overflow: hidden
}

.vct-industry-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.vct-industry-logo span {
    font-size: 27px;
    color: #cbd2dc
}

.vct-industry-contact {
    display: grid;
    gap: 6px;
    align-content: start
}

.vct-industry-contact div {
    background: #fffdf3;
    border: 1px solid #f1ead0;
    border-radius: 6px;
    padding: 7px;
    font-size: 9px;
    color: #e29a00
}

.vct-industry-contact b {
    display: block;
    font-size: 7px;
    color: #7c8591;
    font-weight: 700
}

.vct-industry-contact strong {
    display: block;
    color: #374151;
    font-size: 9px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 2px
}

.vct-industry-detail-btn {
    position: absolute;
    right: 11px;
    bottom: 10px;
    background: #f1a900;
    color: #fff;
    border-radius: 6px;
    padding: 7px 11px;
    font-size: 9px;
    font-weight: 700
}

@media(max-width:900px) {
    .vct-detail-layout {
        grid-template-columns: 1fr
    }

    .vct-detail-sidebar {
        grid-template-columns: 1fr 1fr
    }

    .vct-industry-layout {
        grid-template-columns: 170px minmax(0, 1fr)
    }

    .vct-industry-ads {
        grid-template-columns: repeat(2, 1fr)
    }

    .vct-industry-business-grid {
        grid-template-columns: 1fr
    }

    .vct-industry-sidebar {
        position: static
    }
}

@media(max-width:700px) {
    .vct-company-hero {
        grid-template-columns: 64px minmax(0, 1fr);
        gap: 10px;
        padding: 13px
    }

    .vct-company-logo {
        width: 64px;
        height: 64px
    }

    .vct-company-logo span {
        font-size: 26px
    }

    .vct-company-heading h1 {
        font-size: 17px
    }

    .vct-company-address {
        font-size: 9px
    }

    .vct-company-actions {
        justify-content: flex-start;
        flex-wrap: wrap;
        padding: 9px 12px
    }

    .vct-company-info-grid {
        grid-template-columns: 1fr;
        padding: 11px 12px 3px
    }

    .vct-company-description,
    .vct-company-industries {
        padding: 13px 12px
    }

    .vct-map-card iframe {
        height: 230px
    }

    .vct-detail-sidebar {
        grid-template-columns: 1fr
    }

    .vct-industry-ads {
        grid-template-columns: repeat(2, 1fr);
        gap: 6px
    }

    .vct-industry-ads a {
        height: 76px
    }

    .vct-industry-layout {
        grid-template-columns: 1fr
    }

    .vct-industry-sidebar {
        order: 2
    }

    .vct-industry-results {
        order: 1
    }

    .vct-city-list {
        max-height: 220px
    }

    .vct-industry-business-grid {
        grid-template-columns: 1fr
    }

    .vct-industry-title h1 {
        font-size: 19px
    }
}

.vct-detail-layout {
    max-width: 1160px;
    margin: 10px auto 28px;
    gap: 20px
}

.vct-company-detail {
    border: 1px solid #dce4ef !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 35px rgba(22, 46, 84, .08);
    background: #fff
}

.vct-company-hero {
    position: relative;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 18px;
    padding: 22px 24px 20px;
    background: linear-gradient(135deg, #1757bd 0%, #3156df 48%, #6a36e9 100%);
    overflow: hidden
}

.vct-company-hero:before {
    content: "";
    position: absolute;
    right: -80px;
    top: -110px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    pointer-events: none
}

.vct-company-hero:after {
    content: "";
    position: absolute;
    right: 70px;
    bottom: -130px;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .10);
    pointer-events: none
}

.vct-company-logo {
    position: relative;
    z-index: 1;
    width: 104px;
    height: 104px;
    border-radius: 14px;
    border: 4px solid rgba(255, 255, 255, .55);
    box-shadow: 0 8px 22px rgba(8, 31, 90, .18)
}

.vct-company-logo img {
    background: #fff;
    padding: 6px
}

.vct-company-heading {
    position: relative;
    z-index: 1;
    min-width: 0
}

.vct-company-heading h1 {
    font-size: 28px;
    letter-spacing: -.25px;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .08)
}

.vct-company-heading .vct-kicker {
    font-size: 10px;
    letter-spacing: .16em;
    font-weight: 700
}

.vct-company-address {
    font-size: 12px;
    max-width: 820px
}

.vct-verified.large {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin: 2px 0 7px;
    padding: 5px 9px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .3);
    font-size: 10px;
    color: #fff
}

.vct-company-actions {
    justify-content: flex-end;
    gap: 8px;
    padding: 11px 18px;
    background: #fff;
    border-bottom: 1px solid #e8edf4
}

.vct-action-call,
.vct-action-light {
    transition: transform .18s ease, box-shadow .18s ease
}

.vct-action-call:hover,
.vct-action-light:hover {
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(30, 50, 90, .10)
}

.vct-action-call {
    padding: 9px 15px;
    background: linear-gradient(135deg, #11b875, #10a765)
}

.vct-action-light {
    padding: 9px 14px;
    background: #fff;
    border-color: #dce3ed
}

.vct-company-info-grid {
    gap: 9px;
    padding: 18px 20px 8px;
    background: #fff
}

.vct-fact {
    position: relative;
    min-height: 58px;
    padding: 10px 11px;
    background: #fbfcfe;
    border: 1px solid #e7ecf3;
    border-radius: 10px;
    transition: box-shadow .18s ease, border-color .18s ease, transform .18s ease
}

.vct-fact:hover {
    border-color: #cfdcf5;
    box-shadow: 0 5px 15px rgba(31, 70, 130, .07);
    transform: translateY(-1px)
}

.vct-fact-icon {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
    border-radius: 9px;
    font-size: 13px
}

.vct-fact small {
    font-size: 8px;
    letter-spacing: .02em
}

.vct-fact b,
.vct-fact a {
    font-size: 11px;
    line-height: 1.35
}

.vct-company-description,
.vct-company-industries {
    padding: 19px 20px;
    border-top: 1px solid #e8edf4
}

.vct-description-head {
    margin-bottom: 12px
}

.vct-description-head>span {
    width: 31px;
    height: 31px;
    border-radius: 9px;
    background: linear-gradient(135deg, #eaf2ff, #e4ebff);
    color: #2456cf;
    box-shadow: inset 0 0 0 1px #d8e4ff
}

.vct-description-head h2 {
    font-size: 17px;
    letter-spacing: -.1px
}

.vct-company-description {
    font-size: 13px;
    line-height: 1.8;
    color: #536176
}

.vct-company-description p:last-child {
    margin-bottom: 0
}

.vct-company-description img {
    max-width: 100%;
    height: auto;
    border-radius: 10px
}

.vct-company-description ul,
.vct-company-description ol {
    padding-left: 22px
}

.vct-company-description a {
    color: #1f5bd7;
    text-decoration: underline;
    text-underline-offset: 2px
}

.vct-tag-list a {
    font-size: 10px;
    padding: 7px 10px;
    transition: .18s ease
}

.vct-tag-list a:hover {
    background: #2458d5;
    color: #fff;
    border-color: #2458d5
}

.vct-detail-sidebar {
    gap: 16px
}

.vct-map-card,
.vct-register-side {
    border-radius: 15px;
    box-shadow: 0 9px 28px rgba(22, 46, 84, .08)
}

.vct-side-title {
    padding: 13px 15px;
    background: linear-gradient(135deg, #2f59d9, #6540e7)
}

.vct-side-title b {
    font-size: 13px
}

.vct-side-title a {
    font-size: 9px;
    opacity: .95
}

.vct-map-address {
    padding: 11px 14px;
    font-size: 10px;
    background: #fff
}

.vct-map-card iframe {
    height: 310px
}

.vct-map-btn {
    margin: 10px 11px 12px;
    border-radius: 9px;
    padding: 11px;
    background: linear-gradient(90deg, #3477ec, #6554e8);
    box-shadow: 0 5px 13px rgba(45, 88, 215, .18)
}

.vct-register-side {
    padding: 24px 18px;
    background: linear-gradient(180deg, #fff, #fbfcff)
}

.vct-register-side-icon {
    background: linear-gradient(135deg, #ff9b00, #f57b00);
    box-shadow: 0 7px 18px rgba(245, 123, 0, .22)
}

.vct-register-side h3 {
    font-size: 16px;
    color: #25324a
}

.vct-register-side p {
    font-size: 11px
}

.vct-register-side .vct-blue-btn {
    display: inline-flex;
    justify-content: center;
    width: 100%;
    border-radius: 9px;
    padding: 10px 14px;
    background: linear-gradient(90deg, #315fdc, #6647e8);
    box-shadow: 0 6px 15px rgba(49, 95, 220, .18)
}

.vct-section:has(.vct-business-grid) {
    border-radius: 14px;
    box-shadow: 0 8px 25px rgba(22, 46, 84, .05)
}

.vct-business-grid .vct-business-card {
    border-radius: 12px;
    transition: transform .18s ease, box-shadow .18s ease
}

.vct-business-grid .vct-business-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(22, 46, 84, .09)
}

@media(max-width:900px) {
    .vct-detail-layout {
        margin-top: 8px
    }

    .vct-company-heading h1 {
        font-size: 24px
    }

    .vct-map-card iframe {
        height: 280px
    }
}

@media(max-width:700px) {
    .vct-detail-layout {
        margin: 5px auto 20px;
        gap: 12px
    }

    .vct-company-detail {
        border-radius: 12px !important
    }

    .vct-company-hero {
        grid-template-columns: 72px minmax(0, 1fr);
        gap: 11px;
        padding: 14px
    }

    .vct-company-logo {
        width: 72px;
        height: 72px;
        border-width: 3px;
        border-radius: 11px
    }

    .vct-company-logo img {
        padding: 4px
    }

    .vct-company-heading h1 {
        font-size: 18px;
        line-height: 1.25;
        margin: 4px 0 6px
    }

    .vct-company-heading .vct-kicker {
        font-size: 8px
    }

    .vct-company-address {
        font-size: 9px;
        line-height: 1.45
    }

    .vct-verified.large {
        font-size: 8px;
        padding: 4px 7px
    }

    .vct-company-actions {
        padding: 9px 11px;
        gap: 6px
    }

    .vct-action-call,
    .vct-action-light {
        font-size: 9px;
        padding: 8px 10px
    }

    .vct-company-info-grid {
        gap: 7px;
        padding: 12px 11px 4px
    }

    .vct-fact {
        min-height: 54px;
        padding: 8px
    }

    .vct-fact-icon {
        width: 27px;
        height: 27px;
        flex-basis: 27px;
        font-size: 11px
    }

    .vct-fact small {
        font-size: 7px
    }

    .vct-fact b,
    .vct-fact a {
        font-size: 9px
    }

    .vct-company-description,
    .vct-company-industries {
        padding: 14px 11px
    }

    .vct-description-head h2 {
        font-size: 15px
    }

    .vct-company-description {
        font-size: 12px;
        line-height: 1.7
    }

    .vct-detail-sidebar {
        gap: 10px
    }

    .vct-map-card iframe {
        height: 225px
    }

    .vct-side-title {
        padding: 11px 12px
    }

    .vct-register-side {
        padding: 18px 14px
    }
}

.vct-alphabet-note {
    margin: -4px 0 12px;
    color: #7a8595;
    font-size: 11px
}

.vct-alphabet a,
.vct-alpha a,
.vct-alpha-all {
    transition: transform .16s ease, background .16s ease, border-color .16s ease, box-shadow .16s ease
}

.vct-alphabet a:hover,
.vct-alpha a:hover,
.vct-alpha a.active,
.vct-alpha-all:hover,
.vct-alpha-all.active {
    background: var(--yellow);
    border-color: #f2ca00;
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(20, 40, 70, .08)
}

.vct-alphabet-all {
    display: inline-flex !important;
    margin-top: 12px !important;
    padding: 8px 12px !important;
    border: 1px solid var(--line);
    border-radius: 7px;
    background: #fff;
    color: var(--blue);
    font-size: 10px;
    font-weight: 700
}

.vct-business-letter {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 13px 15px;
    margin: 0 0 14px;
    box-shadow: 0 5px 18px rgba(20, 40, 70, .04)
}

.vct-business-letter-title {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    color: #536174;
    font-size: 11px;
    margin-bottom: 10px
}

.vct-business-letter-title span {
    color: #3157d7;
    background: #eef2ff;
    border-radius: 999px;
    padding: 4px 8px
}

.vct-business-letter .vct-alpha {
    margin: 0;
    justify-content: center
}

.vct-business-letter .vct-alpha a {
    min-width: 31px;
    text-align: center
}

.vct-business-letter .vct-alpha a.active,
.vct-business-letter .vct-alpha-all.active {
    background: var(--blue);
    border-color: var(--blue);
    color: #fff;
    box-shadow: 0 4px 12px rgba(24, 59, 158, .18)
}

.vct-business-letter .vct-alpha-all {
    min-width: auto;
    padding: 8px 11px;
    background: #f7f9fc;
    border: 1px solid var(--line);
    border-radius: 7px;
    font-size: 10px;
    font-weight: 700
}

@media(max-width:700px) {
    .vct-business-letter {
        padding: 12px 9px
    }

    .vct-business-letter .vct-alpha {
        gap: 5px
    }

    .vct-business-letter .vct-alpha a,
    .vct-business-letter .vct-alpha-all {
        min-width: 29px;
        padding: 7px 6px
    }

    .vct-alphabet-note {
        font-size: 10px
    }

    .vct-alphabet-all {
        font-size: 10px
    }
}

.vct-ranking-panel {
    margin: 18px 0 22px;
    padding: 20px;
    border: 1px solid #e5eaf1;
    border-radius: 18px;
    background: linear-gradient(180deg, #fff 0%, #fbfdff 100%);
    box-shadow: 0 10px 28px rgba(20, 36, 64, .05)
}

.vct-ranking-panel-head,
.vct-all-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 16px
}

.vct-ranking-panel-head h2,
.vct-all-head h2 {
    margin: 6px 0;
    font-size: 24px;
    color: #172033
}

.vct-ranking-panel-head p {
    margin: 0;
    color: #748196;
    font-size: 13px;
    line-height: 1.6
}

.vct-ranking-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 13px;
    border-radius: 999px;
    background: #fff4d6;
    border: 1px solid #f3dda1;
    color: #8b6200;
    font-weight: 700;
    white-space: nowrap
}

.vct-ranked-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px
}

.vct-ranked-business {
    position: relative;
    display: grid;
    grid-template-columns: 58px 68px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 13px;
    border: 1px solid #e3e8ef;
    border-radius: 14px;
    background: #fff;
    transition: .18s ease;
    overflow: hidden
}

.vct-ranked-business:hover {
    transform: translateY(-2px);
    border-color: #bcd0f8;
    box-shadow: 0 12px 28px rgba(20, 36, 64, .08)
}

.vct-ranked-business.top-1 {
    border-color: #e9ca65;
    background: linear-gradient(135deg, #fffdf2, #fff)
}

.vct-ranked-business.top-2 {
    border-color: #d6dce5
}

.vct-ranked-business.top-3 {
    border-color: #e7c3a5
}

.vct-rank-badge {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    border-radius: 13px;
    background: #edf4ff;
    color: #2563eb;
    line-height: 1
}

.vct-ranked-business.top-1 .vct-rank-badge {
    background: #ffd84d;
    color: #5e4700
}

.vct-ranked-business.top-2 .vct-rank-badge {
    background: #e4e9ef;
    color: #495568
}

.vct-ranked-business.top-3 .vct-rank-badge {
    background: #efcfb4;
    color: #754523
}

.vct-rank-badge span {
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .08em
}

.vct-rank-badge b {
    font-size: 20px
}

.vct-ranked-logo {
    width: 68px;
    height: 68px;
    border: 1px solid #e5eaf1;
    border-radius: 12px;
    background: #f8fafc;
    display: grid;
    place-items: center;
    overflow: hidden;
    text-decoration: none
}

.vct-ranked-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.vct-ranked-logo span {
    font-size: 23px;
    font-weight: 700;
    color: #2563eb
}

.vct-ranked-info {
    min-width: 0
}

.vct-ranked-title {
    display: flex;
    gap: 7px;
    align-items: flex-start;
    flex-wrap: wrap
}

.vct-ranked-title h3 {
    margin: 0;
    font-size: 14px;
    line-height: 1.35
}

.vct-ranked-title h3 a {
    color: #172033;
    text-decoration: none
}

.vct-ranked-title h3 a:hover {
    color: #174fbf
}

.vct-ranked-address {
    font-size: 11px;
    line-height: 1.45;
    color: #7b8797;
    margin: 5px 0 3px
}

.vct-ranked-meta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    color: #526075;
    font-size: 11px
}

.vct-ranked-detail {
    padding: 8px 10px;
    border-radius: 9px;
    background: #123e9d;
    color: #fff;
    text-decoration: none;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap
}

.vct-ranked-detail:hover {
    background: #0d3282;
    color: #fff
}

.vct-ranking-empty {
    padding: 30px 18px;
    text-align: center;
    border: 1px dashed #ccd7e6;
    border-radius: 14px;
    background: #f8fbff;
    color: #657187
}

.vct-ranking-empty b,
.vct-ranking-empty span {
    display: block
}

.vct-ranking-empty b {
    color: #334155;
    margin-bottom: 6px
}

.vct-all-businesses {
    margin-top: 20px
}

.vct-all-head {
    padding-top: 3px
}

.vct-all-head>span {
    color: #7a8798;
    font-size: 12px
}

.vct-ranking-home-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px
}

.vct-ranking-home-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    border: 1px solid #e5eaf1;
    border-radius: 13px;
    background: #fff;
    text-decoration: none;
    color: #172033;
    transition: .18s ease
}

.vct-ranking-home-item:hover {
    transform: translateY(-2px);
    border-color: #c5d4f6;
    box-shadow: 0 10px 24px rgba(20, 36, 64, .08)
}

.vct-ranking-home-item>span {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: #fff4cf;
    font-size: 20px
}

.vct-ranking-home-item b,
.vct-ranking-home-item small {
    display: block
}

.vct-ranking-home-item b {
    font-size: 13px
}

.vct-ranking-home-item small {
    font-size: 11px;
    color: #7a8798;
    margin-top: 4px
}

@media(max-width:1000px) {
    .vct-ranked-grid {
        grid-template-columns: 1fr
    }

    .vct-ranking-home-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media(max-width:700px) {
    .vct-ranking-panel {
        padding: 14px
    }

    .vct-ranking-panel-head,
    .vct-all-head {
        display: block
    }

    .vct-ranking-count {
        margin-top: 10px
    }

    .vct-ranked-business {
        grid-template-columns: 48px 54px minmax(0, 1fr);
        gap: 8px;
        padding: 10px
    }

    .vct-rank-badge {
        width: 46px;
        height: 46px
    }

    .vct-ranked-logo {
        width: 54px;
        height: 54px
    }

    .vct-ranked-detail {
        grid-column: 1/-1;
        text-align: center
    }

    .vct-ranked-title h3 {
        font-size: 13px
    }

    .vct-ranking-home-grid {
        grid-template-columns: 1fr
    }
}

.vct-nav .vct-webdesign-link {
    background: #fff5bf;
    color: #123e9d;
    border: 1px solid rgba(18, 62, 157, .12);
    font-weight: 700
}

.vct-nav .vct-webdesign-link:hover {
    background: #fff0a0;
    color: #0d3282
}

@media(max-width:1050px) {
    .vct-nav .vct-webdesign-link {
        background: transparent;
        border: 0
    }
}
.vct-footer-grid{position:relative;display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:50px;max-width:1280px;margin:0 auto;padding:65px 30px 55px;color:#d7dce5}.vct-footer-grid::before{content:"";position:absolute;top:0;left:30px;right:30px;height:1px;background:linear-gradient(
        90deg,transparent,rgba(255,255,255,.15),transparent
    )}.vct-footer-grid > div{min-width:0}.vct-footer-grid > div:first-child{padding-right:25px}.vct-footer-logo{display:inline-flex;align-items:center;margin-bottom:22px;text-decoration:none}.vct-footer-logo img{display:block;width:190px;max-width:100%;height:auto;transition:.3s ease}.vct-footer-logo:hover img{transform:translateY(-2px);opacity:.9}.vct-footer-grid h3{position:relative;margin:0 0 22px;padding-bottom:13px;color:#ffffff;font-size:16px;font-weight:700;line-height:1.4;letter-spacing:.5px}.vct-footer-grid h3::after{content:"";position:absolute;left:0;bottom:0;width:42px;height:3px;border-radius:10px;background:linear-gradient(
        90deg,#ff7a18,#ffb347
    )}.vct-footer-grid > div:first-child h3{margin-top:0;margin-bottom:12px;padding:0;font-size:19px;letter-spacing:-.2px}.vct-footer-grid > div:first-child h3::after{display:none}.vct-footer-grid p{margin:0 0 14px;color:#aeb7c5;font-size:14px;line-height:1.8}.vct-footer-grid p b{color:#e8edf4;font-weight:650}.vct-footer-grid a:not(.vct-footer-logo){position:relative;display:block;width:fit-content;max-width:100%;margin:0 0 13px;color:#b9c1ce;font-size:14px;line-height:1.6;text-decoration:none;transition:color .25s ease,transform .25s ease}.vct-footer-grid a:not(.vct-footer-logo)::before{content:"›";display:inline-block;margin-right:8px;color:#ff8a24;font-size:17px;font-weight:700;transition:transform .25s ease}.vct-footer-grid a:not(.vct-footer-logo):hover{color:#ffffff;transform:translateX(4px)}.vct-footer-grid a:not(.vct-footer-logo):hover::before{transform:translateX(3px)}.vct-footer-grid > div:nth-child(3) span{display:block;margin:0 0 13px;color:#b9c1ce;font-size:14px;line-height:1.7}.vct-footer-grid > div:nth-child(3) a[href^="tel:"]{color:#ffffff;font-weight:650}.vct-footer-grid > div:nth-child(3) a[href^="tel:"]::before{content:"☎";font-size:13px}.vct-footer-grid > div:nth-child(3) a[href="/lien-he"]{display:inline-flex;align-items:center;margin-top:5px;padding:9px 16px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:rgba(255,255,255,.05);color:#ffffff;transition:all .3s ease}.vct-footer-grid > div:nth-child(3) a[href="/lien-he"]::before{display:none}.vct-footer-grid > div:nth-child(3) a[href="/lien-he"]:hover{border-color:#ff8a24;background:#ff8a24;color:#fff;transform:translateY(-2px)}.vct-footer-grid > div:nth-child(2),.vct-footer-grid > div:nth-child(3){transition:transform .3s ease}.vct-footer-grid > div:nth-child(2):hover,.vct-footer-grid > div:nth-child(3):hover{transform:translateY(-2px)}@media (max-width:991px){.vct-footer-grid{grid-template-columns:1fr 1fr;gap:40px 35px;padding:50px 25px 45px}.vct-footer-grid > div:first-child{grid-column:1 / -1;padding-right:0;max-width:700px}.vct-footer-grid::before{left:25px;right:25px}}@media (max-width:767px){.vct-footer-grid{display:grid;grid-template-columns:1fr;gap:32px;padding:42px 20px 35px}.vct-footer-grid > div:first-child{grid-column:auto;max-width:none}.vct-footer-grid::before{left:20px;right:20px}.vct-footer-logo{margin-bottom:18px}.vct-footer-logo img{width:170px}.vct-footer-grid h3{margin-bottom:18px}.vct-footer-grid p,.vct-footer-grid a:not(.vct-footer-logo),.vct-footer-grid > div:nth-child(3) span{font-size:14px}.vct-footer-grid > div:nth-child(2),.vct-footer-grid > div:nth-child(3){padding-top:5px}}@media (max-width:480px){.vct-footer-grid{padding:35px 16px 30px;gap:28px}.vct-footer-grid::before{left:16px;right:16px}.vct-footer-logo img{width:155px}.vct-footer-grid > div:first-child h3{font-size:18px}.vct-footer-grid h3{font-size:15px}.vct-footer-grid p{line-height:1.75}.vct-footer-grid a:not(.vct-footer-logo){margin-bottom:11px}}
/* XẾP HẠNG DOANH NGHIỆP — Footer soft/light v2026.10.01 */
.vct-footer{
    margin-top:0 !important;
    background:#f4f7fb !important;
    color:#334155 !important;
    border-top:1px solid #e4eaf2 !important;
}
.vct-footer-grid{
    width:calc(100% - 32px) !important;
    max-width:1240px !important;
    margin:0 auto !important;
    padding:48px 0 40px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1.45fr) minmax(180px,.8fr) minmax(0,1fr) !important;
    gap:48px !important;
    color:#334155 !important;
}
.vct-footer-grid::before{display:none !important}
.vct-footer-grid>div{min-width:0 !important}
.vct-footer-grid>div:first-child{padding-right:20px !important}
.vct-footer-logo{display:inline-flex !important;align-items:center !important;margin:0 0 18px !important}
.vct-footer-logo img{display:block !important;width:205px !important;max-width:100% !important;height:auto !important}
.vct-footer-grid h3{
    margin:0 0 18px !important;
    padding:0 0 11px !important;
    color:#123b8f !important;
    font-size:16px !important;
    font-weight:700 !important;
    line-height:1.35 !important;
    letter-spacing:.2px !important;
    position:relative !important;
}
.vct-footer-grid h3::after{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    left:0 !important;
    bottom:0 !important;
    width:38px !important;
    height:3px !important;
    border-radius:99px !important;
    background:#f2c400 !important;
}
.vct-footer-grid>div:first-child h3{
    margin:0 0 10px !important;
    padding:0 !important;
    color:#1b3f88 !important;
    font-size:19px !important;
}
.vct-footer-grid>div:first-child h3::after{display:none !important}
.vct-footer-grid p{
    margin:0 0 12px !important;
    color:#64748b !important;
    font-size:14px !important;
    line-height:1.75 !important;
}
.vct-footer-grid p b{color:#243b64 !important}
.vct-footer-grid a:not(.vct-footer-logo){
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 0 11px !important;
    color:#475569 !important;
    font-size:14px !important;
    line-height:1.55 !important;
    text-decoration:none !important;
    transition:color .2s ease,transform .2s ease !important;
}
.vct-footer-grid a:not(.vct-footer-logo)::before{display:none !important}
.vct-footer-grid a:not(.vct-footer-logo):hover{color:#1749b8 !important;transform:translateX(3px) !important}
.vct-footer-grid>div:nth-child(3) span{
    display:block !important;
    margin:0 0 11px !important;
    color:#475569 !important;
    font-size:14px !important;
    line-height:1.65 !important;
}
.vct-footer-grid>div:nth-child(3) .vct-footer-phone{
    color:#243b64 !important;
    font-weight:700 !important;
    font-size:15px !important;
}
.vct-footer-grid>div:nth-child(3) .vct-footer-phone::before{content:"☎" !important;display:inline-block !important;margin-right:8px !important;color:#1749b8 !important}
.vct-footer-grid>div:nth-child(3) .vct-footer-email::before{content:"✉" !important;display:inline-block !important;margin-right:8px !important;color:#1749b8 !important}
.vct-footer-grid>div:nth-child(3) .vct-footer-address::before{content:"⌖" !important;display:inline-block !important;margin-right:8px !important;color:#1749b8 !important}
.vct-footer-contact-btn{
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    width:max-content !important;
    margin-top:5px !important;
    padding:10px 16px !important;
    border:1px solid #d5deea !important;
    border-radius:9px !important;
    background:#fff !important;
    color:#1749b8 !important;
    font-weight:700 !important;
    box-shadow:0 3px 10px rgba(15,43,82,.05) !important;
}
.vct-footer-contact-btn:hover{background:#1749b8 !important;color:#fff !important;border-color:#1749b8 !important}
.vct-footer-bottom{
    margin:0 !important;
    padding:14px 16px !important;
    background:#0d2346 !important;
    color:#c7d3e2 !important;
    border-top:1px solid rgba(255,255,255,.06) !important;
    text-align:center !important;
    font-size:12px !important;
    line-height:1.5 !important;
}
@media(max-width:900px){
    .vct-footer-grid{grid-template-columns:1fr 1fr !important;gap:32px 28px !important;padding:42px 0 34px !important}
    .vct-footer-grid>div:first-child{grid-column:1 / -1 !important;padding-right:0 !important}
}
@media(max-width:650px){
    .vct-footer-grid{width:calc(100% - 28px) !important;grid-template-columns:1fr !important;gap:26px !important;padding:36px 0 28px !important}
    .vct-footer-grid>div:first-child{grid-column:auto !important}
    .vct-footer-logo img{width:180px !important}
}

/* Multi-website business profile */
.vct-company-websites{margin-top:28px;padding-top:24px;border-top:1px solid #e6ebf2}
.vct-website-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.vct-website-item{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid #e1e7f0;border-radius:12px;background:#fff;text-decoration:none!important;transition:.18s ease;min-width:0}
.vct-website-item:hover{border-color:#2c5cc8;box-shadow:0 8px 22px rgba(25,55,105,.08);transform:translateY(-1px)}
.vct-website-no{width:32px;height:32px;display:grid;place-items:center;flex:0 0 32px;border-radius:9px;background:#eef3ff;color:#2454a8;font-weight:900;font-size:13px}
.vct-website-item>span:nth-child(2){min-width:0;display:grid;gap:3px}
.vct-website-item b{color:#172d50;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vct-website-item small{color:#728096;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vct-website-arrow{margin-left:auto;color:#2454a8;font-size:18px;font-weight:900}
@media(max-width:700px){.vct-website-list{grid-template-columns:1fr}}
.vct-event-detail{--vct-primary:#0f766e;--vct-primary-dark:#115e59;--vct-primary-light:#ecfdf5;--vct-orange:#f97316;--vct-text:#1f2937;--vct-muted:#64748b;--vct-border:#e2e8f0;--vct-bg:#f8fafc;--vct-white:#ffffff;max-width:1280px;margin:35px auto 60px;padding:0 20px;color:var(--vct-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.8}.vct-event-detail-head{position:relative;background:linear-gradient(
        135deg,#ffffff 0%,#f8fafc 55%,#ecfdf5 100%
    );border:1px solid var(--vct-border);border-radius:22px;padding:35px 40px 32px;margin-bottom:25px;overflow:hidden;box-shadow:0 10px 35px rgba(15,23,42,0.06)}.vct-event-detail-head::before{content:"";position:absolute;width:220px;height:220px;right:-90px;top:-100px;background:rgba(15,118,110,0.08);border-radius:50%}.vct-event-detail-head::after{content:"";position:absolute;width:120px;height:120px;right:90px;bottom:-70px;background:rgba(249,115,22,0.08);border-radius:50%}.vct-kicker{position:relative;z-index:2;display:inline-flex;align-items:center;gap:7px;padding:7px 14px;margin-bottom:14px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.vct-kicker.orange{color:#c2410c;background:#ffedd5;border:1px solid #fed7aa}.vct-event-detail-head h1{position:relative;z-index:2;margin:0;max-width:950px;color:#0f172a;font-size:clamp(30px,4vw,48px);line-height:1.18;font-weight:800;letter-spacing:-0.025em}.vct-event-meta{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.vct-event-meta span{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border:1px solid var(--vct-border);border-radius:9px;background:rgba(255,255,255,.85);color:#475569;font-size:14px;font-weight:600}.vct-event-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.vct-event-detail-main{min-width:0;background:var(--vct-white);border:1px solid var(--vct-border);border-radius:22px;overflow:hidden;box-shadow:0 8px 30px rgba(15,23,42,.05)}.vct-event-detail-image{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;aspect-ratio:16 / 8;background:#f1f5f9}.vct-event-content{padding:40px 48px 55px;font-size:17px}.vct-event-content p{margin:0 0 22px;color:#374151;line-height:1.85}.vct-event-content p:first-child{font-size:18px;color:#334155}.vct-event-content strong{color:#0f172a;font-weight:750}.vct-event-content h2{position:relative;margin:46px 0 20px;padding:0 0 12px 17px;color:#0f172a;font-size:clamp(24px,3vw,30px);line-height:1.35;font-weight:800;letter-spacing:-.015em;border-bottom:1px solid var(--vct-border)}.vct-event-content h2::before{content:"";position:absolute;left:0;top:4px;bottom:12px;width:5px;border-radius:5px;background:linear-gradient(
        180deg,var(--vct-primary),var(--vct-orange)
    )}.vct-event-content h3{margin:34px 0 14px;color:#134e4a;font-size:21px;line-height:1.45;font-weight:750}.vct-event-content ul{margin:20px 0 28px;padding:20px 24px 20px 48px;background:#f8fafc;border:1px solid var(--vct-border);border-radius:14px}.vct-event-content li{margin:9px 0;padding-left:5px;color:#475569;line-height:1.75}.vct-event-content li::marker{color:var(--vct-primary);font-weight:800}.vct-event-content a{color:var(--vct-primary);font-weight:650;text-decoration:none;border-bottom:1px dashed rgba(15,118,110,.4);transition:.2s ease}.vct-event-content a:hover{color:var(--vct-orange);border-bottom-color:var(--vct-orange)}.vct-event-content table{width:100%;margin:28px 0 30px;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--vct-border);border-radius:14px;background:#fff;font-size:15px}.vct-event-content thead{background:linear-gradient(
        135deg,#115e59,#0f766e
    )}.vct-event-content th{padding:15px 16px;color:#fff;font-weight:750;text-align:left;border:0}.vct-event-content td{padding:14px 16px;color:#475569;border-top:1px solid var(--vct-border);vertical-align:top}.vct-event-content tbody tr{transition:background .2s ease}.vct-event-content tbody tr:hover{background:#f0fdfa}.vct-event-content tbody tr:nth-child(even){background:#fafafa}.vct-event-content tbody tr:nth-child(even):hover{background:#f0fdfa}.vct-event-detail-side{position:sticky;top:25px}.vct-event-detail-side > div{position:relative;padding:24px;background:#ffffff;border:1px solid var(--vct-border);border-radius:18px;box-shadow:0 8px 28px rgba(15,23,42,.06);overflow:hidden}.vct-event-detail-side > div::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(
        90deg,var(--vct-primary),var(--vct-orange)
    )}.vct-event-detail-side b{display:block;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--vct-border);color:#0f172a;font-size:19px;font-weight:800}.vct-event-detail-side span{display:flex;align-items:center;gap:9px;padding:11px 0;color:#64748b;font-size:14px;border-bottom:1px dashed #e2e8f0}.vct-event-detail-side span:last-of-type{border-bottom:0}.vct-outline-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:20px;padding:10px 16px;border:1.5px solid var(--vct-primary);border-radius:10px;background:#fff;color:var(--vct-primary)!important;font-size:14px;font-weight:750;text-decoration:none!important;transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}.vct-outline-btn:hover{background:var(--vct-primary);color:#fff!important;transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,118,110,.18)}.vct-event-content blockquote{margin:28px 0;padding:20px 24px;border-left:5px solid var(--vct-primary);border-radius:0 12px 12px 0;background:#f0fdfa;color:#334155;font-size:17px}.vct-event-content img{display:block;max-width:100%;height:auto;margin:25px auto;border-radius:14px}.vct-event-detail::selection{background:#99f6e4;color:#134e4a}@media (max-width:1024px){.vct-event-detail{margin-top:25px;padding:0 15px}.vct-event-detail-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.vct-event-content{padding:34px 30px 45px}.vct-event-detail-head{padding:30px}}@media (max-width:768px){.vct-event-detail{margin:15px auto 40px;padding:0 10px}.vct-event-detail-head{padding:24px 20px;margin-bottom:15px;border-radius:16px}.vct-event-detail-head h1{font-size:29px}.vct-event-meta{flex-direction:column;align-items:stretch;gap:7px}.vct-event-meta span{width:fit-content;font-size:13px}.vct-event-detail-layout{display:flex;flex-direction:column;gap:15px}.vct-event-detail-main{width:100%;border-radius:16px}.vct-event-detail-image{aspect-ratio:16 / 9;max-height:none}.vct-event-content{padding:25px 18px 35px;font-size:16px}.vct-event-content p,.vct-event-content p:first-child{font-size:16px;line-height:1.8}.vct-event-content h2{margin-top:36px;margin-bottom:17px;font-size:23px}.vct-event-content h3{font-size:19px}.vct-event-content ul{padding:16px 15px 16px 35px}.vct-event-content table{display:block;overflow-x:auto;white-space:nowrap;font-size:14px}.vct-event-content th,.vct-event-content td{padding:12px 13px}.vct-event-detail-side{position:static;width:100%}.vct-event-detail-side > div{border-radius:16px}}@media (max-width:480px){.vct-event-detail{padding:0 7px}.vct-event-detail-head{padding:20px 16px}.vct-event-detail-head h1{font-size:25px}.vct-event-content{padding:22px 15px 30px}.vct-event-content h2{font-size:21px;padding-left:13px}.vct-event-content h2::before{width:4px}.vct-event-content h3{font-size:18px}.vct-event-content ul{padding-left:30px}.vct-event-detail-side > div{padding:20px 17px}}.vct-event-detail {
        --vct-primary: #0f766e;
        --vct-primary-dark: #115e59;
        --vct-primary-light: #ecfdf5;
        --vct-orange: #f97316;
        --vct-text: #1f2937;
        --vct-muted: #64748b;
        --vct-border: #e2e8f0;
        --vct-bg: #f8fafc;
        --vct-white: #ffffff;
        max-width: 1280px;
        margin: 35px auto 60px;
        padding: 0 20px;
        color: var(--vct-text);
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
        line-height: 1.8
    }
    
    .vct-event-detail-head {
        position: relative;
        background: linear-gradient(135deg, #ffffff 0%, #f8fafc 55%, #ecfdf5 100%);
        border: 1px solid var(--vct-border);
        border-radius: 22px;
        padding: 35px 40px 32px;
        margin-bottom: 25px;
        overflow: hidden;
        box-shadow: 0 10px 35px rgba(15, 23, 42, 0.06)
    }
    
    .vct-event-detail-head::before {
        content: "";
        position: absolute;
        width: 220px;
        height: 220px;
        right: -90px;
        top: -100px;
        background: rgba(15, 118, 110, 0.08);
        border-radius: 50%
    }
    
    .vct-event-detail-head::after {
        content: "";
        position: absolute;
        width: 120px;
        height: 120px;
        right: 90px;
        bottom: -70px;
        background: rgba(249, 115, 22, 0.08);
        border-radius: 50%
    }
    
    .vct-kicker {
        position: relative;
        z-index: 2;
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 7px 14px;
        margin-bottom: 14px;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 800;
        letter-spacing: .08em;
        text-transform: uppercase
    }
    
    .vct-kicker.orange {
        color: #c2410c;
        background: #ffedd5;
        border: 1px solid #fed7aa
    }
    
    .vct-event-detail-head h1 {
        position: relative;
        z-index: 2;
        margin: 0;
        max-width: 950px;
        color: #0f172a;
        font-size: clamp(30px, 4vw, 48px);
        line-height: 1.18;
        font-weight: 800;
        letter-spacing: -0.025em
    }
    
    .vct-event-meta {
        position: relative;
        z-index: 2;
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin-top: 20px
    }
    
    .vct-event-meta span {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 8px 13px;
        border: 1px solid var(--vct-border);
        border-radius: 9px;
        background: rgba(255, 255, 255, .85);
        color: #475569;
        font-size: 14px;
        font-weight: 600
    }
    
    .vct-event-detail-layout {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 320px;
        gap: 28px;
        align-items: start
    }
    
    .vct-event-detail-main {
        min-width: 0;
        background: var(--vct-white);
        border: 1px solid var(--vct-border);
        border-radius: 22px;
        overflow: hidden;
        box-shadow: 0 8px 30px rgba(15, 23, 42, .05)
    }
    
    .vct-event-detail-image {
        display: block;
        width: 100%;
        height: auto;
        max-height: 560px;
        object-fit: cover;
        aspect-ratio: 16 / 8;
        background: #f1f5f9
    }
    
    .vct-event-content {
        padding: 40px 48px 55px;
        font-size: 17px
    }
    
    .vct-event-content p {
        margin: 0 0 22px;
        color: #374151;
        line-height: 1.85
    }
    
    .vct-event-content p:first-child {
        font-size: 18px;
        color: #334155
    }
    
    .vct-event-content strong {
        color: #0f172a;
        font-weight: 750
    }
    
    .vct-event-content h2 {
        position: relative;
        margin: 46px 0 20px;
        padding: 0 0 12px 17px;
        color: #0f172a;
        font-size: clamp(24px, 3vw, 30px);
        line-height: 1.35;
        font-weight: 800;
        letter-spacing: -.015em;
        border-bottom: 1px solid var(--vct-border)
    }
    
    .vct-event-content h2::before {
        content: "";
        position: absolute;
        left: 0;
        top: 4px;
        bottom: 12px;
        width: 5px;
        border-radius: 5px;
        background: linear-gradient(180deg, var(--vct-primary), var(--vct-orange))
    }
    
    .vct-event-content h3 {
        margin: 34px 0 14px;
        color: #134e4a;
        font-size: 21px;
        line-height: 1.45;
        font-weight: 750
    }
    
    .vct-event-content ul {
        margin: 20px 0 28px;
        padding: 20px 24px 20px 48px;
        background: #f8fafc;
        border: 1px solid var(--vct-border);
        border-radius: 14px
    }
    
    .vct-event-content li {
        margin: 9px 0;
        padding-left: 5px;
        color: #475569;
        line-height: 1.75
    }
    
    .vct-event-content li::marker {
        color: var(--vct-primary);
        font-weight: 800
    }
    
    .vct-event-content a {
        color: var(--vct-primary);
        font-weight: 650;
        text-decoration: none;
        border-bottom: 1px dashed rgba(15, 118, 110, .4);
        transition: .2s ease
    }
    
    .vct-event-content a:hover {
        color: var(--vct-orange);
        border-bottom-color: var(--vct-orange)
    }
    
    .vct-event-content table {
        width: 100%;
        margin: 28px 0 30px;
        border-collapse: separate;
        border-spacing: 0;
        overflow: hidden;
        border: 1px solid var(--vct-border);
        border-radius: 14px;
        background: #fff;
        font-size: 15px
    }
    
    .vct-event-content thead {
        background: linear-gradient(135deg, #115e59, #0f766e)
    }
    
    .vct-event-content th {
        padding: 15px 16px;
        color: #fff;
        font-weight: 750;
        text-align: left;
        border: 0
    }
    
    .vct-event-content td {
        padding: 14px 16px;
        color: #475569;
        border-top: 1px solid var(--vct-border);
        vertical-align: top
    }
    
    .vct-event-content tbody tr {
        transition: background .2s ease
    }
    
    .vct-event-content tbody tr:hover {
        background: #f0fdfa
    }
    
    .vct-event-content tbody tr:nth-child(even) {
        background: #fafafa
    }
    
    .vct-event-content tbody tr:nth-child(even):hover {
        background: #f0fdfa
    }
    
    .vct-event-detail-side {
        position: sticky;
        top: 25px
    }
    
    .vct-event-detail-side>div {
        position: relative;
        padding: 24px;
        background: #ffffff;
        border: 1px solid var(--vct-border);
        border-radius: 18px;
        box-shadow: 0 8px 28px rgba(15, 23, 42, .06);
        overflow: hidden
    }
    
    .vct-event-detail-side>div::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 4px;
        background: linear-gradient(90deg, var(--vct-primary), var(--vct-orange))
    }
    
    .vct-event-detail-side b {
        display: block;
        margin-bottom: 18px;
        padding-bottom: 14px;
        border-bottom: 1px solid var(--vct-border);
        color: #0f172a;
        font-size: 19px;
        font-weight: 800
    }
    
    .vct-event-detail-side span {
        display: flex;
        align-items: center;
        gap: 9px;
        padding: 11px 0;
        color: #64748b;
        font-size: 14px;
        border-bottom: 1px dashed #e2e8f0
    }
    
    .vct-event-detail-side span:last-of-type {
        border-bottom: 0
    }
    
    .vct-outline-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 46px;
        margin-top: 20px;
        padding: 10px 16px;
        border: 1.5px solid var(--vct-primary);
        border-radius: 10px;
        background: #fff;
        color: var(--vct-primary) !important;
        font-size: 14px;
        font-weight: 750;
        text-decoration: none !important;
        transition: background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease
    }
    
    .vct-outline-btn:hover {
        background: var(--vct-primary);
        color: #fff !important;
        transform: translateY(-2px);
        box-shadow: 0 8px 20px rgba(15, 118, 110, .18)
    }
    
    .vct-event-content blockquote {
        margin: 28px 0;
        padding: 20px 24px;
        border-left: 5px solid var(--vct-primary);
        border-radius: 0 12px 12px 0;
        background: #f0fdfa;
        color: #334155;
        font-size: 17px
    }
    
    .vct-event-content img {
        display: block;
        max-width: 100%;
        height: auto;
        margin: 25px auto;
        border-radius: 14px
    }
    
    .vct-event-detail::selection {
        background: #99f6e4;
        color: #134e4a
    }
    
    @media (max-width:1024px) {
        .vct-event-detail {
            margin-top: 25px;
            padding: 0 15px
        }
    
        .vct-event-detail-layout {
            grid-template-columns: minmax(0, 1fr) 270px;
            gap: 20px
        }
    
        .vct-event-content {
            padding: 34px 30px 45px
        }
    
        .vct-event-detail-head {
            padding: 30px
        }
    }
    
    @media (max-width:768px) {
        .vct-event-detail {
            margin: 15px auto 40px;
            padding: 0 10px
        }
    
        .vct-event-detail-head {
            padding: 24px 20px;
            margin-bottom: 15px;
            border-radius: 16px
        }
    
        .vct-event-detail-head h1 {
            font-size: 29px
        }
    
        .vct-event-meta {
            flex-direction: column;
            align-items: stretch;
            gap: 7px
        }
    
        .vct-event-meta span {
            width: fit-content;
            font-size: 13px
        }
    
        .vct-event-detail-layout {
            display: flex;
            flex-direction: column;
            gap: 15px
        }
    
        .vct-event-detail-main {
            width: 100%;
            border-radius: 16px
        }
    
        .vct-event-detail-image {
            aspect-ratio: 16 / 9;
            max-height: none
        }
    
        .vct-event-content {
            padding: 25px 18px 35px;
            font-size: 16px
        }
    
        .vct-event-content p,
        .vct-event-content p:first-child {
            font-size: 16px;
            line-height: 1.8
        }
    
        .vct-event-content h2 {
            margin-top: 36px;
            margin-bottom: 17px;
            font-size: 23px
        }
    
        .vct-event-content h3 {
            font-size: 19px
        }
    
        .vct-event-content ul {
            padding: 16px 15px 16px 35px
        }
    
        .vct-event-content table {
            display: block;
            overflow-x: auto;
            white-space: nowrap;
            font-size: 14px
        }
    
        .vct-event-content th,
        .vct-event-content td {
            padding: 12px 13px
        }
    
        .vct-event-detail-side {
            position: static;
            width: 100%
        }
    
        .vct-event-detail-side>div {
            border-radius: 16px
        }
    }
    
    @media (max-width:480px) {
        .vct-event-detail {
            padding: 0 7px
        }
    
        .vct-event-detail-head {
            padding: 20px 16px
        }
    
        .vct-event-detail-head h1 {
            font-size: 25px
        }
    
        .vct-event-content {
            padding: 22px 15px 30px
        }
    
        .vct-event-content h2 {
            font-size: 21px;
            padding-left: 13px
        }
    
        .vct-event-content h2::before {
            width: 4px
        }
    
        .vct-event-content h3 {
            font-size: 18px
        }
    
        .vct-event-content ul {
            padding-left: 30px
        }
    
        .vct-event-detail-side>div {
            padding: 20px 17px
        }
    }

/* =========================================================
   VIETNAM VRF — Korea Business Connect visual system
   ========================================================= */
:root{--vrf-navy:#071b3a;--vrf-blue:#0b5ed7;--vrf-cyan:#18b6d9;--vrf-red:#d92d3f;--vrf-gold:#d9a928;--vrf-ink:#12233f;--vrf-soft:#f4f7fb;--vrf-line:#e3eaf3}
body.vct-body{background:linear-gradient(180deg,#f7faff 0,#f2f6fb 100%);color:var(--vrf-ink)}
.vct-header{background:rgba(255,255,255,.96)!important;border-bottom:1px solid #dfe7f1!important;box-shadow:0 5px 25px rgba(7,27,58,.05);position:sticky;top:0;z-index:100}
.vct-topbar{max-width:1500px!important;min-height:78px!important}
.vct-logo img{max-width:250px!important;max-height:58px!important;object-fit:contain}
.vct-nav a{color:#223552!important}.vct-nav a:hover{color:var(--vrf-blue)!important}.vct-register-link{background:var(--vrf-navy)!important;color:#fff!important;border-radius:999px!important;padding:11px 17px!important}
.vct-mobile-nav{box-shadow:0 10px 30px rgba(7,27,58,.1)}
.vrf-hero{background:radial-gradient(circle at 85% 20%,rgba(24,182,217,.22),transparent 28%),linear-gradient(120deg,#061734 0%,#0a2e61 58%,#0b5b83 100%);color:#fff;overflow:hidden}
.vrf-hero-inner{max-width:1500px;margin:auto;min-height:510px;padding:70px 34px;display:grid;grid-template-columns:minmax(0,1.3fr) 390px;gap:60px;align-items:center;position:relative}
.vrf-hero-inner:after{content:"";position:absolute;inset:auto -100px -240px auto;width:520px;height:520px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.03),0 0 0 160px rgba(255,255,255,.02)}
.vrf-eyebrow{display:inline-flex;letter-spacing:.18em;font-size:12px;font-weight:900;color:#77e1f5;margin-bottom:14px}.vrf-hero h1{font-size:72px;line-height:.95;margin:0;font-weight:900;letter-spacing:-.045em}.vrf-hero h1 em{font-style:normal;color:#63d8ef}.vrf-hero h2{font-size:30px;line-height:1.22;margin:20px 0 14px;max-width:760px}.vrf-hero p{font-size:17px;line-height:1.7;color:#c7d7eb;max-width:760px;margin:0}.vrf-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.vrf-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:9px;text-decoration:none;font-weight:900}.vrf-btn.primary{background:#fff;color:var(--vrf-navy)}.vrf-btn.ghost{border:1px solid rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.06)}
.vrf-hero-panel{justify-self:end;width:100%;max-width:390px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.04));border-radius:24px;padding:34px;box-shadow:0 30px 80px rgba(0,0,0,.2);backdrop-filter:blur(8px)}.vrf-flag-pair{display:flex;justify-content:space-between;align-items:center;color:#bfe5f1;font-size:12px;font-weight:900;letter-spacing:.1em}.vrf-flag-pair b{font-size:25px;color:#fff}.vrf-hero-panel strong{display:block;font-size:42px;line-height:1;margin:28px 0 14px}.vrf-hero-panel small{color:#b8cadf}
.vrf-home{padding-top:34px}.vrf-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:44px}.vrf-feature-grid a{background:#fff;border:1px solid var(--vrf-line);border-radius:16px;padding:24px;text-decoration:none;color:var(--vrf-ink);box-shadow:0 10px 30px rgba(7,27,58,.045);transition:.2s}.vrf-feature-grid a:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(7,27,58,.09);border-color:#c9d8ea}.vrf-feature-grid span{display:flex;width:40px;height:40px;border-radius:11px;background:#edf6ff;color:var(--vrf-blue);align-items:center;justify-content:center;font-size:20px;margin-bottom:18px}.vrf-feature-grid b,.vrf-feature-grid small{display:block}.vrf-feature-grid b{font-size:16px}.vrf-feature-grid small{color:#74839a;line-height:1.55;margin-top:7px;font-weight:500}
.vrf-directory-section,.vrf-industries{padding:14px 0 48px}.vrf-search-wrap{background:#fff;border:1px solid var(--vrf-line);border-radius:18px;padding:12px;margin-bottom:22px}.vrf-search-wrap .vct-search{margin:0!important}.vrf-two-col{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr);gap:28px;padding:8px 0 52px}.vrf-news-list,.vrf-event-list{display:grid;gap:12px}.vrf-news-list article,.vrf-event-list article{display:grid;grid-template-columns:170px 1fr;gap:17px;background:#fff;border:1px solid var(--vrf-line);border-radius:15px;padding:12px}.vrf-event-list article{grid-template-columns:110px 1fr}.vrf-news-img img,.vrf-event-list img{width:100%;height:120px;object-fit:cover;border-radius:10px;display:block}.vrf-event-list img{height:92px}.vrf-news-list h3,.vrf-event-list h3{margin:7px 0 6px;font-size:16px;line-height:1.35}.vrf-news-list h3 a,.vrf-event-list h3 a{color:var(--vrf-ink);text-decoration:none}.vrf-news-list p{color:#718097;line-height:1.55;margin:0 0 7px;font-size:13px}.vrf-news-list small,.vrf-event-list small{color:#8b98aa}.vrf-tag{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef5ff;color:#1c5db5;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.vrf-tag.gold{background:#fff6dd;color:#936d11}
.vrf-industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.vrf-industry-grid a{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--vrf-line);border-radius:13px;padding:15px;text-decoration:none;color:var(--vrf-ink)}.vrf-industry-grid a>span{width:36px;height:36px;border-radius:10px;background:#eff8fb;color:#087d9d;display:flex;align-items:center;justify-content:center;font-weight:900}.vrf-industry-grid div{min-width:0;flex:1}.vrf-industry-grid b,.vrf-industry-grid small{display:block}.vrf-industry-grid b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vrf-industry-grid small{font-size:11px;color:#8a97a8;margin-top:4px}.vrf-industry-grid strong{color:#8a97a8}
.vrf-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#dfe7f1;border:1px solid #dfe7f1;border-radius:18px;overflow:hidden;margin:6px 0 48px}.vrf-stats div{background:#fff;text-align:center;padding:25px}.vrf-stats b,.vrf-stats span{display:block}.vrf-stats b{font-size:28px;color:var(--vrf-navy)}.vrf-stats span{color:#7a879a;font-size:12px;margin-top:5px}.vrf-about{display:grid;grid-template-columns:130px 1fr;gap:30px;background:linear-gradient(120deg,#061734,#0c386d);color:#fff;border-radius:22px;padding:35px;margin-bottom:45px}.vrf-about-mark{width:100px;height:100px;border-radius:22px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:25px;font-weight:900;color:#75dff2}.vrf-about h2{margin:8px 0 10px;font-size:28px}.vrf-about p{color:#c9d7e8;line-height:1.7;max-width:900px}.vrf-about-links{display:flex;gap:20px;flex-wrap:wrap}.vrf-about-links a{color:#fff;text-decoration:none;font-weight:900}
.vct-footer{background:#061734!important;color:#b8c7db!important}.vct-footer h3{color:#fff!important}.vct-footer a{color:#d7e5f6!important}.vct-footer-bottom{border-color:rgba(255,255,255,.1)!important;color:#8fa2bb!important}
@media(max-width:1050px){.vrf-hero-inner{grid-template-columns:1fr}.vrf-hero-panel{justify-self:start}.vrf-feature-grid,.vrf-industry-grid{grid-template-columns:1fr 1fr}.vrf-two-col{grid-template-columns:1fr}}
@media(max-width:650px){.vrf-hero-inner{padding:52px 20px;min-height:auto}.vrf-hero h1{font-size:50px}.vrf-hero h2{font-size:23px}.vrf-hero-panel{padding:25px}.vrf-feature-grid,.vrf-industry-grid,.vrf-stats{grid-template-columns:1fr}.vrf-news-list article,.vrf-event-list article{grid-template-columns:95px 1fr}.vrf-news-img img{height:95px}.vrf-event-list img{height:80px}.vrf-about{grid-template-columns:1fr;padding:26px}.vrf-about-mark{width:80px;height:80px}.vct-logo img{max-width:205px!important}}
