: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
    }
}

.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
    }
}

.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
    }
}

:root {
    --kcs-ink: #07121f;
    --kcs-navy: #0a1c2b;
    --kcs-panel: #0f2638;
    --kcs-cyan: #52e8ff;
    --kcs-cyan-soft: #e9fbff;
    --kcs-gold: #d7b56d;
    --kcs-text: #132536;
    --kcs-muted: #718494;
    --kcs-line: #dfe9ef;
    --kcs-bg: #f4f7f9;
    --kcs-shadow: 0 18px 55px rgba(6, 23, 38, .10)
}

body.vct-body {
    background: radial-gradient(circle at 80% -10%, rgba(82, 232, 255, .09), transparent 30%), #f4f7f9;
    color: var(--kcs-text);
    font-family: Inter, "Segoe UI", Arial, sans-serif
}

.vct-header {
    background: rgba(7, 18, 31, .97) !important;
    border: 0 !important;
    box-shadow: 0 10px 35px rgba(3, 12, 22, .18);
    position: sticky;
    top: 0;
    z-index: 50;
    backdrop-filter: blur(18px)
}

.vct-topbar {
    max-width: 1320px !important;
    height: 82px !important;
    padding: 0 24px !important
}

.vct-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 250px
}

.vct-logo img {
    width: 235px !important;
    height: auto !important;
    max-height: 55px !important;
    object-fit: contain
}

.vct-nav {
    gap: 4px !important
}

.vct-nav a {
    color: #b9cad5 !important;
    padding: 11px 13px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    transition: .2s
}

.vct-nav a:hover {
    color: #fff !important;
    background: rgba(82, 232, 255, .09) !important
}

.vct-nav .vct-register-link {
    background: linear-gradient(135deg, var(--kcs-cyan), #9ef5ff) !important;
    color: #06111f !important;
    box-shadow: 0 8px 24px rgba(82, 232, 255, .18)
}

.vct-nav .vct-webdesign-link {
    color: var(--kcs-gold) !important
}

.vct-menu {
    background: #10283a !important;
    color: #fff !important;
    border: 1px solid #29465a !important;
    border-radius: 11px !important
}

.vct-mobile-nav {
    background: #07121f !important;
    border-top: 1px solid #1d384b !important
}

.vct-mobile-nav a {
    color: #d8e7ee !important;
    border-bottom: 1px solid #183244 !important
}

.vct-container {
    max-width: 1320px !important;
    padding-left: 22px !important;
    padding-right: 22px !important
}

.vct-hero {
    margin: 0 !important;
    border-radius: 0 0 34px 34px !important;
    min-height: 470px !important;
    background: linear-gradient(120deg, #06111f 0%, #0b2537 52%, #123e51 100%) !important;
    position: relative;
    overflow: hidden;
    box-shadow: 0 22px 70px rgba(4, 20, 34, .17)
}

.vct-hero:before {
    content: "";
    position: absolute;
    inset: auto -10% -60% 45%;
    height: 620px;
    background: radial-gradient(circle, #52e8ff22, transparent 65%);
    pointer-events: none
}

.vct-hero:after {
    content: "";
    position: absolute;
    right: 5%;
    top: 16%;
    width: 380px;
    height: 380px;
    border: 1px solid #52e8ff24;
    border-radius: 50%;
    box-shadow: 0 0 0 50px #52e8ff08, 0 0 0 110px #52e8ff04;
    pointer-events: none
}

.vct-hero-inner {
    max-width: 1320px !important;
    padding: 82px 22px 76px !important;
    position: relative;
    z-index: 2
}

.vct-hero .vct-kicker {
    color: var(--kcs-gold) !important;
    letter-spacing: .22em !important;
    font-size: 12px !important
}

.vct-hero h1 {
    font-size: clamp(44px, 6vw, 78px) !important;
    line-height: .96 !important;
    letter-spacing: -.055em !important;
    margin: 18px 0 !important;
    color: #fff !important
}

.vct-hero h1 span {
    display: block;
    color: var(--kcs-cyan)
}

.vct-hero p {
    font-size: 18px !important;
    line-height: 1.65 !important;
    color: #b6cbd6 !important
}

.vct-search {
    max-width: 900px !important;
    margin-top: 30px !important
}

.vct-search-main {
    background: #fff !important;
    border: 1px solid #ffffff55 !important;
    border-radius: 16px !important;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .20) !important;
    padding: 7px !important
}

.vct-search-main input {
    font-size: 15px !important
}

.vct-search-main button {
    background: var(--kcs-ink) !important;
    color: #fff !important;
    border-radius: 11px !important
}

.vct-search-filters select {
    border-radius: 11px !important;
    border-color: #29485b !important;
    background: #10293b !important;
    color: #d8e7ee !important;
    width: 100%
}

.vct-section,
.vct-page-head,
.vct-ranking-panel,
.vct-all-businesses {
    border-color: var(--kcs-line) !important
}

.vct-section {
    border-radius: 24px !important;
    box-shadow: var(--kcs-shadow) !important;
    background: rgba(255, 255, 255, .92) !important
}

.vct-section-head {
    padding: 28px 30px !important
}

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

.vct-kicker {
    color: #16879a !important;
    font-weight: 800 !important;
    letter-spacing: .16em !important
}

.vct-kicker.orange {
    color: #a77b2e !important
}

.vct-banner-row {
    gap: 18px !important;
    margin-top: 28px !important
}

.vct-ad-slider {
    border-radius: 22px !important;
    overflow: hidden !important;
    box-shadow: var(--kcs-shadow) !important
}

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

.vct-ad-slider-hero {
    min-height: 360px !important
}

.vct-ad-slider-side {
    min-height: 360px !important
}

.vct-business-grid {
    gap: 15px !important
}

.vct-business-card {
    background: #fff !important;
    border: 1px solid #e3ebef !important;
    border-radius: 18px !important;
    padding: 18px !important;
    box-shadow: 0 10px 30px rgba(7, 24, 38, .055) !important;
    transition: .22s !important
}

.vct-business-card:hover {
    transform: translateY(-4px);
    border-color: #b9e8ef !important;
    box-shadow: 0 18px 45px rgba(7, 24, 38, .11) !important
}

.vct-business-logo {
    border-radius: 15px !important;
    background: #f3f8fa !important;
    border: 1px solid #e2edf1 !important
}

.vct-card-title h3 a {
    color: #10283a !important
}

.vct-verified {
    color: #087f91 !important;
    background: #e9fbff !important;
    border-color: #b9eef5 !important
}

.vct-featured-dot {
    background: #fff5df !important;
    color: #9a6c1d !important;
    border-color: #eed9a9 !important
}

.vct-blue-btn {
    background: var(--kcs-ink) !important;
    border-radius: 11px !important
}

.vct-more {
    color: #087f91 !important
}

.vct-pill.blue {
    background: #e9fbff !important;
    color: #087f91 !important
}

.vct-pill.green {
    background: #edf9f3 !important;
    color: #287b59 !important
}

.vct-two-col {
    gap: 22px !important
}

.vct-news-list,
.vct-side-news {
    background: #fff !important;
    border: 1px solid var(--kcs-line) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: var(--kcs-shadow)
}

.vct-news-item,
.vct-side-news article {
    padding: 18px !important;
    border-bottom-color: #edf2f5 !important
}

.vct-news-image {
    border-radius: 13px !important
}

.vct-news-item h3 a,
.vct-side-news h3 a {
    color: #132b3e !important
}

.vct-news-item h3 a:hover,
.vct-side-news h3 a:hover {
    color: #0a8ea2 !important
}

.vct-ranking-home-grid {
    gap: 14px !important
}

.vct-ranking-card {
    border: 1px solid var(--kcs-line) !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 28px rgba(7, 24, 38, .05) !important
}

.vct-ranking-card:hover {
    border-color: #a9e7ef !important
}

.vct-footer {
    margin-top: 50px !important;
    background: #06111f !important;
    color: #91a8b6 !important;
    border: 0 !important
}

.vct-footer-grid {
    max-width: 1320px !important;
    padding: 60px 22px !important
}

.vct-footer h3 {
    color: #fff !important
}

.vct-footer a {
    color: #a8bec9 !important
}

.vct-footer a:hover {
    color: var(--kcs-cyan) !important
}

.vct-footer-logo img {
    width: 220px !important
}

.vct-footer-contact-btn {
    border-color: #29485b !important;
    color: #fff !important;
    background: #0e2638 !important
}

.vct-footer-bottom {
    border-top: 1px solid #183244 !important;
    color: #6f8795 !important
}

.vct-page-head {
    background: linear-gradient(135deg, #071521, #0f2d40) !important;
    color: #fff !important;
    border-radius: 24px !important;
    box-shadow: var(--kcs-shadow) !important
}

.vct-page-head p {
    color: #b9cbd4 !important
}

.vct-breadcrumb a {
    color: #0a8ca0 !important
}

.vct-breadcrumb b {
    color: #6d7f8d !important
}

.vct-simple-search input,
.vct-industry-search input {
    border: 1px solid #dbe6eb !important;
    border-radius: 12px !important
}

.vct-simple-search button,
.vct-industry-search button {
    background: var(--kcs-ink) !important;
    border-radius: 11px !important
}

.vct-empty {
    border: 1px dashed #bdd1da !important;
    border-radius: 16px !important;
    background: #f8fbfc !important
}

.vct-location-grid a {
    border: 1px solid #e0eaee !important;
    border-radius: 16px !important;
    background: #fff !important;
    transition: .2s
}

.vct-location-grid a:hover {
    border-color: #9fe5ee !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(7, 24, 38, .07)
}

.vct-ranked-business {
    border: 1px solid #e0eaee !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 10px 30px rgba(7, 24, 38, .05) !important
}

.vct-rank-badge {
    background: var(--kcs-ink) !important;
    color: #fff !important
}

.vct-ranked-business.top-1 .vct-rank-badge {
    background: linear-gradient(135deg, #d7b56d, #f4dca4) !important;
    color: #1b1b17 !important
}

.vct-ranked-detail {
    color: #087f91 !important
}

@media(max-width:820px) {
    .vct-topbar {
        height: 70px !important;
        padding: 0 14px !important
    }

    .vct-logo {
        min-width: 0
    }

    .vct-logo img {
        width: 190px !important
    }

    .vct-hero {
        min-height: 420px !important;
        border-radius: 0 0 24px 24px !important
    }

    .vct-hero-inner {
        padding: 62px 18px 58px !important
    }

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

    .vct-ad-slider-side,
    .vct-ad-slider-hero {
        min-height: 260px !important
    }

    .vct-section-head {
        padding: 22px 20px !important
    }
}

@media(max-width:600px) {
    .vct-logo img {
        width: 170px !important
    }

    .vct-hero h1 {
        font-size: 43px !important
    }

    .vct-hero p {
        font-size: 15px !important
    }

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

    .vct-ad-slider-hero {
        min-height: 190px !important
    }

    .vct-ad-slider-side {
        min-height: 210px !important
    }

    .vct-footer-grid {
        padding: 42px 18px !important
    }
}