﻿:root { color-scheme: light; --bw-dark: #343a40; --bw-primary: #007bff; }
* { box-sizing: border-box; }
body { margin: 0; color: #212529; background: white; font: 1rem/1.5 Poppins, sans-serif; }
a { color: #006bd6; text-decoration: none; }
a:hover { text-decoration: underline; }
a:focus-visible, summary:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid #ffbf47; outline-offset: 3px; }
.bw-header { background: var(--bw-dark); color: white; padding: .25rem 1.5rem 1rem; }
.bw-header a { color: white; }
.bw-account { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .3rem; font-size: .75rem; margin-bottom: .1rem; }
.bw-languages { display: flex; flex-wrap: wrap; gap: .3rem; font-size: .6rem; }
.bw-languages [aria-current] { color: #ffc107; }
.bw-navigation { display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem; }
.bw-brand { display: flex; align-items: center; }
.bw-menu { display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem; flex: 1; }
.bw-menu details { position: relative; }
.bw-menu summary { cursor: pointer; }
.bw-menu ul { position: absolute; inset-inline-start: 0; z-index: 10; background: white; border: 1px solid #ddd; border-radius: .25rem; min-width: 16rem; padding: .5rem 0; box-shadow: 0 .5rem 1rem #0002; list-style: none; }
.bw-menu li a { display: block; color: #212529; padding: .3rem 1rem; }
.bw-menu li a:hover { background: #f0f1f2; }
.bw-search { display: flex; gap: .3rem; }
.bw-search input, .bw-search button { border: 1px solid #ced4da; border-radius: .25rem; font: inherit; padding: .45rem .7rem; }
.bw-search input:focus { outline: none; border-color: #80bdff; box-shadow: 0 0 0 .15rem rgba(0,123,255,.2); }
.bw-search button { background: #0069d9; color: white; border-color: #0069d9; cursor: pointer; }
.bw-content { width: auto; margin: .4rem 1.5rem 2rem; min-height: 40vh; }
.bw-breadcrumbs { padding: .6rem 1.5rem; background: white; font-size: .8rem; }
.bw-breadcrumbs ol { display: flex; flex-wrap: wrap; list-style: none; padding: 0; margin: 0; gap: .6rem; }
.bw-breadcrumbs li + li::before { content: "/"; padding-inline-end: .6rem; color: #6c757d; }
.bw-tabs { display: flex; flex-wrap: wrap; gap: .5rem; border-bottom: 1px solid #ddd; }
.bw-tabs a { padding: .7rem; }
.bw-tabs [aria-current] { color: #212529; border-bottom: 3px solid var(--bw-primary); }
.bw-message { padding: 1rem; border: 1px solid #b8daff; background: #eef6ff; margin-block: 1rem; }
.bw-error { border-color: #f5c6cb; background: #fff1f2; }
.bw-message p { margin: .3rem 0 0; }
.bw-modal { max-width: 48rem; margin: auto; }
.bw-visually-hidden, .bw-skip:not(:focus) { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.bw-skip:focus { display: block; padding: .8rem; }
@media (max-width: 700px) { .bw-menu { flex-basis: 100%; } .bw-search { width: 100%; } .bw-search input { flex: 1; min-width: 0; } .bw-menu ul { position: static; } }
@media print { .bw-header, .bw-footer, .bw-skip { display: none; } .bw-content { width: 100%; } }

.bw-groups { border: 1px solid rgba(0,0,0,.125); border-radius: .25rem; }
.bw-groups summary { padding: 7px 8px; cursor: pointer; color: #006ff5; list-style: none; }
.bw-groups summary::after { content: '▼'; float: right; color: #aaa; font-size: 9px; }
.bw-groups details[open] > summary::after { content: '▲'; }
.bw-groups li a { display: block; padding: 5px 18px; font-size: .8rem; }
.bw-groups summary:hover, .bw-groups li a:hover { background: #fff3cd; }
.bw-menu summary { list-style: none; color: #d6d7d8; }
.bw-menu summary::after { content: ''; display: inline-block; margin-left: .35rem; vertical-align: .15em; border-top: .3em solid; border-right: .3em solid transparent; border-left: .3em solid transparent; }
.bw-menu { gap: 1rem; }
.bw-header a:hover { text-decoration: none; color: white; }
@media (min-width: 992px) { .bw-header { padding-left: 3rem; padding-right: 3rem; } .bw-content { margin-left: 3rem; margin-right: 3rem; } .bw-breadcrumbs { padding-left: 3rem; padding-right: 3rem; } }
@media (max-width: 600px) { .bw-groups summary { padding: 15px 8px; } .bw-groups li a { font-size: 16px; padding: 12px 18px; } }
h1, h2, h3 { font-weight: 400; }
.bw-table-sort { background: none; border: 0; padding: 0; color: inherit; font: inherit; text-align: inherit; cursor: pointer; }
table[data-sortable] thead th { font-weight: 400; vertical-align: bottom; }
/* Match the original 2025 shared navigation and footer. */
.bw-header { padding-top: .25rem; padding-bottom: .5rem; }
.bw-account { margin-bottom: 0; min-height: 18px; }
.bw-languages { padding-top: .25rem; gap: .4rem; }
.bw-navigation { gap: 1rem; min-height: 50px; flex-wrap: nowrap; }
.bw-brand { flex-shrink: 0; padding-block: .3125rem; }
.bw-navigation-content { display: flex; align-items: center; flex: 1; min-width: 0; }
.bw-menu { gap: 0; flex-wrap: nowrap; }
.bw-menu > a, .bw-menu summary { display: block; padding: .5rem; color: #d5d5d5; font-size: .9rem; white-space: nowrap; }
.bw-menu ul { margin: .125rem 0 0; min-width: 10rem; box-shadow: none; }
.bw-menu li a { padding: .25rem 1.5rem; font-size: .9rem; white-space: nowrap; }
.bw-menu li a:hover { color: #16181b; background: #f8f9fa; }
.bw-menu-divider { height: 0; margin: .5rem 0; border-top: 1px solid #e9ecef; }
.bw-search { gap: .25rem; flex-shrink: 0; }
.bw-search input, .bw-search button { padding: .375rem .75rem; height: 38px; }
.bw-search input { width: 219px; }
.bw-search button { background: #007bff; border-color: #007bff; }
.bw-menu-toggle { display: none; background: transparent; color: #ffffff80; border: 1px solid #ffffff1a; border-radius: .25rem; font-size: 1.5rem; padding: .25rem .75rem; }
.bw-footer a { color: #e9e9e9; }
.bw-footer a:hover { color: white; }
.bw-footer .ico { display: inline-block; width: 16px; height: 16px; margin-right: 3px; }
.bw-footer .ico svg { width: 100%; height: 100%; fill: currentColor; vertical-align: baseline; }
@media (min-width: 992px) {
    .bw-menu > a, .bw-menu > details { padding-right: .5rem; }
    .bw-authenticated .bw-menu > details { padding-left: .5rem; }
}
@media (min-width: 1200px) {
    .bw-menu > a, .bw-menu > details { padding-inline: 1.5rem; }
    .bw-menu > :first-child, .bw-authenticated .bw-menu > details:nth-child(2) { padding-left: .5rem; }
    .bw-authenticated .bw-menu > details:nth-child(n+3) { padding-left: 1.5rem; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .bw-anonymous .bw-brand, .bw-anonymous .bw-search button { display: none; }
    .bw-search input { width: 190px; }
}
@media (max-width: 767.98px) {
    .bw-navigation { flex-wrap: wrap; justify-content: space-between; gap: 0; }
    .bw-menu-toggle { display: block; }
    .bw-navigation-content { display: none; flex-basis: 100%; }
    .bw-navigation-content.is-open { display: block; }
    .bw-menu { display: block; }
    .bw-menu ul { position: static; }
    .bw-search { margin-block: .5rem; width: 100%; }
    .bw-search input { flex: 1; min-width: 0; }
    .bw-account > div { flex: 2; }
    .bw-languages { flex: 1; justify-content: flex-end; }
}

@font-face {
    font-family: 'Twemoji Country Flags';
    unicode-range: U+1F1E6-1F1FF,U+1F3F4,U+E0062-E0063,U+E0065,U+E0067,U+E006C,U+E006E,U+E0073-E0074,U+E0077,U+E007F;
    src: url('../fonts/TwemojiCountryFlags.woff2') format('woff2');
    font-display: swap;
}
span.e { font-family: 'Twemoji Country Flags'; width: 18px; }

/* Match the compact 2025 reports/table.ascx columns and disclosure icons. */
.bw-website-table .bw-favicon-column, .bw-website-table .bw-location-column { width: 15px; }
.bw-website-table .bw-details-column { width: 16px; }
.bw-website-table th[data-sortable="false"]::after { display: none; }
.bw-website-table .bw-favicon { width: 16px; height: 16px; background-color: transparent; mix-blend-mode: darken; }
.bw-website-table .company-name-column, .bw-website-table .company-name { width: 30%; min-width: 280px; max-width: 360px; }
.bw-website-table .company-name-text { display: block; width: 100%; max-width: 360px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bw-row-details { line-height: 1; }
.bw-row-details[aria-expanded="false"] .icon-chevron-up, .bw-row-details[aria-expanded="true"] .icon-chevron-down { display: none; }

/* Original loading.ascx logo animation, scoped to the shared loader. */

    

     .bw-loading-container {
         padding: 40px;
     }

     .bw-svg-container {
         position: relative;
         margin-top: 4px;
         transform: rotate(0deg);
     }

     .bw-letter-group {
         animation: bw-letterSwap 2s ease-in-out infinite;
         transform-origin: center;
     }

         .bw-letter-group:nth-child(1) {
             animation-delay: 0s;
         }

         .bw-letter-group:nth-child(2) {
             animation-delay: 0.2s;
         }

         .bw-letter-group:nth-child(3) {
             animation-delay: 0.4s;
         }

         .bw-letter-group:nth-child(4) {
             animation-delay: 0.6s;
         }

         .bw-letter-group:nth-child(5) {
             animation-delay: 0.8s;
         }

         .bw-letter-group:nth-child(6) {
             animation-delay: 1s;
         }

         .bw-letter-group:nth-child(7) {
             animation-delay: 1.2s;
         }

     @keyframes bw-letterSwap {
         0% {
             transform: scale(1);
             opacity: 1;
         }

         25% {
             transform: scale(1.02);
             opacity: 0.8;
         }

         50% {
             transform: scale(0.98) rotateY(180deg);
             opacity: 0.6;
         }

         75% {
             transform: scale(1.01);
             opacity: 0.9;
         }

         100% {
             transform: scale(1);
             opacity: 1;
         }
     }

     .bw-shuffle-animation {
         animation: bw-shuffle 3s ease-in-out infinite;
     }

     @keyframes bw-shuffle {
         0%, 100% {
             transform: translateX(0);
         }

         20% {
             transform: translateX(-10px);
         }

         40% {
             transform: translateX(15px);
         }

         60% {
             transform: translateX(-5px);
         }

         80% {
             transform: translateX(8px);
         }
     }

     .bw-loading-text {
         text-align: center;
         margin-top: 20px;
         font-size: 16px;
     }

     .bw-dot {
         animation: bw-dotPulse 1.5s ease-in-out infinite;
     }

         .bw-dot:nth-child(2) {
             animation-delay: 0.3s;
         }

         .bw-dot:nth-child(3) {
             animation-delay: 0.6s;
         }

     @keyframes bw-dotPulse {
         0%, 100% {
             opacity: 0;
         }

         50% {
             opacity: 1;
         }
     }
 
@media (prefers-reduced-motion: reduce) { .bw-letter-group, .bw-shuffle-animation { animation: none; } }
.bw-loading-container svg { max-width: 100%; }
.bw-website-table .bw-detail-loading { margin-block: 80px; }

.bw-faq summary { list-style: none; cursor: pointer; padding: 1rem; }
.bw-faq summary::-webkit-details-marker { display: none; }
.bw-faq summary .icon { margin-inline-end: .5rem; fill: currentColor; }
.bw-faq:not([open]) .icon-chevron-up, .bw-faq[open] .icon-chevron-down { display: none; }
.bw-faq .card-body { padding: 1.25rem; }

.bw-content.bw-content-full { margin-left: 0; margin-right: 0; }

.bw-bootstrap-breadcrumbs-inset { margin-inline: 9px; }
@media (min-width: 992px) { .bw-bootstrap-breadcrumbs-inset { margin-inline: 33px; } }

/* Original Bootstrap 4 autocomplete layout, scoped to the shared search dropdown. */
.bw-search { position: relative; }
.bw-suggestions { position: absolute; top: 100%; left: 0; z-index: 1000; min-width: 10rem; padding: .5rem 0; margin: .125rem 0 0; font-size: 1rem; color: #212529; text-align: left; list-style: none; background: #fff; background-clip: padding-box; border: 1px solid rgba(0,0,0,.15); border-radius: .25rem; }
.bw-suggestions[hidden] { display: none; }
.bw-suggestions .dropdown-item { display: block; width: 100%; padding: .25rem 1.5rem; clear: both; font-weight: 400; font-size: .9rem; color: #212529; text-align: inherit; white-space: nowrap; background: transparent; border: 0; cursor: pointer; }
.bw-suggestions .dropdown-item:hover, .bw-suggestions .dropdown-item:focus { color: #16181b; background: #f8f9fa; }
.bw-suggestions .dropdown-item[aria-selected="true"] { color: #fff; background: #007bff; }
.bw-suggestions .row { display: flex; flex-wrap: wrap; margin-right: -15px; margin-left: -15px; }
.bw-suggestions .col-12 { position: relative; width: 100%; padding-right: 15px; padding-left: 15px; flex: 0 0 100%; max-width: 100%; }
.bw-suggestions .pl-1 { padding-left: .25rem !important; }
.bw-suggestions .text-secondary { color: #6c757d !important; }
.bw-suggestions .text-dark { color: #343a40 !important; }
.bw-suggestions a { text-decoration: none; }
.bw-suggestions a:hover { text-decoration: underline; }
.bw-suggestions .font-weight-bold { font-weight: 700 !important; }
.bw-suggestions .xsmall { font-size: .7rem !important; }
.bw-suggestions img { vertical-align: middle; border-style: none; }