: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;
    width: 100%;
}

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

/* dailyushistory.com — Footer soft/light v2026.10.01 */
.vct-footer {
    margin-top: 0 !important;
    background: #f4f7fb !important;
    color: #334155 !important;
    border-top: 1px solid #e4eaf2 !important;
}

.vct-footer-grid {
    width: calc(100% - 32px) !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 48px 0 40px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(180px, .8fr) minmax(0, 1fr) !important;
    gap: 48px !important;
    color: #334155 !important;
}

.vct-footer-grid::before {
    display: none !important
}

.vct-footer-grid>div {
    min-width: 0 !important
}

.vct-footer-grid>div:first-child {
    padding-right: 20px !important
}

.vct-footer-logo {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 0 18px !important
}

.vct-footer-logo img {
    display: block !important;
    width: 205px !important;
    max-width: 100% !important;
    height: auto !important
}

.vct-footer-grid h3 {
    margin: 0 0 18px !important;
    padding: 0 0 11px !important;
    color: #123b8f !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: .2px !important;
    position: relative !important;
}

.vct-footer-grid h3::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 38px !important;
    height: 3px !important;
    border-radius: 99px !important;
    background: #f2c400 !important;
}

.vct-footer-grid>div:first-child h3 {
    margin: 0 0 10px !important;
    padding: 0 !important;
    color: #1b3f88 !important;
    font-size: 19px !important;
}

.vct-footer-grid>div:first-child h3::after {
    display: none !important
}

.vct-footer-grid p {
    margin: 0 0 12px !important;
    color: #64748b !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
}

.vct-footer-grid p b {
    color: #243b64 !important
}

.vct-footer-grid a:not(.vct-footer-logo) {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 0 11px !important;
    color: #475569 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    text-decoration: none !important;
    transition: color .2s ease, transform .2s ease !important;
}

.vct-footer-grid a:not(.vct-footer-logo)::before {
    display: none !important
}

.vct-footer-grid a:not(.vct-footer-logo):hover {
    color: #1749b8 !important;
    transform: translateX(3px) !important
}

.vct-footer-grid>div:nth-child(3) span {
    display: block !important;
    margin: 0 0 11px !important;
    color: #475569 !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
}

.vct-footer-grid>div:nth-child(3) .vct-footer-phone {
    color: #243b64 !important;
    font-weight: 700 !important;
    font-size: 15px !important;
}

.vct-footer-grid>div:nth-child(3) .vct-footer-phone::before {
    content: "☎" !important;
    display: inline-block !important;
    margin-right: 8px !important;
    color: #1749b8 !important
}

.vct-footer-grid>div:nth-child(3) .vct-footer-email::before {
    content: "✉" !important;
    display: inline-block !important;
    margin-right: 8px !important;
    color: #1749b8 !important
}

.vct-footer-grid>div:nth-child(3) .vct-footer-address::before {
    content: "⌖" !important;
    display: inline-block !important;
    margin-right: 8px !important;
    color: #1749b8 !important
}

.vct-footer-contact-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: max-content !important;
    margin-top: 5px !important;
    padding: 10px 16px !important;
    border: 1px solid #d5deea !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #1749b8 !important;
    font-weight: 700 !important;
    box-shadow: 0 3px 10px rgba(15, 43, 82, .05) !important;
}

.vct-footer-contact-btn:hover {
    background: #1749b8 !important;
    color: #fff !important;
    border-color: #1749b8 !important
}

.vct-footer-bottom {
    margin: 0 !important;
    padding: 14px 16px !important;
    background: #0d2346 !important;
    color: #c7d3e2 !important;
    border-top: 1px solid rgba(255, 255, 255, .06) !important;
    text-align: center !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
}

@media(max-width:900px) {
    .vct-footer-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 32px 28px !important;
        padding: 42px 0 34px !important
    }

    .vct-footer-grid>div:first-child {
        grid-column: 1 / -1 !important;
        padding-right: 0 !important
    }
}

@media(max-width:650px) {
    .vct-footer-grid {
        width: calc(100% - 28px) !important;
        grid-template-columns: 1fr !important;
        gap: 26px !important;
        padding: 36px 0 28px !important
    }

    .vct-footer-grid>div:first-child {
        grid-column: auto !important
    }

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

/* Multi-website business profile */
.vct-company-websites {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #e6ebf2
}

.vct-website-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 14px
}

.vct-website-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 14px;
    border: 1px solid #e1e7f0;
    border-radius: 12px;
    background: #fff;
    text-decoration: none !important;
    transition: .18s ease;
    min-width: 0
}

.vct-website-item:hover {
    border-color: #2c5cc8;
    box-shadow: 0 8px 22px rgba(25, 55, 105, .08);
    transform: translateY(-1px)
}

.vct-website-no {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    flex: 0 0 32px;
    border-radius: 9px;
    background: #eef3ff;
    color: #2454a8;
    font-weight: 700;
    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: 700
}

@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: 700;
    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: 700;
    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: 700;
    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: 700
}

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

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

.vct-tax-update-note {
    margin-top: 18px;
    padding: 13px 15px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #f8fafc;
    color: #475569;
    line-height: 1.6;
    font-size: 13px
}

.vct-tax-update-note b {
    color: #173d77
}

.vct-business-activities {
    margin-top: 12px
}

.vct-activities-text {
    padding: 13px 15px;
    background: #f8fafc;
    border: 1px solid #e7edf4;
    border-radius: 10px;
    white-space: normal;
    line-height: 1.75;
    color: #334155
}

/* MST-style business profile fields and activity table */
.vct-facebook-tax {
    margin: 18px 0 0;
    padding: 12px 14px;
    border: 1px solid #e5eaf1;
    border-radius: 10px;
    background: #f8fafc;
    color: #4b5b70;
    font-size: 14px
}

.vct-facebook-tax a {
    color: #1877f2;
    text-decoration: none
}

.vct-activities-table-wrap {
    overflow-x: auto;
    margin-top: 16px;
    border: 1px solid #e3e8ef;
    border-radius: 10px
}

.vct-activities-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff
}

.vct-activities-table th,
.vct-activities-table td {
    padding: 14px 16px;
    border-bottom: 1px solid #e8edf3;
    text-align: left;
    vertical-align: top
}

.vct-activities-table th {
    background: #f7f9fc;
    color: #26364b;
    font-weight: 700
}

.vct-activities-table th:first-child,
.vct-activities-table td:first-child {
    width: 100px;
    white-space: nowrap
}

.vct-activity-detail {
    margin-top: 6px;
    color: #56657a;
    line-height: 1.65;
    font-size: 14px
}

/* MÃ SỐ THUẾ CSS logo trên hồ sơ doanh nghiệp */
.vct-company-logo.vct-masothue-logo {
    background: #fff;
    border: 4px solid rgba(255, 255, 255, .55);
    box-shadow: 0 8px 22px rgba(8, 31, 90, .18);
    overflow: hidden;
}

.vct-mst-mark {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
    line-height: .92;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 700;
    letter-spacing: -.04em;
    transform: skew(-4deg);
}

.vct-mst-mark i {
    font-style: normal;
    font-size: 15px;
    color: #e1262f;
    letter-spacing: -.06em;
}

.vct-mst-mark strong {
    font-size: 23px;
    color: #243d68;
    letter-spacing: -.07em;
}

@media (max-width:700px) {
    .vct-mst-mark i {
        font-size: 12px
    }

    .vct-mst-mark strong {
        font-size: 19px
    }
}

/* Logo Mã Số Thuế dùng ảnh nội bộ dailyushistory.com */
.vct-company-logo.vct-masothue-logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: inherit;
}

/* dailyushistory.com public directory homepage redesign */
.avw-site {
    background: #f5f8fc;
    color: #142238;
    font-family: Arial, "Helvetica Neue", sans-serif;
    font-size: 14px;
    letter-spacing: 0
}

.avw-header {
    background: #fff;
    box-shadow: 0 2px 12px rgba(10, 38, 70, .08);
    position: relative;
    z-index: 30
}

.avw-top {
    max-width: 1240px;
    margin: auto;
    min-height: 66px;
    padding: 8px 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px
}

.avw-logo {
    display: flex;
    align-items: center;
    min-width: 210px
}

.avw-logo img {
    display: block;
    width: 220px;
    height: auto;
    max-height: 50px;
    object-fit: contain;
    object-position: left center
}

.avw-top-links {
    display: flex;
    align-items: center;
    gap: 22px
}

.avw-top-links a {
    color: #255078;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700
}

.avw-top-links .avw-top-cta {
    background: #ffc400;
    color: #172a40;
    padding: 10px 15px;
    border-radius: 7px
}

.avw-nav {
    min-height: 37px;
    background: #0755a5;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0;
    padding: 0 15px
}

.avw-nav a {
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    padding: 12px 19px;
    white-space: nowrap
}

.avw-nav a:hover {
    background: #064784
}

.avw-menu {
    display: none
}

.avw-mobile-nav {
    background: #064784;
    padding: 8px 16px
}

.avw-mobile-nav a {
    display: block;
    color: #fff;
    padding: 10px;
    text-decoration: none
}

.avw-hero {
    position: relative;
    isolation: isolate;
    min-height: 300px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #0c467c url('/assets/avw-hero.png') center 48%/cover no-repeat;
    color: #fff
}

.avw-hero:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, rgba(0, 41, 82, .92) 0%, rgba(0, 54, 99, .76) 43%, rgba(0, 54, 99, .12) 75%, rgba(0, 36, 74, .16) 100%)
}

.avw-hero-content {
    width: min(1240px, 100%);
    margin: 0 auto;
    padding: 35px 22px 30px;
    position: relative;
    z-index: 2
}

.avw-eyebrow {
    color: #ffd21d;
    font-size: 29px;
    line-height: 1.05;
    font-weight: 700;
    letter-spacing: .2px
}

.avw-hero h1 {
    font-size: 28px;
    line-height: 1.1;
    color: #fff;
    margin: 6px 0 12px;
    font-weight: 700;
    max-width: 600px
}

.avw-hero p {
    font-size: 14px;
    line-height: 1.5;
    color: #f2f7ff;
    margin: 0 0 17px
}

.avw-search {
    width: min(610px, 100%);
    display: grid;
    grid-template-columns: minmax(0, 1fr) 105px;
    gap: 0;
    position: relative
}

.avw-search>input {
    height: 42px;
    min-width: 0;
    border: 0;
    border-radius: 6px 0 0 6px;
    background: #fff;
    padding: 0 13px;
    font-size: 12px;
    color: #20344b;
    outline: none
}

.avw-search>button {
    border: 0;
    background: #ffc400;
    color: #132a45;
    font-weight: 700;
    border-radius: 0 6px 6px 0;
    padding: 0 12px;
    cursor: pointer
}

.avw-filters {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 8px
}

.avw-filters select {
    height: 34px;
    min-width: 0;
    border: 0;
    border-radius: 5px;
    background: #fff;
    color: #26394e;
    padding: 0 9px;
    font-size: 12px
}

.avw-hero-points {
    position: absolute;
    right: max(calc((100% - 1200px)/2), 20px);
    top: 50%;
    transform: translateY(-50%);
    display: grid;
    gap: 8px;
    width: 185px;
    z-index: 2
}

.avw-hero-points>div {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .94);
    color: #ffc400;
    border-radius: 30px 0 0 30px;
    padding: 10px 12px;
    box-shadow: 0 5px 18px #002b5230
}

.avw-hero-points span {
    display: grid;
    color: #172b40;
    gap: 3px
}

.avw-hero-points b {
    font-size: 11px
}

.avw-hero-points small {
    font-size: 10px;
    color: #4d6073
}

.avw-main {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 16px
}

.avw-section {
    padding: 17px 0 9px
}

.avw-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin: 0 0 12px
}

.avw-heading h2 {
    font-size: 16px;
    line-height: 1.2;
    margin: 0;
    color: #18283b;
    font-weight: 700;
    position: relative;
    padding-bottom: 5px
}

.avw-heading h2:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 42px;
    height: 2px;
    background: #ffc400
}

.avw-heading>a {
    color: #1e5b99;
    text-decoration: none;
    font-size: 11px;
    white-space: nowrap
}

.avw-category-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 11px
}

.avw-category {
    min-height: 103px;
    background: #fff;
    border: 1px solid #eaf0f6;
    border-radius: 8px;
    box-shadow: 0 3px 12px rgba(20, 54, 88, .035);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    color: #21334a;
    padding: 9px 6px;
    gap: 5px
}

.avw-category:hover,
.avw-business-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(14, 57, 99, .11)
}

.avw-category .avw-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    font-size: 23px;
    font-weight: 700;
    background: #e3f2ff;
    color: #1682d4
}

.avw-category .icon-1 {
    background: #fff0e8;
    color: #ff6e36
}

.avw-category .icon-2 {
    background: #e8f2ff;
    color: #2163aa
}

.avw-category .icon-3 {
    background: #e4f5ff;
    color: #0094d6
}

.avw-category .icon-4 {
    background: #fff4d9;
    color: #f6a900
}

.avw-category .icon-5 {
    background: #fff0e7;
    color: #f57924
}

.avw-category b {
    font-size: 11px;
    line-height: 1.3
}

.avw-category small {
    font-size: 10px;
    color: #8090a2;
    display: none
}

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

.avw-business-card {
    min-width: 0;
    background: #fff;
    border: 1px solid #e7edf4;
    border-radius: 8px;
    overflow: hidden;
    text-decoration: none;
    color: #1b2b40;
    box-shadow: 0 3px 12px rgba(20, 54, 88, .04);
    transition: transform .18s, box-shadow .18s
}

.avw-business-brand {
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #dcecf8, #fff);
    border-bottom: 1px solid #edf0f4;
    padding: 12px
}

.avw-business-brand img {
    max-width: 100%;
    max-height: 50px;
    object-fit: contain
}

.avw-business-brand span,
.avw-latest-photo span {
    font-size: 26px;
    color: #0862ae;
    font-weight: 700
}

.avw-business-body {
    padding: 10px 10px 11px;
    display: grid;
    gap: 5px
}

.avw-business-body>b {
    font-size: 11px;
    line-height: 1.35;
    min-height: 29px
}

.avw-business-body>small {
    font-size: 10px;
    line-height: 1.3;
    color: #718096;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.avw-stars {
    font-size: 11px;
    color: #ffb400;
    white-space: nowrap
}

.avw-stars small {
    font-size: 9px;
    color: #8290a0
}

.avw-web-banner {
    display: grid;
    grid-template-columns: 1.1fr 1.2fr .7fr;
    align-items: center;
    gap: 12px;
    background: linear-gradient(100deg, #dff1ff, #c5e5ff);
    border: 1px solid #d3eaff;
    border-radius: 12px;
    overflow: hidden;
    margin: 12px -4px 0;
    min-height: 150px;
    padding: 12px 18px;
    box-shadow: 0 5px 18px rgba(30, 110, 180, .08)
}

.avw-web-copy h2 {
    margin: 0 0 3px;
    font-size: 22px;
    color: #0755a5;
    font-weight: 700
}

.avw-web-copy h3 {
    margin: 0 0 8px;
    font-size: 14px;
    color: #0755a5
}

.avw-web-copy p {
    margin: 0 0 12px;
    color: #243b52
}

.avw-web-banner>img {
    width: 100%;
    max-height: 140px;
    object-fit: contain;
    mix-blend-mode: multiply
}

.avw-web-banner ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 9px;
    color: #17446e;
    font-size: 12px
}

.avw-web-banner li:before {
    content: "✓";
    font-weight: 700;
    margin-right: 8px;
    color: #0873aa
}

.avw-btn {
    display: inline-block;
    background: #ffc400;
    color: #172d45;
    text-decoration: none;
    font-weight: 700;
    padding: 9px 14px;
    border-radius: 6px;
    font-size: 12px
}

.avw-latest-grid .avw-business-brand {
    display: none
}

.avw-latest-photo {
    height: 93px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #e3eef7, #fff);
    padding: 8px
}

.avw-latest-photo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.avw-latest-photo.photo-1 {
    background: linear-gradient(135deg, #e9f0f8, #d8e9f9)
}

.avw-latest-photo.photo-2 {
    background: linear-gradient(135deg, #f5f0e9, #e3edf6)
}

.avw-latest-photo.photo-3 {
    background: linear-gradient(135deg, #e5f4ed, #f6faf7)
}

.avw-latest-photo.photo-4 {
    background: linear-gradient(135deg, #eaf0f5, #f8f9fb)
}

.avw-promo-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    padding: 10px 0
}

.avw-promo {
    position: relative;
    min-height: 165px;
    border-radius: 10px;
    overflow: hidden;
    background: #d7eaff
}

.avw-promo>img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.avw-promo:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 58, 112, .93), rgba(0, 78, 142, .72) 48%, rgba(0, 72, 140, .05) 100%)
}

.promo-ad:after {
    background: linear-gradient(90deg, rgba(223, 242, 255, .97), rgba(221, 240, 255, .88) 55%, rgba(221, 240, 255, .08) 100%)
}

.avw-promo>div {
    position: relative;
    z-index: 2;
    padding: 17px;
    color: #fff;
    max-width: 76%
}

.promo-ad>div {
    color: #0755a5
}

.avw-promo h2 {
    font-size: 18px;
    line-height: 1.25;
    margin: 0 0 8px;
    font-weight: 700
}

.avw-promo h2 strong {
    color: #ffcf00
}

.avw-promo p {
    font-size: 11px;
    line-height: 1.7;
    margin: 0 0 11px
}

.avw-news-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px
}

.avw-news-card {
    background: #fff;
    border: 1px solid #e8edf4;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 12px rgba(20, 54, 88, .035)
}

.avw-news-card>a {
    display: block;
    height: 95px;
    overflow: hidden;
    background: #dbeafa
}

.avw-news-card>a img,
.avw-news-card>img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.avw-news-card>div {
    padding: 10px
}

.avw-news-card h3 {
    font-size: 11px;
    line-height: 1.4;
    margin: 0 0 5px
}

.avw-news-card h3 a {
    color: #1d2f43;
    text-decoration: none
}

.avw-news-card small {
    font-size: 9px;
    color: #8997a7
}

.avw-news-card p {
    font-size: 10px;
    line-height: 1.45;
    color: #68798c;
    margin: 6px 0 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.avw-location-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 9px
}

.avw-location-grid a {
    background: #edf5ff;
    border: 1px solid #e2edfa;
    border-radius: 6px;
    text-align: center;
    padding: 10px 6px;
    color: #255b91;
    text-decoration: none;
    font-size: 11px
}

.avw-location-grid a:hover {
    background: #dcecff
}

.avw-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin: 15px 0 0;
    padding: 16px 5px;
    background: #fff;
    border-top: 1px solid #e8edf4;
    border-bottom: 1px solid #e8edf4
}

.avw-stats>div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border-right: 1px solid #eaf0f5
}

.avw-stats>div:last-child {
    border: 0
}

.avw-stats>div>b {
    font-size: 28px;
    color: #0755a5
}

.avw-stats span {
    display: grid;
    gap: 3px
}

.avw-stats strong {
    font-size: 18px;
    color: #1b2c42
}

.avw-stats small {
    font-size: 10px;
    color: #718096
}

.avw-footer {
    background: linear-gradient(120deg, #04243d, #00152b);
    color: #d5e3f0;
    padding: 28px max(calc((100% - 1200px)/2), 20px) 0;
    margin-top: 0
}

.avw-footer-grid {
    display: grid;
    grid-template-columns: 1.4fr .8fr .8fr 1fr;
    gap: 35px;
    padding-bottom: 25px
}

.avw-footer-logo img {
    width: 220px;
    max-width: 100%;
    height: auto;
    filter: brightness(1.1)
}

.avw-footer p {
    font-size: 11px;
    line-height: 1.7;
    color: #c0d0e0;
    margin: 12px 0
}

.avw-footer h3 {
    font-size: 12px;
    color: #fff;
    margin: 5px 0 13px;
    font-weight: 700
}

.avw-footer-grid>div>a:not(.avw-footer-logo) {
    display: block;
    color: #c0d0e0;
    text-decoration: none;
    font-size: 11px;
    margin: 9px 0
}

.avw-social {
    display: flex;
    gap: 8px
}

.avw-social a {
    display: flex;
    width: 27px;
    height: 27px;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    background: #0870c9;
    color: #fff;
    text-decoration: none;
    font-weight: 700
}

.avw-footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, .14);
    padding: 14px 0;
    text-align: center;
    color: #9db1c4;
    font-size: 10px
}

@media(max-width:900px) {
    .avw-top {
        padding: 8px 15px
    }

    .avw-nav a {
        padding: 12px 11px
    }

    .avw-hero-points {
        right: 10px;
        width: 160px
    }

    .avw-hero-content {
        padding-left: 20px
    }

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

    .avw-business-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 8px
    }

    .avw-web-banner {
        grid-template-columns: 1fr 1fr
    }

    .avw-web-banner ul {
        grid-column: 1/-1;
        grid-template-columns: repeat(2, 1fr)
    }

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

    .avw-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px
    }
}

@media(max-width:620px) {
    .avw-top {
        min-height: 58px
    }

    .avw-logo {
        min-width: 0
    }

    .avw-logo img {
        width: 190px
    }

    .avw-top-links {
        gap: 8px
    }

    .avw-top-links>a:not(.avw-top-cta) {
        display: none
    }

    .avw-top-links .avw-top-cta {
        padding: 8px 9px;
        font-size: 11px
    }

    .avw-menu {
        display: block !important;
        color: #0755a5;
        background: #fff;
        border: 1px solid #dce7f2;
        border-radius: 5px;
        width: 36px;
        height: 34px
    }

    .avw-nav {
        display: none
    }

    .avw-hero {
        min-height: 360px;
        background-position: 60% center
    }

    .avw-hero:before {
        background: linear-gradient(90deg, rgba(0, 41, 82, .94), rgba(0, 54, 99, .72) 68%, rgba(0, 54, 99, .24))
    }

    .avw-hero-content {
        padding: 29px 16px 22px
    }

    .avw-eyebrow {
        font-size: 25px
    }

    .avw-hero h1 {
        font-size: 23px;
        max-width: 370px
    }

    .avw-hero p {
        font-size: 12px
    }

    .avw-search {
        grid-template-columns: minmax(0, 1fr) 88px
    }

    .avw-search>input {
        font-size: 11px;
        padding: 0 9px
    }

    .avw-filters {
        gap: 5px
    }

    .avw-filters select {
        font-size: 10px;
        padding: 0 4px
    }

    .avw-hero-points {
        position: relative;
        top: auto;
        right: auto;
        transform: none;
        width: auto;
        display: flex;
        gap: 5px;
        padding: 0 12px 12px;
        margin-top: -3px
    }

    .avw-hero-points>div {
        flex: 1;
        padding: 8px 5px;
        border-radius: 8px;
        gap: 5px
    }

    .avw-hero-points b {
        font-size: 9px
    }

    .avw-hero-points small {
        font-size: 8px
    }

    .avw-main {
        padding: 0 12px
    }

    .avw-section {
        padding: 14px 0 6px
    }

    .avw-heading h2 {
        font-size: 13px
    }

    .avw-heading>a {
        font-size: 10px
    }

    .avw-category-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px
    }

    .avw-category {
        min-height: 92px
    }

    .avw-category .avw-icon {
        width: 40px;
        height: 40px;
        font-size: 20px
    }

    .avw-category b {
        font-size: 10px
    }

    .avw-business-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .avw-business-card:nth-child(n+5) {
        display: none
    }

    .avw-business-brand {
        height: 62px
    }

    .avw-business-body {
        padding: 8px
    }

    .avw-business-body>b {
        font-size: 10px;
        min-height: 26px
    }

    .avw-web-banner {
        grid-template-columns: 1fr 1fr;
        padding: 11px;
        gap: 5px;
        margin-top: 10px
    }

    .avw-web-copy h2 {
        font-size: 16px
    }

    .avw-web-copy h3 {
        font-size: 11px
    }

    .avw-web-copy p {
        font-size: 10px
    }

    .avw-web-banner>img {
        max-height: 110px
    }

    .avw-web-banner ul {
        font-size: 10px;
        gap: 6px
    }

    .avw-latest-grid .avw-business-card:nth-child(n+5) {
        display: none
    }

    .avw-latest-photo {
        height: 75px
    }

    .avw-promo-grid {
        grid-template-columns: 1fr;
        gap: 9px
    }

    .avw-promo {
        min-height: 160px
    }

    .avw-promo>div {
        max-width: 76%;
        padding: 14px
    }

    .avw-promo h2 {
        font-size: 16px
    }

    .avw-news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .avw-news-card>a {
        height: 85px
    }

    .avw-news-card>div {
        padding: 8px
    }

    .avw-news-card h3 {
        font-size: 10px
    }

    .avw-location-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px
    }

    .avw-location-grid a {
        font-size: 10px;
        padding: 9px 3px
    }

    .avw-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        padding: 15px 0
    }

    .avw-stats>div {
        justify-content: flex-start;
        padding-left: 10px;
        border: 0
    }

    .avw-stats>div>b {
        font-size: 22px
    }

    .avw-stats strong {
        font-size: 15px
    }

    .avw-footer {
        padding: 22px 16px 0
    }

    .avw-footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 16px
    }

    .avw-footer-grid>div:first-child {
        grid-column: 1/-1
    }

    .avw-footer-logo img {
        width: 190px
    }

    .avw-footer h3 {
        font-size: 11px
    }

    .avw-footer p,
    .avw-footer-grid>div>a:not(.avw-footer-logo) {
        font-size: 10px
    }
}


/* ================= BRUCHY HOME DESIGN ================= */
.bruchy-home,
.bruchy-home * {
    box-sizing: border-box;
}

.bruchy-home {
    background: #fff;
    color: #101c2d;
    font-family: Inter, Arial, sans-serif;
    font-size: 13px;
}

.bruchy-home a {
    text-decoration: none;
}

.avw-site:has(.bruchy-home) {
    background: #fff;
    color: #101c2d;
}

.avw-site:has(.bruchy-home) .avw-header {
    position: relative;
    z-index: 20;
    background: #fff;
    border-bottom: 1px solid #edf0f3;
    box-shadow: 0 2px 7px rgba(14, 30, 48, .04);
}

.avw-site:has(.bruchy-home) .avw-header .avw-top {
    width: min(1280px, 100%);
    min-height: 72px;
    margin: auto;
    padding: 8px 24px;
    display: flex;
    align-items: center;
    gap: 18px;
}

.avw-site:has(.bruchy-home) .avw-logo {
    flex: 0 0 auto;
}

.avw-site:has(.bruchy-home) .avw-logo img {
    display: block;
    width: 210px;
    height: 54px;
    object-fit: contain;
    object-position: left center;
}

.avw-site:has(.bruchy-home) .avw-top-links {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-left: auto;
}

.avw-site:has(.bruchy-home) .avw-top-links a {
    color: #172337;
    font-size: 12px;
    font-weight: 700;
}

.avw-site:has(.bruchy-home) .avw-top-links .avw-top-cta {
    background: #ffd400;
    color: #111827;
    border-radius: 5px;
    padding: 12px 17px;
}

.avw-site:has(.bruchy-home) .avw-menu {
    display: none;
}

.avw-site:has(.bruchy-home) .avw-nav {
    width: min(1280px, 100%);
    margin: 0 auto;
    padding: 0 24px;
    min-height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0;
    background: #fff;
}

.avw-site:has(.bruchy-home) .avw-nav a {
    padding: 14px 17px;
    color: #263244;
    font-size: 12px;
    font-weight: 700;
}

.avw-site:has(.bruchy-home) .avw-nav a:hover {
    background: #fff8cc;
    color: #111827;
}

.avw-site:has(.bruchy-home) .avw-mobile-nav {
    background: #fff;
    border-bottom: 1px solid #e7edf3;
    padding: 10px 18px;
}

.avw-site:has(.bruchy-home) .avw-mobile-nav a {
    display: block;
    padding: 11px 8px;
    color: #1d2b3d;
    border-bottom: 1px solid #f1f3f5;
}

.br-hero {
    position: relative;
    min-height: 300px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #f2b78b;
}

.br-hero-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(255, 242, 221, .88) 0%, rgba(255, 242, 221, .66) 44%, rgba(255, 242, 221, .04) 100%), url('/assets/bruchy-hero-sunset.png') center 53%/cover no-repeat;
}

.br-hero-content {
    position: relative;
    z-index: 2;
    width: min(1280px, 100%);
    margin: 0 auto;
    padding: 36px 32px 28px;
}

.br-hero h1 {
    margin: 0 0 9px;
    color: #111d2e;
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -.5px;
}

.br-hero p {
    margin: 0 0 22px;
    color: #1c2b3c;
    font-size: 15px;
    font-weight: 700;
}

.br-search {
    display: grid;
    grid-template-columns: minmax(220px, 1.6fr) minmax(150px, 1fr) minmax(150px, 1fr) 125px;
    gap: 0;
    max-width: 1050px;
    overflow: hidden;
    border: 1px solid #e1e4e8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(16, 30, 46, .13);
}

.br-search label {
    min-width: 0;
    height: 50px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 0 13px;
    border-right: 1px solid #e5e9ee;
    color: #2d485f;
}

.br-search label span {
    color: #12607d;
    font-size: 17px;
}

.br-search input,
.br-search select {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #283747;
    font: 12px Arial, sans-serif;
}

.br-search select {
    appearance: auto;
}

.br-search button {
    border: 0;
    margin: 4px;
    border-radius: 5px;
    background: #ffd400;
    color: #111827;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.br-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    width: min(1180px, 100%);
    margin: -1px auto 0;
    padding: 15px 28px;
    background: #fff;
}

.br-metrics>div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-width: 0;
}

.br-metrics>div>b {
    color: #e6b600;
    font-size: 26px;
}

.br-metrics span {
    display: grid;
    gap: 2px;
}

.br-metrics strong {
    color: #111d2e;
    font-size: 15px;
    font-weight: 700;
}

.br-metrics small {
    color: #687484;
    font-size: 11px;
}

.br-main {
    width: min(1280px, 100%);
    margin: 0 auto;
    padding: 0 24px;
}

.br-section {
    padding: 15px 0 8px;
}

.br-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 0 13px;
}

.br-heading>div {
    border-left: 4px solid #ffd400;
    padding-left: 10px;
}

.br-heading h2 {
    margin: 0;
    color: #111d2e;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
}

.br-heading p {
    margin: 3px 0 0;
    color: #687484;
    font-size: 11px;
}

.br-heading>a {
    flex: 0 0 auto;
    color: #d4a900;
    font-size: 11px;
    font-weight: 700;
}

.br-industry-grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 10px;
}

.br-industry {
    min-width: 0;
    min-height: 100px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 9px 6px;
    border: 1px solid #edf0f3;
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(16, 30, 46, .045);
    text-align: center;
    color: #172337;
}

.br-industry:hover,
.br-company:hover,
.br-city:hover {
    border-color: #ffd400;
    box-shadow: 0 4px 13px rgba(16, 30, 46, .1);
    transform: translateY(-1px);
}

.br-industry-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 43px;
    height: 43px;
    border-radius: 50%;
    background: #edf5ff;
    color: #1681df;
    font-size: 25px;
    font-weight: 700;
}

.br-icon-1 {
    background: #eef2ff;
    color: #5368d8
}

.br-icon-2 {
    background: #fff0f6;
    color: #e83f8e
}

.br-icon-3 {
    background: #e7faf3;
    color: #00b58a
}

.br-icon-4 {
    background: #fff0e9;
    color: #ef714b
}

.br-icon-5 {
    background: #fff5e8;
    color: #ff8a23
}

.br-icon-6 {
    background: #e9f8f0;
    color: #38b987
}

.br-icon-7 {
    background: #e7f8ff;
    color: #129bd1
}

.br-icon-8 {
    background: #eef6ff;
    color: #1485d6
}

.br-icon-9 {
    background: #fff0f1;
    color: #f05c68
}

.br-icon-10 {
    background: #f0edff;
    color: #6e55c9
}

.br-icon-11 {
    background: #fff6e5;
    color: #f3a322
}

.br-icon-12 {
    background: #f8f4dc;
    color: #b5a800
}

.br-icon-13 {
    background: #edf4f8;
    color: #4f6e7e
}

.br-industry b {
    color: #1c2b3b;
    font-size: 11px;
    line-height: 1.3;
}

.br-industry small {
    color: #738092;
    font-size: 10px;
}

.br-company-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.br-company {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    min-height: 175px;
    padding: 11px 10px 12px;
    border: 1px solid #e9edf2;
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(16, 30, 46, .045);
    text-align: center;
    color: #142236;
}

.br-company-logo {
    width: 100%;
    height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
}

.br-company-logo img {
    max-width: 90%;
    max-height: 56px;
    object-fit: contain;
}

.br-company-logo span {
    color: #1366a9;
    font-size: 23px;
    font-weight: 700;
}

.br-company>b {
    min-height: 30px;
    color: #1c2a3b;
    font-size: 12px;
    line-height: 1.35;
}

.br-company>small {
    display: block;
    margin-top: 4px;
    color: #647286;
    font-size: 10px;
    line-height: 1.3;
}

.br-company .br-location {
    color: #d89e00;
}

.br-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 100px;
    padding: 9px 13px;
    border: 0;
    border-radius: 4px;
    background: #ffd400;
    color: #111827 !important;
    font-size: 11px;
    font-weight: 700;
    text-align: center;
}

.br-company .br-btn {
    width: 80%;
    margin-top: auto;
    padding: 7px 9px;
}

.br-banner {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(220px, 1fr) 125px;
    align-items: center;
    gap: 12px;
    min-height: 118px;
    margin: 14px 0 4px;
    padding: 16px 20px;
    overflow: hidden;
    border-radius: 7px;
    background: #092c4b;
    color: #fff;
}

.br-banner>img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .68;
}

.br-banner:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(4, 34, 62, .95), rgba(4, 34, 62, .56), rgba(4, 34, 62, .82));
}

.br-banner>*:not(img) {
    position: relative;
    z-index: 2;
}

.br-banner-copy h2 {
    margin: 0;
    color: #ffd400;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
}

.br-banner ul {
    margin: 0;
    padding-left: 18px;
    color: #fff;
    font-size: 11px;
    line-height: 1.9;
}

.br-city-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
}

.br-city {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #e9edf2;
    border-radius: 7px;
    color: #142236;
    box-shadow: 0 2px 6px rgba(16, 30, 46, .045);
}

.br-city img {
    display: block;
    width: 100%;
    height: 100px;
    object-fit: cover;
}

.br-city b {
    padding: 8px 9px 0;
    font-size: 12px;
}

.br-city small {
    padding: 4px 9px 9px;
    color: #687484;
    font-size: 11px;
}

.br-latest-list {
    border: 1px solid #e9edf2;
    border-radius: 7px;
    overflow: hidden;
}

.br-latest-row {
    display: grid;
    grid-template-columns: 55px minmax(160px, 1.2fr) minmax(120px, 1fr) minmax(120px, 1fr) 90px 95px;
    align-items: center;
    gap: 10px;
    min-height: 49px;
    padding: 6px 10px;
    border-bottom: 1px solid #edf0f3;
    color: #1c2b3b;
    background: #fff;
}

.br-latest-row:last-child {
    border-bottom: 0;
}

.br-latest-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 35px;
    overflow: hidden;
}

.br-latest-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.br-latest-name {
    font-size: 11px;
    line-height: 1.4;
}

.br-latest-row>span:not(.br-latest-logo) {
    color: #5e6c7d;
    font-size: 10px;
}

.br-latest-city {
    color: #d9a600 !important;
}

.br-latest-row time {
    color: #526175;
    font-size: 10px;
}

.br-latest-row .br-btn {
    min-width: 0;
    padding: 8px 6px;
    font-size: 10px;
}

.br-news-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.br-news {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e9edf2;
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(16, 30, 46, .04);
}

.br-news-image {
    display: block;
    height: 100px;
    overflow: hidden;
}

.br-news img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.br-news-body {
    padding: 9px 10px 11px;
}

.br-news h3 {
    margin: 0 0 6px;
    font-size: 12px;
    line-height: 1.4;
}

.br-news h3 a {
    color: #172337;
}

.br-news small {
    color: #d2a200;
    font-size: 10px;
}

.br-news p {
    margin: 7px 0 0;
    color: #6d7887;
    font-size: 10px;
    line-height: 1.5;
}

.br-benefits {
    margin-top: 12px;
    padding: 20px 24px 22px;
    background: #fff8cf;
    text-align: center;
}

.br-benefits h2 {
    margin: 0 0 17px;
    color: #111d2e;
    font-size: 17px;
    font-weight: 700;
}

.br-benefits>div {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: min(1280px, 100%);
    margin: 0 auto;
}

.br-benefits article {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    padding: 6px 10px;
    border-right: 1px solid rgba(211, 174, 0, .2);
}

.br-benefits article:last-child {
    border: 0;
}

.br-benefits article>b {
    color: #f1c400;
    font-size: 31px;
}

.br-benefits article strong {
    color: #263344;
    font-size: 12px;
}

.br-benefits article small {
    color: #697484;
    font-size: 10px;
    line-height: 1.5;
}

.br-bottom-cta {
    padding: 19px 20px 22px;
    background: linear-gradient(90deg, rgba(4, 31, 58, .91), rgba(4, 31, 58, .78)), url('/assets/bruchy-hero-sunset.png') center 68%/cover no-repeat;
    color: #fff;
    text-align: center;
}

.br-bottom-cta h2 {
    margin: 0 0 6px;
    font-size: 18px;
    font-weight: 700;
}

.br-bottom-cta p {
    margin: 0 0 13px;
    color: #dce6f2;
    font-size: 12px;
}

.avw-site:has(.bruchy-home) .avw-footer {
    background: #071a2c;
    color: #e8edf4;
    padding: 26px max(calc((100% - 1230px)/2), 24px) 13px;
}

.avw-site:has(.bruchy-home) .avw-footer-grid {
    display: grid;
    grid-template-columns: 1.3fr .8fr .8fr 1fr;
    gap: 28px;
    max-width: 1230px;
    margin: 0 auto;
}

.avw-site:has(.bruchy-home) .avw-footer-logo img {
    width: 180px;
    max-height: 52px;
    object-fit: contain;
    object-position: left center;
    filter: brightness(0) invert(1);
}

.avw-site:has(.bruchy-home) .avw-footer p {
    color: #aebdce;
    font-size: 11px;
    line-height: 1.6;
}

.avw-site:has(.bruchy-home) .avw-footer h3 {
    margin: 5px 0 12px;
    color: #fff;
    font-size: 12px;
}

.avw-site:has(.bruchy-home) .avw-footer a {
    display: block;
    margin: 7px 0;
    color: #c2cedc;
    font-size: 11px;
}

.avw-site:has(.bruchy-home) .avw-footer .avw-social {
    display: flex;
    gap: 8px;
}

.avw-site:has(.bruchy-home) .avw-footer .avw-social a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    margin: 0;
    border-radius: 50%;
    background: #173f6a;
    color: #fff;
}

.avw-site:has(.bruchy-home) .avw-footer-bottom {
    max-width: 1230px;
    margin: 18px auto 0;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    color: #93a4b7;
    font-size: 10px;
}

@media(max-width:1050px) {
    .avw-site:has(.bruchy-home) .avw-top-links {
        gap: 10px;
    }

    .avw-site:has(.bruchy-home) .avw-top-links a {
        font-size: 11px;
    }

    .avw-site:has(.bruchy-home) .avw-nav a {
        padding: 13px 12px;
    }

    .br-industry-grid {
        grid-template-columns: repeat(7, minmax(0, 1fr));
    }

    .br-company-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .br-latest-row {
        grid-template-columns: 45px minmax(140px, 1.2fr) minmax(90px, 1fr) minmax(100px, 1fr) 80px;
    }

    .br-latest-row time {
        display: none;
    }
}

@media(max-width:760px) {
    .avw-site:has(.bruchy-home) .avw-header .avw-top {
        min-height: 62px;
        padding: 6px 14px;
    }

    .avw-site:has(.bruchy-home) .avw-logo img {
        width: 180px;
        height: 48px;
    }

    .avw-site:has(.bruchy-home) .avw-top-links {
        display: none;
    }

    .avw-site:has(.bruchy-home) .avw-menu {
        display: block;
        margin-left: auto;
        padding: 9px 12px;
        border: 0;
        border-radius: 5px;
        background: #ffd400;
        color: #111827;
        font-size: 21px;
    }

    .avw-site:has(.bruchy-home) .avw-nav {
        display: none;
    }

    .br-hero {
        min-height: 280px;
    }

    .br-hero-bg {
        background-image: linear-gradient(90deg, rgba(255, 242, 221, .92), rgba(255, 242, 221, .66) 66%, rgba(255, 242, 221, .2)), url('/assets/bruchy-hero-sunset.png');
        background-position: 60% center;
    }

    .br-hero-content {
        padding: 27px 15px 24px;
    }

    .br-hero h1 {
        font-size: 29px;
    }

    .br-hero p {
        max-width: 440px;
        font-size: 12px;
        line-height: 1.5;
    }

    .br-search {
        grid-template-columns: 1fr 1fr;
        border-radius: 7px;
    }

    .br-search .br-query {
        grid-column: 1/-1;
        border-bottom: 1px solid #e5e9ee;
    }

    .br-search .br-select {
        height: 43px;
        padding: 0 9px;
    }

    .br-search .br-select:nth-of-type(3) {
        border-right: 0;
    }

    .br-search button {
        min-height: 40px;
        grid-column: 1/-1;
        margin: 0 5px 5px;
    }

    .br-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 13px 10px;
        gap: 12px 4px;
    }

    .br-metrics>div {
        justify-content: flex-start;
        padding-left: 15%;
    }

    .br-metrics>div>b {
        font-size: 21px;
    }

    .br-metrics strong {
        font-size: 13px;
    }

    .br-main {
        padding: 0 12px;
    }

    .br-section {
        padding-top: 13px;
    }

    .br-heading {
        align-items: flex-start;
        gap: 8px;
    }

    .br-heading h2 {
        font-size: 15px;
    }

    .br-heading p {
        font-size: 10px;
    }

    .br-heading>a {
        font-size: 10px;
    }

    .br-industry-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 7px;
    }

    .br-industry {
        min-height: 90px;
        padding: 7px 3px;
    }

    .br-industry-icon {
        width: 36px;
        height: 36px;
        font-size: 21px;
    }

    .br-industry b {
        font-size: 10px;
    }

    .br-industry small {
        font-size: 9px;
    }

    .br-company-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .br-company {
        min-height: 160px;
        padding: 9px 7px;
    }

    .br-company-logo {
        height: 55px;
    }

    .br-company>b {
        font-size: 11px;
    }

    .br-banner {
        grid-template-columns: 1fr;
        gap: 9px;
        padding: 14px;
    }

    .br-banner-copy h2 {
        font-size: 18px;
    }

    .br-banner ul {
        font-size: 11px;
    }

    .br-banner .br-btn {
        justify-self: start;
    }

    .br-city-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .br-city img {
        height: 92px;
    }

    .br-city-grid .br-city:last-child {
        display: none;
    }

    .br-latest-row {
        grid-template-columns: 38px minmax(0, 1fr) 82px;
        gap: 7px;
        padding: 7px;
    }

    .br-latest-logo {
        width: 35px;
    }

    .br-latest-row>span:not(.br-latest-logo),
    .br-latest-row time {
        display: none;
    }

    .br-latest-name {
        font-size: 10px;
    }

    .br-latest-row .br-btn {
        font-size: 9px;
        padding: 7px 4px;
    }

    .br-news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .br-news-image {
        height: 90px;
    }

    .br-news-body {
        padding: 8px;
    }

    .br-news h3 {
        font-size: 11px;
    }

    .br-news p {
        font-size: 9px;
    }

    .br-benefits {
        padding: 18px 8px;
    }

    .br-benefits>div {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px 0;
    }

    .br-benefits article {
        border: 0;
    }

    .br-bottom-cta h2 {
        font-size: 15px;
        line-height: 1.4;
    }

    .avw-site:has(.bruchy-home) .avw-footer {
        padding: 22px 14px 12px;
    }

    .avw-site:has(.bruchy-home) .avw-footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 18px 12px;
    }

    .avw-site:has(.bruchy-home) .avw-footer-grid>div:first-child {
        grid-column: 1/-1;
    }
}

@media(max-width:420px) {
    .br-hero h1 {
        font-size: 25px;
    }

    .br-industry-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .br-metrics>div {
        padding-left: 7%;
    }

    .br-heading>a {
        max-width: 95px;
        text-align: right;
    }
}


/* ===== dailyushistory.com directory homepage ===== */
.du-home,
.du-home * {
    box-sizing: border-box
}

.du-home {
    background: #fff;
    color: #10243b;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px
}

.du-home a {
    text-decoration: none
}

.avw-site:has(.du-home) {
    background: #fff;
    color: #10243b
}

.avw-site:has(.du-home) .avw-header {
    position: relative;
    z-index: 20;
    background: #fff;
    border-bottom: 1px solid #e6ebf2;
    box-shadow: 0 2px 8px rgba(12, 35, 62, .04)
}

.avw-site:has(.du-home) .avw-top {
    max-width: 1260px;
    min-height: 64px;
    margin: auto;
    padding: 7px 22px;
    display: flex;
    align-items: center;
    gap: 20px
}

.avw-site:has(.du-home) .avw-logo img {
    display: block;
    width: 270px;
    height: 47px;
    object-fit: contain;
    object-position: left center
}

.avw-site:has(.du-home) .avw-top-links {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-left: auto
}

.avw-site:has(.du-home) .avw-top-links a {
    color: #33445b;
    font-size: 11px;
    font-weight: 700
}

.avw-site:has(.du-home) .avw-top-links .avw-top-cta {
    background: #ffc928;
    color: #142b46;
    border-radius: 4px;
    padding: 10px 15px
}

.avw-site:has(.du-home) .avw-menu {
    display: none
}

.avw-site:has(.du-home) .avw-nav {
    max-width: 1260px;
    margin: 0 auto;
    min-height: 40px;
    padding: 0 22px;
    display: flex;
    align-items: center;
    gap: 0;
    background: #fff
}

.avw-site:has(.du-home) .avw-nav a {
    padding: 13px 15px;
    color: #24374e;
    font-size: 11px;
    font-weight: 700
}

.avw-site:has(.du-home) .avw-nav a:hover,
.avw-site:has(.du-home) .avw-nav .du-nav-home {
    background: #ffc928;
    color: #142b46;
    border-radius: 3px
}

.avw-site:has(.du-home) .avw-mobile-nav {
    padding: 8px 16px;
    background: #fff;
    border-bottom: 1px solid #e7edf4
}

.avw-site:has(.du-home) .avw-mobile-nav a {
    display: block;
    padding: 11px;
    color: #20344c;
    border-bottom: 1px solid #edf1f5
}

.du-hero {
    position: relative;
    min-height: 305px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #123e70
}

.du-hero:before {
    content: "";
    position: absolute;
    inset: 0;
    background: url('/assets/dailyushistory-hero.png') center 55%/cover no-repeat
}

.du-hero-shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(5, 35, 70, .55), rgba(5, 35, 70, .28) 48%, rgba(5, 35, 70, .2))
}

.du-hero-inner {
    position: relative;
    z-index: 2;
    width: min(1200px, 100%);
    margin: 0 auto;
    padding: 28px 25px 18px;
    text-align: center;
    color: #fff
}

.du-hero h1 {
    margin: 0 0 8px;
    font-size: clamp(25px, 3vw, 38px);
    font-weight: 700;
    line-height: 1.2;
    text-shadow: 0 2px 4px rgba(0, 0, 0, .2)
}

.du-hero h1 strong {
    color: #ffc928
}

.du-hero p {
    margin: 0 0 20px;
    color: #f3f7fc;
    font-size: 14px;
    font-weight: 600
}

.du-search {
    display: grid;
    grid-template-columns: minmax(200px, 1.6fr) minmax(150px, 1fr) minmax(150px, 1fr) 125px;
    max-width: 1010px;
    margin: 0 auto 21px;
    overflow: hidden;
    border: 1px solid #e3e8ef;
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(0, 0, 0, .15)
}

.du-search label {
    display: flex;
    align-items: center;
    min-width: 0;
    height: 47px;
    padding: 0 12px;
    border-right: 1px solid #e7ebf1
}

.du-search input,
.du-search select {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: #fff;
    color: #34445a;
    font: 11px Arial, sans-serif
}

.du-search button {
    margin: 3px;
    border: 0;
    border-radius: 4px;
    background: #ffc928;
    color: #122a44;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer
}

.du-hero-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    max-width: 920px;
    margin: 0 auto
}

.du-hero-stats>div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-align: left
}

.du-hero-stats>div>b {
    font-size: 27px;
    color: #ffc928
}

.du-hero-stats span {
    display: grid;
    gap: 2px
}

.du-hero-stats strong {
    font-size: 16px;
    color: #fff
}

.du-hero-stats small {
    font-size: 11px;
    color: #e4edf7
}

.du-main {
    width: min(1220px, 100%);
    margin: 0 auto;
    padding: 0 22px
}

.du-section {
    padding: 16px 0 9px
}

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

.du-head h2 {
    margin: 0;
    padding-left: 9px;
    border-left: 4px solid #ffc928;
    color: #10243b;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3
}

.du-head>a {
    color: #1374bd;
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap
}

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

.du-industry {
    min-height: 93px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 8px 5px;
    border: 1px solid #e7edf4;
    border-radius: 5px;
    background: #fff;
    color: #1b2f46;
    text-align: center;
    box-shadow: 0 2px 5px rgba(10, 39, 70, .035)
}

.du-industry:hover,
.du-company-card:hover,
.du-city:hover {
    border-color: #ffc928;
    box-shadow: 0 4px 12px rgba(10, 39, 70, .1);
    transform: translateY(-1px)
}

.du-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 37px;
    height: 37px;
    color: #1479d1;
    font-size: 25px;
    font-weight: 700
}

.du-icon-1 {
    color: #f1a900
}

.du-icon-2 {
    color: #ff8a28
}

.du-icon-3 {
    color: #2db65e
}

.du-icon-4 {
    color: #f2a020
}

.du-icon-5 {
    color: #ef526e
}

.du-icon-6 {
    color: #1678d8
}

.du-icon-7 {
    color: #1ea8db
}

.du-icon-8 {
    color: #20a8a0
}

.du-icon-9 {
    color: #f15c4f
}

.du-icon-10 {
    color: #e34e39
}

.du-icon-11 {
    color: #3c73db
}

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

.du-industry small {
    font-size: 9px;
    color: #718095
}

.du-featured {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px
}

.du-company-card {
    min-width: 0;
    min-height: 168px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 10px 10px 9px;
    border: 1px solid #e7edf4;
    border-radius: 5px;
    background: #fff;
    color: #182d44;
    box-shadow: 0 2px 5px rgba(10, 39, 70, .035)
}

.du-company-logo {
    width: 100%;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4px
}

.du-company-logo img {
    max-width: 94%;
    max-height: 51px;
    object-fit: contain
}

.du-company-logo b {
    font-size: 22px;
    font-weight: 700;
    color: #1269b8
}

.du-company-card>strong {
    display: block;
    min-height: 24px;
    font-size: 11px;
    line-height: 1.3
}

.du-company-card>small {
    margin-top: 3px;
    color: #66768b;
    font-size: 9px;
    line-height: 1.35
}

.du-company-meta {
    display: block;
    margin-top: 4px;
    color: #67788a;
    font-size: 9px;
    line-height: 1.3
}

.du-button {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 27px;
    margin-top: auto;
    padding: 6px 10px;
    border-radius: 3px;
    background: #ffc928;
    color: #132b45 !important;
    font-size: 10px;
    font-weight: 700;
    text-align: center
}

.du-cities {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 9px
}

.du-city {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    border: 1px solid #e7edf4;
    border-radius: 5px;
    background: #fff;
    color: #172d45;
    box-shadow: 0 2px 5px rgba(10, 39, 70, .035);
    text-align: center
}

.du-city img {
    display: block;
    width: 100%;
    height: 102px;
    object-fit: cover
}

.du-city b {
    margin-top: 7px;
    font-size: 11px
}

.du-city small {
    margin: 3px 0 8px;
    color: #66768b;
    font-size: 9px
}

.du-latest {
    border-top: 1px solid #e8edf2
}

.du-latest-row {
    display: grid;
    grid-template-columns: 55px minmax(180px, 1.6fr) minmax(100px, .7fr) minmax(100px, .7fr) 95px;
    gap: 12px;
    align-items: center;
    min-height: 57px;
    padding: 7px 8px;
    border-bottom: 1px solid #e8edf2;
    color: #24374d;
    background: #fff
}

.du-latest-logo {
    width: 48px;
    height: 39px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden
}

.du-latest-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.du-latest-logo b {
    font-size: 16px;
    color: #1474bf
}

.du-latest-main {
    display: grid;
    gap: 4px;
    min-width: 0
}

.du-latest-main b {
    font-size: 10px;
    line-height: 1.35
}

.du-latest-main small {
    overflow: hidden;
    color: #6c7a8c;
    font-size: 9px;
    white-space: nowrap;
    text-overflow: ellipsis
}

.du-latest-city,
.du-latest-industry {
    color: #6a7889;
    font-size: 10px
}

.du-latest-row .du-button {
    min-height: 28px
}

.du-benefits {
    margin-top: 8px;
    padding: 22px max(calc((100% - 1180px)/2), 22px) 24px;
    background: #edf8ff;
    text-align: center
}

.du-benefits h2 {
    margin: 0 0 17px;
    color: #10243b;
    font-size: 18px;
    font-weight: 700
}

.du-benefits>div {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px
}

.du-benefits article {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 12px 8px;
    border-radius: 5px;
    background: #fff
}

.du-benefits article>b {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    color: #fff;
    font-size: 25px
}

.du-benefits .green {
    background: #3ac76b
}

.du-benefits .blue {
    background: #268af2
}

.du-benefits .gold {
    background: #ffc52e
}

.du-benefits .red {
    background: #f34e6a
}

.du-benefits article strong {
    font-size: 11px;
    color: #20344b
}

.du-benefits article small {
    font-size: 10px;
    line-height: 1.45;
    color: #6d7b8b
}

.du-news {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px
}

.du-news-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e7edf4;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 2px 5px rgba(10, 39, 70, .035)
}

.du-news-card>a {
    display: block;
    height: 105px;
    overflow: hidden
}

.du-news-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.du-news-card>div {
    padding: 9px 9px 10px
}

.du-news-card h3 {
    margin: 0 0 6px;
    font-size: 11px;
    line-height: 1.35
}

.du-news-card h3 a {
    color: #1b2f46
}

.du-news-card small {
    color: #7d8b9b;
    font-size: 9px
}

.du-news-card p {
    margin: 6px 0 0;
    color: #68788b;
    font-size: 9px;
    line-height: 1.5
}

.du-partners {
    padding-bottom: 18px
}

.du-partner-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px
}

.du-partner {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 49px;
    padding: 8px;
    border: 1px solid #e5ebf2;
    border-radius: 5px;
    background: #fff;
    color: #176bc1;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: -.4px
}

.du-partner-microsoft {
    color: #555
}

.du-partner-samsung {
    color: #082f89
}

.du-partner-toyota {
    color: #d71920
}

.du-partner-panasonic {
    color: #153a8a
}

.du-partner-canon {
    color: #d71920;
    font-family: Georgia, serif
}

.du-cta {
    position: relative;
    min-height: 142px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #ffc928
}

.du-cta>img {
    position: absolute;
    right: 0;
    top: 0;
    width: 52%;
    height: 100%;
    object-fit: cover;
    object-position: center 45%
}

.du-cta:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #ffc928 0%, #ffc928 45%, rgba(255, 201, 40, .84) 55%, rgba(255, 201, 40, .02) 100%)
}

.du-cta>div {
    position: relative;
    z-index: 2;
    width: min(1220px, 100%);
    margin: 0 auto;
    padding: 18px 22px
}

.du-cta small {
    font-size: 10px;
    font-weight: 700;
    color: #3c4a57
}

.du-cta h2 {
    max-width: 670px;
    margin: 5px 0;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    color: #122a45
}

.du-cta p {
    margin: 0 0 10px;
    color: #293b50;
    font-size: 11px
}

.du-cta a {
    display: inline-flex;
    padding: 9px 17px;
    border-radius: 4px;
    background: #0b2b4c;
    color: #fff;
    font-size: 10px;
    font-weight: 700
}

.avw-site:has(.du-home) .avw-footer {
    background: #061d36;
    color: #e8f0f8;
    padding: 25px max(calc((100% - 1220px)/2), 22px) 12px
}

.avw-site:has(.du-home) .avw-footer-grid {
    display: grid;
    grid-template-columns: 1.35fr .7fr .7fr .9fr;
    gap: 25px;
    max-width: 1220px;
    margin: 0 auto
}

.avw-site:has(.du-home) .avw-footer-logo img {
    width: 230px;
    max-height: 54px;
    object-fit: contain;
    object-position: left center
}

.avw-site:has(.du-home) .avw-footer p {
    color: #b5c5d8;
    font-size: 10px;
    line-height: 1.65
}

.avw-site:has(.du-home) .avw-footer h3 {
    margin: 5px 0 12px;
    color: #fff;
    font-size: 11px
}

.avw-site:has(.du-home) .avw-footer a {
    display: block;
    margin: 7px 0;
    color: #c6d3e1;
    font-size: 10px
}

.avw-site:has(.du-home) .avw-footer .avw-social {
    display: flex;
    gap: 8px
}

.avw-site:has(.du-home) .avw-footer .avw-social a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin: 0;
    border-radius: 50%;
    background: #1a4d7c;
    color: #fff
}

.avw-site:has(.du-home) .avw-footer-bottom {
    max-width: 1220px;
    margin: 17px auto 0;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, .14);
    color: #a5b7ca;
    text-align: center;
    font-size: 10px
}

@media(max-width:1000px) {
    .du-industry-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr))
    }

    .du-featured {
        grid-template-columns: repeat(5, minmax(0, 1fr))
    }

    .du-cities {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .du-latest-row {
        grid-template-columns: 45px minmax(160px, 1fr) minmax(100px, .7fr) 90px
    }

    .du-latest-industry {
        display: none
    }
}

@media(max-width:720px) {
    .avw-site:has(.du-home) .avw-top {
        min-height: 58px;
        padding: 6px 12px
    }

    .avw-site:has(.du-home) .avw-logo img {
        width: 220px;
        height: 43px
    }

    .avw-site:has(.du-home) .avw-top-links {
        display: none
    }

    .avw-site:has(.du-home) .avw-menu {
        display: block;
        margin-left: auto;
        padding: 8px 12px;
        border: 0;
        border-radius: 4px;
        background: #ffc928;
        color: #10243b;
        font-size: 20px
    }

    .avw-site:has(.du-home) .avw-nav {
        display: none
    }

    .du-hero {
        min-height: 345px
    }

    .du-hero:before {
        background-position: 61% center
    }

    .du-hero-shade {
        background: rgba(5, 35, 70, .55)
    }

    .du-hero-inner {
        padding: 27px 12px 15px
    }

    .du-hero h1 {
        font-size: 25px
    }

    .du-hero p {
        font-size: 11px;
        line-height: 1.5;
        margin-bottom: 16px
    }

    .du-search {
        grid-template-columns: 1fr 1fr;
        margin-bottom: 17px
    }

    .du-search label {
        height: 41px;
        padding: 0 8px
    }

    .du-search .du-query {
        grid-column: 1/-1;
        border-bottom: 1px solid #e7ebf1
    }

    .du-search label:nth-of-type(3) {
        border-right: 0
    }

    .du-search button {
        grid-column: 1/-1;
        min-height: 38px;
        margin: 3px
    }

    .du-hero-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px 6px
    }

    .du-hero-stats>div {
        justify-content: flex-start;
        padding-left: 10%
    }

    .du-hero-stats>div>b {
        font-size: 22px
    }

    .du-hero-stats strong {
        font-size: 13px
    }

    .du-main {
        padding: 0 12px
    }

    .du-section {
        padding: 13px 0 6px
    }

    .du-head h2 {
        font-size: 14px
    }

    .du-head>a {
        font-size: 9px
    }

    .du-industry-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px
    }

    .du-industry {
        min-height: 87px
    }

    .du-featured {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .du-company-card {
        min-height: 160px;
        padding: 8px
    }

    .du-cities {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .du-city img {
        height: 95px
    }

    .du-latest-row {
        grid-template-columns: 38px minmax(0, 1fr) 80px;
        gap: 7px;
        padding: 7px 5px
    }

    .du-latest-city,
    .du-latest-industry {
        display: none
    }

    .du-latest-logo {
        width: 35px;
        height: 34px
    }

    .du-latest-main b {
        font-size: 10px
    }

    .du-latest-row .du-button {
        font-size: 9px;
        padding: 6px 4px
    }

    .du-benefits {
        padding: 18px 12px
    }

    .du-benefits>div {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .du-news {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .du-news-card>a {
        height: 92px
    }

    .du-news-card h3 {
        font-size: 10px
    }

    .du-partner-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px
    }

    .du-partner {
        min-height: 42px;
        font-size: 14px
    }

    .du-cta {
        min-height: 170px
    }

    .du-cta>img {
        width: 100%;
        opacity: .26
    }

    .du-cta:after {
        background: linear-gradient(90deg, rgba(255, 201, 40, .96), rgba(255, 201, 40, .72))
    }

    .du-cta>div {
        padding: 18px 14px
    }

    .du-cta h2 {
        font-size: 17px
    }

    .avw-site:has(.du-home) .avw-footer {
        padding: 22px 13px 12px
    }

    .avw-site:has(.du-home) .avw-footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 16px 12px
    }

    .avw-site:has(.du-home) .avw-footer-grid>div:first-child {
        grid-column: 1/-1
    }
}

@media(max-width:390px) {
    .du-hero h1 {
        font-size: 21px
    }

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

    .du-head>a {
        max-width: 82px;
        text-align: right;
        white-space: normal
    }

    .du-latest-row {
        grid-template-columns: 32px minmax(0, 1fr) 72px
    }
}