/* ESET / A8 auto ads 1.0.4 — dark glass sponsor card; no article HTML changes. */
.eaa8-disclosure {
    box-sizing: border-box;
    width: 100%;
    padding: 7px 14px;
    border-bottom: 1px solid rgba(128, 146, 162, .3);
    background: #0d1724;
    color: #f1f5f9;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: .01em;
    text-align: center;
    position: relative;
    z-index: 5;
}
.eaa8-slot,
.eaa8-slot * { box-sizing: border-box; }
.eaa8-slot {
    position: relative;
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 32px auto;
    padding: 25px 18px 26px;
    overflow: hidden;
    isolation: isolate;
    clear: both;
    text-align: center;
    background: linear-gradient(138deg, rgba(16, 35, 52, .96), rgba(9, 18, 35, .98) 64%, rgba(15, 25, 42, .97));
    border: 1px solid rgba(80, 183, 202, .32);
    border-radius: 14px;
    color: #d6e7ee;
    box-shadow: 0 12px 34px rgba(0, 0, 0, .16), inset 0 1px 0 rgba(255,255,255,.045);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}
/* A restrained top accent keeps the ad distinct from financial analysis panels. */
.eaa8-slot::before {
    content: '';
    position: absolute;
    display: block;
    left: 15%;
    right: 15%;
    top: 0;
    height: 2px;
    border-radius: 0 0 2px 2px;
    background: linear-gradient(90deg, transparent, rgba(65,225,215,.82) 35%, rgba(103,130,233,.8) 65%, transparent);
    pointer-events: none;
}
.eaa8-slot__label {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 7px;
    width: auto;
    max-width: 100%;
    margin: 0 auto 10px;
    padding: 5px 13px;
    border: 1px solid rgba(104, 208, 217, .32);
    border-radius: 999px;
    background: rgba(32, 72, 92, .45);
    color: #a9ebee;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.eaa8-slot__label-mark {
    display: block;
    flex: 0 0 5px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #4fe2cf;
    box-shadow: 0 0 9px rgba(79, 226, 207, .45);
}
.eaa8-slot__note {
    max-width: 680px;
    margin: 0 auto 17px;
    padding: 0;
    color: #bacbd8;
    font-size: 11px;
    line-height: 1.65;
    font-weight: 400;
    letter-spacing: .015em;
    overflow-wrap: anywhere;
}
.eaa8-ad-code {
    position: relative;
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    /* Do not create a horizontal scroll area around A8 banner tags. */
    overflow: visible;
    text-align: center;
    line-height: 1;
}
.eaa8-ad-code a {
    display: inline-block;
    max-width: 100%;
    vertical-align: top;
}
.eaa8-ad-code img {
    vertical-align: top;
    max-width: 100%;
    height: auto;
}
/* Keep A8 tracking pixel in the DOM and do not load extra ads. */
.eaa8-ad-code img[width="1"][height="1"] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.eaa8-slot--intro {
    margin-top: 18px;
    margin-bottom: 34px;
}
.eaa8-slot--sidebar {
    margin: 14px auto 20px;
    padding: 18px 9px 20px;
}
.eaa8-slot--sidebar .eaa8-slot__note { font-size: 10px; }
.eaa8-slot--footer {
    margin: 24px auto;
    max-width: 1100px;
}
@media (max-width: 767px) {
    .eaa8-slot {
        margin: 22px auto;
        padding: 20px 11px 21px;
        border-radius: 12px;
    }
    .eaa8-slot--intro { margin-top: 16px; margin-bottom: 26px; }
    .eaa8-slot__label { font-size: 10px; letter-spacing: .085em; }
    .eaa8-slot__note { font-size: 10px; line-height: 1.6; margin-bottom: 14px; }
    .eaa8-slot--sidebar { margin: 12px auto; }
}

/* v1.0.3: Show both brands in one sponsor card without changing original ad tags. */
.eaa8-ads-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    column-gap: clamp(18px, 3vw, 44px);
    row-gap: 22px;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}
.eaa8-ad-unit {
    flex: 0 1 auto;
    display: flex;
    min-width: 0;
    max-width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0;
}
.eaa8-ad-unit__brand {
    color: #8fa6b5;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: .11em;
}
.eaa8-ads-row .eaa8-ad-code {
    width: auto;
    max-width: 100%;
    margin: 0 auto;
}
@media (max-width: 767px) {
    .eaa8-ads-row { flex-direction: column; gap: 23px; }
}

/* v1.0.4: Prevent horizontal scrollbars for independently rendered A8 banners. */
.eaa8-ad-code .eaa8-ad-active {
    max-width: 100%;
}

/* v1.0.6: In-site security guide CTA alongside untouched ESET / Norton banners. */
.eaa8-slot .eaa8-ads-row--with-article {
    gap: 20px;
    flex-wrap: wrap;
    align-items: flex-start;
}
.eaa8-slot .eaa8-ad-unit--article {
    width: min(238px, 100%);
    max-width: 100%;
    flex: 0 1 238px;
}
.eaa8-slot .eaa8-article-link,
.eaa8-slot .eaa8-article-link:visited {
    display: flex;
    width: 100%;
    min-height: 100px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 4px;
    padding: 12px 16px;
    border-radius: 8px;
    border: 1px solid rgba(80, 220, 215, .55);
    background: linear-gradient(145deg, rgba(15, 72, 89, .95), rgba(12, 43, 66, .96));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
    color: #e9fcff;
    text-align: left;
    text-decoration: none;
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.eaa8-slot .eaa8-article-link:hover,
.eaa8-slot .eaa8-article-link:focus-visible {
    color: #fff;
    border-color: #79f5ed;
    background: linear-gradient(145deg, rgba(18, 91, 110, .98), rgba(15, 56, 82, .98));
    transform: translateY(-1px);
    text-decoration: none;
}
.eaa8-slot .eaa8-article-link:focus-visible {
    outline: 2px solid #79f5ed;
    outline-offset: 3px;
}
.eaa8-slot .eaa8-article-link__eyebrow {
    color: #a1dadd;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .08em;
    line-height: 1.35;
}
.eaa8-slot .eaa8-article-link__title {
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.32;
    letter-spacing: .015em;
}
.eaa8-slot .eaa8-article-link__action {
    color: #78eee4;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.35;
}
@media (max-width: 767px) {
    .eaa8-slot .eaa8-ads-row--with-article { gap: 19px; flex-direction: column; }
    .eaa8-slot .eaa8-ad-unit--article { flex: none; width: min(300px, 100%); }
}
