/*
 * AvaSite 3.3.0 front-end refinement layer.
 * Loaded after the base/component styles to refine native Ava and Elementor pages.
 */

/* Header and navigation --------------------------------------------------- */
.ava-site-header .ava-header-shell {
    gap: clamp(14px, 1.7vw, 24px);
}
.ava-site-header .ava-primary-navigation {
    min-width: 0;
}
.ava-site-header .ava-main-menu {
    gap: 0;
}
.ava-site-header .ava-main-menu > li > a {
    min-height: 44px;
    padding-inline: clamp(7px, .72vw, 11px);
    font-size: clamp(11.5px, var(--ava-menu-font-size, 13px), 14px);
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: -.12px;
}
.ava-site-header .ava-main-menu .sub-menu a {
    min-height: 42px;
    padding: 9px 12px;
    font-size: 12.5px;
    font-weight: 650;
    line-height: 1.7;
}
.ava-site-header .ava-header-cta {
    min-height: 42px;
    padding: 9px 15px;
    font-size: 12px;
}
.ava-site-header .ava-header-phone b {
    font-size: 12px;
}
.ava-site-header .ava-header-phone small {
    font-size: 9.5px;
}
@media (max-width: 1280px) {
    .ava-site-header .ava-main-menu > li > a {
        padding-inline: 6px;
        font-size: 11.5px;
    }
    .ava-site-header .ava-header-phone {
        display: none;
    }
}

/* Balanced typography for the homepage widgets -------------------------- */
.elementor-widget-ava_home_hero,
.elementor-widget-ava_home_services,
.elementor-widget-ava_home_stats,
.elementor-widget-ava_home_process,
.elementor-widget-ava_home_advantages,
.elementor-widget-ava_home_testimonials,
.elementor-widget-ava_home_seo_text,
.elementor-widget-ava_home_faq,
.elementor-widget-ava_home_cta,
.elementor-widget-ava_home_logos,
.elementor-widget-ava_posts_spotlight,
.elementor-widget-ava_posts_grid,
.elementor-widget-ava_posts_slider,
.elementor-widget-ava_posts_list {
    font-family: var(--ava-font);
}
.aps-home-heading {
    margin-bottom: clamp(22px, 3vw, 32px);
}
.aps-home-heading__eyebrow,
.aps-home-hero__eyebrow,
.aps-home-cta__eyebrow {
    margin-bottom: 9px;
    font-size: clamp(11px, .9vw, 12.5px);
    line-height: 1.75;
}
.aps-home-heading__title {
    font-size: clamp(25px, 2.55vw, 38px);
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: -.65px;
}
.aps-home-heading__description {
    max-width: 760px;
    margin-top: 10px;
    font-size: clamp(13px, 1.05vw, 15px);
    line-height: 1.95;
}
.aps-home-service-card h3,
.aps-home-process__item h3,
.aps-home-advantages__item h3 {
    font-size: clamp(14px, 1.15vw, 16px);
    line-height: 1.75;
}
.aps-home-service-card p,
.aps-home-process__item p,
.aps-home-advantages__item p {
    font-size: clamp(11.5px, .92vw, 13px);
    line-height: 1.9;
}
.aps-home-stat h3 {
    font-size: clamp(14px, 1.2vw, 17px);
}
.aps-home-stat p,
.aps-home-testimonial blockquote {
    font-size: clamp(12px, 1vw, 14px);
}
.aps-home-button,
.aps-home-service-card__link {
    font-size: 12px;
}
.aps-home-advantages__title,
.aps-home-cta__title {
    font-size: clamp(27px, 3vw, 42px);
    line-height: 1.5;
    letter-spacing: -.7px;
}
.aps-home-advantages__description,
.aps-home-cta__content p {
    font-size: clamp(13px, 1.1vw, 15.5px);
    line-height: 2;
}

/* FAQ: one-at-a-time accordion, predictable opening and readable text ---- */
.aps-home-faq__grid {
    gap: 12px 14px;
}
.aps-home-faq__item {
    border-color: color-mix(in srgb, var(--aps-home-primary) 10%, var(--aps-home-border));
    border-radius: 16px;
    box-shadow: 0 7px 24px rgba(23, 32, 51, .035);
    transition: border-color .22s ease, box-shadow .22s ease, background-color .22s ease;
}
.aps-home-faq__item.is-open,
.aps-home-faq__item[open] {
    border-color: color-mix(in srgb, var(--aps-home-primary) 30%, #dfe3eb);
    box-shadow: 0 14px 34px rgba(23, 32, 51, .075);
}
.aps-home-faq__question,
.aps-home-faq__item summary {
    display: flex;
    width: 100%;
    min-height: 60px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 0;
    padding: 14px 16px;
    border: 0;
    border-radius: inherit;
    color: var(--aps-home-text);
    background: transparent;
    font-family: inherit;
    font-size: clamp(12.5px, 1.05vw, 14px);
    font-weight: 850;
    line-height: 1.85;
    text-align: right;
    cursor: pointer;
    appearance: none;
}
.aps-home-faq__question:hover,
.aps-home-faq__item summary:hover {
    color: var(--aps-home-primary);
    background: color-mix(in srgb, var(--aps-home-primary) 3.5%, #fff);
}
.aps-home-faq__question i,
.aps-home-faq__item summary i {
    display: grid;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    place-items: center;
    border-radius: 9px;
    color: var(--aps-home-primary);
    background: color-mix(in srgb, var(--aps-home-primary) 8%, #fff);
    transition: transform .24s ease, color .24s ease, background-color .24s ease;
}
.aps-home-faq__item.is-open .aps-home-faq__question i,
.aps-home-faq__item[open] summary i {
    transform: rotate(45deg);
    color: #fff;
    background: var(--aps-home-primary);
}
.aps-home-faq__panel {
    height: 0;
    overflow: hidden;
    transition: height .28s ease;
}
.aps-home-faq__panel[hidden] {
    display: none;
}
.aps-home-faq__answer {
    padding: 0 16px 17px;
    color: var(--aps-home-muted);
    font-size: clamp(12px, .98vw, 13.5px);
    line-height: 2.05;
}
.aps-home-faq__answer p {
    margin: 0 0 10px;
}
.aps-home-faq__answer > :last-child {
    margin-bottom: 0;
}

/* Legacy FAQ widgets: improve the existing collapsible markup safely. */
.atafaq-block1 .collapsible {
    position: relative;
    width: 100%;
    min-height: 56px;
    padding: 13px 48px 13px 15px !important;
    font-family: var(--ava-font) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.8 !important;
    text-align: right;
}
.atafaq-block1 .content {
    overflow: hidden;
    transition: max-height .28s ease;
}
.atafaq-block1 .content p {
    margin: 0 !important;
    font-size: 12.5px !important;
    line-height: 2 !important;
}

/* Post widgets: dependable featured images and less aggressive type scale -- */
.aps-post-widget-heading {
    margin-bottom: 20px;
}
.aps-post-widget-heading > span {
    font-size: 11px;
}
.aps-post-widget-heading h2 {
    font-size: clamp(25px, 2.55vw, 37px);
    line-height: 1.48;
}
.aps-post-widget-heading p {
    font-size: 13.5px;
}
.aps-post-spotlight {
    gap: 16px;
}
.aps-post-spotlight__main {
    min-height: clamp(400px, 42vw, 520px);
    border-radius: 24px;
}
.aps-post-spotlight__media,
.aps-post-spotlight__side article > a {
    background: linear-gradient(135deg, #eef0ff, #edf9f7);
}
.aps-post-spotlight__media img,
.aps-post-spotlight__side img,
.aps-post-card__media img,
.aps-post-list__media img,
.aps-post-content-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.aps-post-spotlight__content {
    padding: clamp(24px, 3vw, 34px);
}
.aps-post-spotlight__content h3 {
    margin: 10px 0;
    font-size: clamp(23px, 2.65vw, 36px);
    line-height: 1.55;
}
.aps-post-spotlight__content p {
    font-size: 12.5px;
    line-height: 1.95;
}
.aps-post-spotlight__side article {
    grid-template-columns: 116px minmax(0, 1fr);
    min-height: 0;
    padding: 9px;
    border-radius: 15px;
}
.aps-post-spotlight__side article > a {
    min-height: 92px;
}
.aps-post-spotlight__side h4 {
    font-size: 12.5px;
    line-height: 1.7;
}
.aps-post-placeholder {
    position: relative;
    display: grid;
    width: 100%;
    height: 100%;
    min-height: 100%;
    place-content: center;
    gap: 10px;
    padding: 18px;
    overflow: hidden;
    color: #5f54d9;
    background:
        radial-gradient(circle at 12% 15%, rgba(108, 76, 255, .16), transparent 30%),
        radial-gradient(circle at 88% 85%, rgba(22, 184, 166, .14), transparent 32%),
        linear-gradient(135deg, #f8f8ff, #eef9f8);
    text-align: center;
}
.aps-post-placeholder::after {
    content: "آوا";
    position: absolute;
    left: 16px;
    bottom: 10px;
    color: rgba(76, 63, 196, .09);
    font-size: clamp(32px, 6vw, 74px);
    font-weight: 950;
}
.aps-post-placeholder i,
.aps-post-placeholder b {
    position: relative;
    z-index: 1;
}
.aps-post-placeholder b {
    max-width: 340px;
    color: #24304a;
    font-size: 12px;
    line-height: 1.75;
}

/* Expandable SEO/introduction widget ------------------------------------- */
.aps-home-seo-text {
    padding: clamp(24px, 3vw, 38px);
    border-radius: 24px;
}
.aps-home-seo-text__title {
    font-size: clamp(24px, 2.55vw, 36px);
    line-height: 1.55;
}
.aps-home-seo-text__content {
    font-size: clamp(13px, 1vw, 14.5px);
    line-height: 2.1;
    will-change: max-height;
}
.aps-home-seo-text__toggle {
    position: relative;
    z-index: 2;
    min-height: 43px;
    padding: 9px 15px;
    font-size: 11.5px;
}
.aps-home-seo-text.is-expanded .aps-home-seo-text__content {
    overflow: visible;
}

/* Footer v2 --------------------------------------------------------------- */
.ava-site-footer--v2 {
    margin-top: clamp(68px, 8vw, 118px);
    overflow: visible;
    background:
        radial-gradient(circle at 11% 18%, rgba(110, 88, 255, .28), transparent 28%),
        radial-gradient(circle at 88% 12%, rgba(15, 186, 171, .18), transparent 25%),
        linear-gradient(145deg, #10068f 0%, #190bb7 52%, #072c58 100%);
}
.ava-footer-light .ava-site-footer--v2 {
    background: #f8f9fd;
}
.ava-site-footer--v2 .ava-footer-wave {
    color: #10068f;
}
.ava-footer-light .ava-site-footer--v2 .ava-footer-wave {
    color: #f8f9fd;
}
.ava-footer-v2 {
    position: relative;
    padding-top: 58px;
}
.ava-footer-cta {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 28px;
    margin-top: -104px;
    margin-bottom: 48px;
    padding: clamp(24px, 3.5vw, 38px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 28px;
    background:
        linear-gradient(120deg, rgba(255,255,255,.98), rgba(244,247,255,.96)),
        #fff;
    box-shadow: 0 28px 70px rgba(14, 11, 83, .22);
    color: #172033;
}
.ava-footer-cta::before {
    content: "";
    position: absolute;
    inset: auto -70px -90px auto;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(108,76,255,.15), rgba(22,184,166,.13));
}
.ava-footer-cta__content,
.ava-footer-cta__actions {
    position: relative;
    z-index: 1;
}
.ava-footer-cta__content > span {
    display: inline-flex;
    margin-bottom: 7px;
    color: var(--ava-primary);
    font-size: 11px;
    font-weight: 850;
}
.ava-footer-cta h2 {
    margin: 0;
    color: #141b31;
    font-size: clamp(23px, 2.6vw, 36px);
    font-weight: 950;
    line-height: 1.5;
}
.ava-footer-cta p {
    max-width: 760px;
    margin: 8px 0 0;
    color: #687387;
    font-size: 13px;
    line-height: 1.95;
}
.ava-footer-cta__actions {
    display: flex;
    align-items: center;
    gap: 10px;
}
.ava-footer-cta__primary,
.ava-footer-cta__phone {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 50px;
    border-radius: 15px;
    text-decoration: none;
    white-space: nowrap;
}
.ava-footer-cta__primary {
    padding: 11px 18px;
    color: #fff;
    background: linear-gradient(135deg, var(--ava-primary), #4430cf);
    box-shadow: 0 13px 30px rgba(96,70,245,.25);
    font-size: 12px;
    font-weight: 850;
}
.ava-footer-cta__primary:hover {
    color: #fff;
    transform: translateY(-2px);
}
.ava-footer-cta__primary .ava-icon {
    width: 17px;
}
.ava-footer-cta__phone {
    padding: 8px 12px;
    border: 1px solid #e2e6ef;
    color: #172033;
    background: #fff;
}
.ava-footer-cta__phone .ava-icon {
    width: 19px;
    color: var(--ava-accent);
}
.ava-footer-cta__phone small,
.ava-footer-cta__phone b {
    display: block;
}
.ava-footer-cta__phone small {
    color: #8891a2;
    font-size: 8.5px;
}
.ava-footer-cta__phone b {
    margin-top: 1px;
    font-size: 11px;
}
.ava-footer-main {
    display: grid;
    grid-template-columns: minmax(260px, 1.15fr) minmax(370px, 1.45fr) minmax(240px, .85fr);
    gap: clamp(28px, 4vw, 58px);
    padding-bottom: 42px;
}
.ava-footer-brand h2,
.ava-footer-contact h2,
.ava-footer-column h2,
.ava-footer-latest h2 {
    margin: 0;
    color: inherit;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.7;
}
.ava-footer-brand__logo,
.ava-footer-brand__logo .ava-brand {
    display: inline-flex;
}
.ava-footer-brand__logo {
    margin-bottom: 16px;
}
.ava-footer-brand__logo img {
    width: auto !important;
    max-width: 180px;
    max-height: 62px;
    filter: brightness(0) invert(1);
}
.ava-footer-light .ava-footer-brand__logo img {
    filter: none;
}
.ava-footer-brand > p {
    max-width: 470px;
    margin: 10px 0 0;
    color: rgba(255,255,255,.72);
    font-size: 12.5px;
    line-height: 2;
}
.ava-footer-light .ava-footer-brand > p {
    color: var(--ava-muted);
}
.ava-footer-services {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 18px;
}
.ava-footer-services span {
    display: inline-flex;
    min-height: 29px;
    align-items: center;
    padding: 5px 9px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    color: rgba(255,255,255,.78);
    background: rgba(255,255,255,.06);
    font-size: 9.5px;
}
.ava-footer-light .ava-footer-services span {
    border-color: var(--ava-border-color);
    color: var(--ava-muted);
    background: #fff;
}
.ava-footer-social {
    margin-top: 21px;
}
.ava-footer-social > span {
    display: block;
    margin-bottom: 9px;
    color: rgba(255,255,255,.58);
    font-size: 9.5px;
}
.ava-footer-light .ava-footer-social > span {
    color: var(--ava-muted);
}
.ava-site-footer--v2 .ava-social-links a {
    width: 38px;
    height: 38px;
    border-color: rgba(255,255,255,.16);
    border-radius: 12px;
    background: rgba(255,255,255,.08);
    transition: transform .2s ease, background-color .2s ease, border-color .2s ease;
}
.ava-site-footer--v2 .ava-social-links a:hover {
    transform: translateY(-3px);
    border-color: rgba(255,255,255,.34);
    background: rgba(255,255,255,.16);
}
.ava-footer-navigation {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
.ava-footer-navigation--fallback {
    grid-template-columns: minmax(0, 1fr);
}
.ava-footer-column h2,
.ava-footer-contact h2 {
    margin-bottom: 14px;
}
.ava-footer-menu li + li {
    margin-top: 6px;
}
.ava-footer-menu a {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 28px;
    color: rgba(255,255,255,.7);
    font-size: 11px;
    line-height: 1.75;
}
.ava-footer-menu a::before {
    content: "";
    width: 5px;
    height: 5px;
    flex: 0 0 5px;
    border-radius: 50%;
    background: rgba(255,255,255,.25);
    transition: background-color .2s ease, transform .2s ease;
}
.ava-footer-menu a:hover {
    color: #fff;
    transform: translateX(-3px);
}
.ava-footer-menu a:hover::before {
    background: var(--ava-accent);
    transform: scale(1.45);
}
.ava-footer-light .ava-footer-menu a {
    color: var(--ava-muted);
}
.ava-footer-light .ava-footer-menu a:hover {
    color: var(--ava-primary);
}
.ava-footer-contact address {
    display: grid;
    gap: 9px;
    margin: 0;
    font-style: normal;
}
.ava-footer-contact address > a,
.ava-footer-contact address > div {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr);
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 8px 9px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 13px;
    color: rgba(255,255,255,.85);
    background: rgba(255,255,255,.045);
}
.ava-footer-light .ava-footer-contact address > a,
.ava-footer-light .ava-footer-contact address > div {
    border-color: var(--ava-border-color);
    color: var(--ava-text);
    background: #fff;
}
.ava-footer-contact address .ava-icon {
    width: 18px;
    margin-inline: auto;
    color: #8cf1e4;
}
.ava-footer-contact address small,
.ava-footer-contact address b {
    display: block;
}
.ava-footer-contact address small {
    color: rgba(255,255,255,.5);
    font-size: 8px;
}
.ava-footer-light .ava-footer-contact address small {
    color: var(--ava-muted);
}
.ava-footer-contact address b {
    margin-top: 2px;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.7;
}
.ava-footer-contact__button {
    display: flex;
    min-height: 42px;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 11px;
    padding: 8px 12px;
    border-radius: 12px;
    color: #fff;
    background: rgba(255,255,255,.1);
    font-size: 10.5px;
    font-weight: 800;
}
.ava-footer-contact__button:hover {
    color: #fff;
    background: rgba(255,255,255,.17);
}
.ava-footer-contact__button .ava-icon {
    width: 16px;
}
.ava-footer-latest {
    padding: 28px 0 34px;
    border-top: 1px solid rgba(255,255,255,.11);
}
.ava-footer-latest__heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 15px;
}
.ava-footer-latest__heading span {
    display: block;
    margin-bottom: 4px;
    color: #92f2e5;
    font-size: 9px;
}
.ava-footer-latest__heading > a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: rgba(255,255,255,.75);
    font-size: 10px;
}
.ava-footer-latest__heading > a .ava-icon {
    width: 15px;
}
.ava-footer-latest__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 11px;
}
.ava-footer-latest article {
    display: grid;
    grid-template-columns: 72px minmax(0,1fr);
    align-items: center;
    gap: 11px;
    min-width: 0;
    padding: 8px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 14px;
    background: rgba(255,255,255,.045);
}
.ava-footer-latest__thumb {
    display: block;
    width: 72px;
    height: 58px;
    overflow: hidden;
    border-radius: 10px;
    background: rgba(255,255,255,.09);
}
.ava-footer-latest__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.ava-footer-latest__thumb span {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
}
.ava-footer-latest__thumb .ava-icon {
    width: 22px;
}
.ava-footer-latest time {
    color: rgba(255,255,255,.45);
    font-size: 8px;
}
.ava-footer-latest h3 {
    margin: 3px 0 0;
    font-size: 10.5px;
    font-weight: 750;
    line-height: 1.75;
}
.ava-footer-latest h3 a {
    color: rgba(255,255,255,.88);
}
.ava-footer-latest h3 a:hover {
    color: #fff;
}
.ava-footer-bottom {
    min-height: 68px;
    gap: 16px;
}
.ava-footer-credit {
    margin-inline-start: auto;
    color: rgba(255,255,255,.48);
    font-size: 9px;
}
.ava-footer-credit a {
    color: rgba(255,255,255,.78);
}
.ava-footer-light .ava-footer-credit,
.ava-footer-light .ava-footer-latest time {
    color: var(--ava-muted);
}
.ava-footer-light .ava-footer-latest h3 a,
.ava-footer-light .ava-footer-latest__heading > a {
    color: var(--ava-text);
}

@media (max-width: 1100px) {
    .ava-footer-cta {
        grid-template-columns: 1fr;
    }
    .ava-footer-cta__actions {
        justify-content: flex-start;
    }
    .ava-footer-main {
        grid-template-columns: minmax(260px, .9fr) minmax(0, 1.4fr);
    }
    .ava-footer-contact {
        grid-column: 1 / -1;
    }
    .ava-footer-contact address {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 820px) {
    .aps-home-heading__title {
        font-size: clamp(24px, 5vw, 31px);
    }
    .aps-post-spotlight__side {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .ava-footer-v2 {
        padding-inline: 16px;
    }
    .ava-footer-main {
        grid-template-columns: 1fr;
        gap: 34px;
    }
    .ava-footer-navigation {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }
    .ava-footer-contact {
        grid-column: auto;
    }
}

@media (max-width: 680px) {
    .ava-site-header .ava-header-shell {
        min-height: 66px;
    }
    .aps-home-heading {
        margin-bottom: 20px;
    }
    .aps-home-heading__title {
        font-size: clamp(23px, 7.2vw, 29px);
        letter-spacing: -.4px;
    }
    .aps-home-heading__description {
        font-size: 12.5px;
    }
    .aps-home-faq__grid {
        grid-template-columns: 1fr !important;
        gap: 9px;
    }
    .aps-home-faq__question,
    .aps-home-faq__item summary {
        min-height: 56px;
        padding: 12px 13px;
        font-size: 12.5px;
    }
    .aps-home-faq__answer {
        padding: 0 13px 14px;
        font-size: 12px;
    }
    .aps-post-widget-heading h2 {
        font-size: 24px;
    }
    .aps-post-spotlight__main {
        min-height: 380px;
        border-radius: 19px;
    }
    .aps-post-spotlight__content {
        padding: 20px;
    }
    .aps-post-spotlight__content h3 {
        font-size: 22px;
    }
    .aps-post-spotlight__content p {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }
    .aps-post-spotlight__side {
        grid-template-columns: 1fr;
    }
    .aps-post-spotlight__side article {
        grid-template-columns: 102px minmax(0,1fr);
    }
    .aps-home-seo-text {
        padding: 20px 16px;
        border-radius: 19px;
    }
    .aps-home-seo-text__title {
        font-size: 22px;
    }
    .aps-home-seo-text__content {
        font-size: 12.5px;
    }
    .ava-site-footer--v2 {
        margin-top: 96px;
    }
    .ava-footer-v2 {
        padding-top: 46px;
    }
    .ava-footer-cta {
        margin-top: -88px;
        margin-bottom: 38px;
        padding: 22px 18px;
        border-radius: 22px;
    }
    .ava-footer-cta h2 {
        font-size: 23px;
    }
    .ava-footer-cta__actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }
    .ava-footer-cta__primary,
    .ava-footer-cta__phone {
        width: 100%;
    }
    .ava-footer-navigation {
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 28px 18px;
    }
    .ava-footer-contact address {
        grid-template-columns: 1fr;
    }
    .ava-footer-latest__heading {
        align-items: flex-start;
        flex-direction: column;
    }
    .ava-footer-latest__grid {
        grid-template-columns: 1fr;
    }
    .ava-footer-bottom {
        align-items: flex-start;
        flex-direction: column;
        padding-block: 18px;
    }
    .ava-footer-credit {
        margin-inline-start: 0;
    }
}

@media (max-width: 430px) {
    .ava-footer-navigation {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aps-home-faq__panel,
    .aps-home-faq__question i,
    .aps-home-seo-text__content,
    .ava-footer-cta__primary,
    .ava-site-footer--v2 a {
        transition: none !important;
    }
}

/* --- 3.1.1 hotfix: redesign article spotlight widget for desktop and mobile --- */
.aps-post-spotlight {
    grid-template-columns: minmax(0, 1.48fr) minmax(320px, .88fr);
    align-items: start;
    gap: 22px;
}
.aps-post-spotlight__main {
    position: relative;
    display: grid;
    grid-template-rows: minmax(260px, 1fr) auto;
    min-height: 0;
    overflow: hidden;
    border: 1px solid #e7eaf2;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 20px 54px rgba(24, 34, 60, .08);
}
.aps-post-spotlight__media {
    position: relative;
    inset: auto;
    display: block;
    min-height: 0;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: linear-gradient(135deg, #eef0ff, #edf9f7);
}
.aps-post-spotlight__media > span {
    position: absolute;
    inset: auto 0 0;
    height: 30%;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(17, 24, 39, .10) 100%);
    pointer-events: none;
}
.aps-post-spotlight__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.aps-post-spotlight__content {
    position: relative;
    inset: auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 24px 26px 26px;
    color: var(--aps-text, #172033);
    background:
        radial-gradient(circle at top left, rgba(108, 76, 255, .10), transparent 28%),
        linear-gradient(180deg, #ffffff 0%, #f7f9fd 100%);
}
.aps-post-spotlight__content small {
    display: inline-flex;
    align-self: flex-start;
    padding: 7px 12px;
    border: 1px solid rgba(98, 84, 224, .16);
    border-radius: 999px;
    background: rgba(108, 76, 255, .08);
    color: var(--aps-primary, #5f54d9);
    font-size: 11px;
    font-weight: 800;
}
.aps-post-spotlight__content h3 {
    margin: 0;
    font-size: clamp(24px, 2.2vw, 34px);
    line-height: 1.5;
    letter-spacing: -.02em;
}
.aps-post-spotlight__content h3 a {
    color: var(--aps-text, #172033);
}
.aps-post-spotlight__content p {
    margin: 0;
    color: #687287;
    font-size: 14px;
    line-height: 2;
}
.aps-post-spotlight__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: center;
    color: #7c8497;
    font-size: 12px;
}
.aps-post-spotlight__meta > * + *::before {
    content: "•";
    margin-inline: 0 10px;
    color: #c0c7d5;
}
.aps-post-spotlight__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    align-self: flex-start;
    min-height: 46px;
    margin-top: 4px;
    padding: 0 18px;
    border-radius: 14px;
    background: linear-gradient(135deg, #5f54d9, #7f74ff);
    color: #fff !important;
    font-size: 12px;
    font-weight: 800;
    box-shadow: 0 16px 34px rgba(95, 84, 217, .18);
}
.aps-post-spotlight__link .aps-icon {
    width: 18px;
}
.aps-post-spotlight__side {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.aps-post-spotlight__side-item,
.aps-post-spotlight__side article {
    display: flex;
    align-items: stretch;
    gap: 14px;
    min-height: 0;
    padding: 12px;
    overflow: hidden;
    border: 1px solid #e7eaf2;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(24, 34, 60, .05);
}
.aps-post-spotlight__side-media,
.aps-post-spotlight__side article > a {
    flex: 0 0 148px;
    width: 148px;
    min-width: 148px;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 16 / 11;
    background: linear-gradient(135deg, #eef0ff, #edf9f7);
}
.aps-post-spotlight__side-media img,
.aps-post-spotlight__side article img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.aps-post-spotlight__side-body,
.aps-post-spotlight__side article > div {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    overflow: hidden;
}
.aps-post-spotlight__side-body small,
.aps-post-spotlight__side small {
    display: inline-flex;
    align-self: flex-start;
    margin-bottom: 8px;
    color: var(--aps-primary, #5f54d9);
    font-size: 10px;
    font-weight: 800;
}
.aps-post-spotlight__side-body h4,
.aps-post-spotlight__side h4 {
    margin: 0;
    font-size: 17px;
    line-height: 1.7;
}
.aps-post-spotlight__side-body h4 a,
.aps-post-spotlight__side h4 a {
    display: -webkit-box;
    overflow: hidden;
    color: var(--aps-text, #172033);
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.aps-post-spotlight__side-meta,
.aps-post-spotlight__side span {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    margin-top: 10px;
    color: #8590a3;
    font-size: 11px;
}
.aps-post-spotlight__side-meta > * + *::before {
    content: "•";
    margin-inline: 0 8px;
    color: #ccd2dd;
}

@media (max-width: 1100px) {
    .aps-post-spotlight {
        grid-template-columns: 1fr;
    }
    .aps-post-spotlight__side {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }
    .aps-post-spotlight__side-item,
    .aps-post-spotlight__side article {
        flex-direction: column;
        padding: 10px;
    }
    .aps-post-spotlight__side-media,
    .aps-post-spotlight__side article > a {
        flex-basis: auto;
        width: 100%;
        min-width: 0;
    }
    .aps-post-spotlight__side-body h4,
    .aps-post-spotlight__side h4 {
        font-size: 15px;
    }
}

@media (max-width: 820px) {
    .aps-post-spotlight__side {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .aps-post-spotlight {
        gap: 16px;
    }
    .aps-post-spotlight__main {
        grid-template-rows: auto auto;
        border-radius: 22px;
    }
    .aps-post-spotlight__media {
        aspect-ratio: 16 / 10;
    }
    .aps-post-spotlight__content {
        padding: 18px 16px 18px;
        gap: 10px;
    }
    .aps-post-spotlight__content h3 {
        font-size: 22px;
        line-height: 1.55;
    }
    .aps-post-spotlight__content p {
        display: -webkit-box;
        overflow: hidden;
        font-size: 12.5px;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }
    .aps-post-spotlight__meta {
        font-size: 11px;
        gap: 6px 12px;
    }
    .aps-post-spotlight__link {
        width: 100%;
        justify-content: center;
    }
    .aps-post-spotlight__side {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }
    .aps-post-spotlight__side-item,
    .aps-post-spotlight__side article {
        flex-direction: row;
        padding: 10px;
        border-radius: 18px;
    }
    .aps-post-spotlight__side-media,
    .aps-post-spotlight__side article > a {
        flex: 0 0 118px;
        width: 118px;
        min-width: 118px;
        aspect-ratio: 4 / 3;
        border-radius: 14px;
    }
    .aps-post-spotlight__side-body small,
    .aps-post-spotlight__side small {
        margin-bottom: 6px;
        font-size: 9px;
    }
    .aps-post-spotlight__side-body h4,
    .aps-post-spotlight__side h4 {
        font-size: 14px;
        line-height: 1.65;
    }
    .aps-post-spotlight__side-body h4 a,
    .aps-post-spotlight__side h4 a {
        -webkit-line-clamp: 3;
    }
    .aps-post-spotlight__side-meta,
    .aps-post-spotlight__side span {
        margin-top: 8px;
        font-size: 10px;
    }
}

@media (max-width: 430px) {
    .aps-post-spotlight__side-item,
    .aps-post-spotlight__side article {
        gap: 10px;
        padding: 9px;
    }
    .aps-post-spotlight__side-media,
    .aps-post-spotlight__side article > a {
        flex-basis: 110px;
        width: 110px;
        min-width: 110px;
    }
    .aps-post-spotlight__content h3 {
        font-size: 20px;
    }
}

/* --- 3.2.6 hotfix: restored custom header and redesigned footer v3 --- */
.ava-site-header {
    background: color-mix(in srgb, var(--ava-surface) 94%, rgba(255,255,255,.72));
    backdrop-filter: saturate(160%) blur(14px);
}
.ava-site-header .ava-header-shell {
    min-height: 84px;
}
.ava-site-header .ava-primary-navigation {
    flex: 1 1 auto;
    justify-content: center;
}
.ava-site-header .ava-main-menu {
    justify-content: center;
}
.ava-site-header .ava-main-menu > li > a {
    min-height: 46px;
    padding-inline: 12px;
    border-radius: 14px;
}
.ava-site-header .ava-main-menu > li:hover > a,
.ava-site-header .ava-main-menu > .current-menu-item > a,
.ava-site-header .ava-main-menu > .current-menu-ancestor > a {
    background: color-mix(in srgb, var(--ava-primary) 8%, #fff);
}
.ava-site-header .ava-header-actions {
    gap: 10px;
}
.ava-site-header .ava-header-cta {
    min-height: 46px;
    padding-inline: 18px;
    border-radius: 15px;
}

.ava-site-footer--v3 {
    position: relative;
    overflow: hidden;
    margin-top: 88px;
    color: #e8edf8;
    background:
        radial-gradient(circle at 12% 12%, rgba(100, 95, 255, .18), transparent 24%),
        radial-gradient(circle at 84% 28%, rgba(20, 201, 193, .14), transparent 18%),
        linear-gradient(180deg, #0f1630 0%, #101a39 62%, #0a1228 100%);
}
.ava-site-footer--v3 .ava-footer-wave,
.ava-site-footer--v3 .ava-footer-v2,
.ava-site-footer--v3 .ava-footer-main,
.ava-site-footer--v3 .ava-footer-latest,
.ava-site-footer--v3 .ava-footer-bottom,
.ava-site-footer--v3 .ava-footer-cta,
.ava-site-footer--v3 .ava-footer-brand,
.ava-site-footer--v3 .ava-footer-navigation,
.ava-site-footer--v3 .ava-footer-contact {
    all: unset;
}
.ava-site-footer--v3 .ava-footer-shell {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 28px;
    padding: 42px 0 30px;
}
.ava-site-footer--v3 .ava-footer-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(14px);
    opacity: .7;
    pointer-events: none;
}
.ava-site-footer--v3 .ava-footer-glow--one {
    top: -90px;
    inset-inline-start: -50px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(108, 94, 255, .36), transparent 65%);
}
.ava-site-footer--v3 .ava-footer-glow--two {
    inset-inline-end: -70px;
    bottom: 120px;
    width: 280px;
    height: 280px;
    background: radial-gradient(circle, rgba(19, 200, 177, .22), transparent 68%);
}
.ava-site-footer--v3 .ava-footer-topbar {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(220px, .8fr) auto;
    gap: 18px;
    align-items: center;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 28px;
    background: linear-gradient(135deg, rgba(255,255,255,.11), rgba(255,255,255,.05));
    box-shadow: 0 22px 60px rgba(2, 7, 20, .22);
    backdrop-filter: blur(12px);
}
.ava-site-footer--v3 .ava-footer-kicker,
.ava-site-footer--v3 .ava-footer-panel__heading > span,
.ava-site-footer--v3 .ava-footer-latest-v3__heading span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #8dc7ff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .02em;
}
.ava-site-footer--v3 .ava-footer-kicker::before,
.ava-site-footer--v3 .ava-footer-panel__heading > span::before,
.ava-site-footer--v3 .ava-footer-latest-v3__heading span::before {
    content: "";
    width: 24px;
    height: 2px;
    border-radius: 99px;
    background: linear-gradient(90deg, #8dc7ff, #6f67ff);
}
.ava-site-footer--v3 .ava-footer-topbar h2 {
    margin: 10px 0 8px;
    color: #fff;
    font-size: clamp(24px, 3vw, 36px);
    line-height: 1.45;
}
.ava-site-footer--v3 .ava-footer-topbar p {
    margin: 0;
    color: rgba(232, 237, 248, .74);
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v3 .ava-footer-topbar__support {
    display: grid;
    gap: 12px;
}
.ava-site-footer--v3 .ava-footer-mini-card {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 76px;
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 20px;
    background: rgba(255,255,255,.04);
    color: #fff;
}
.ava-site-footer--v3 .ava-footer-mini-card__icon {
    display: grid;
    place-items: center;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(111,103,255,.26), rgba(30,171,255,.18));
    color: #cfe6ff;
}
.ava-site-footer--v3 .ava-footer-mini-card__body small,
.ava-site-footer--v3 .ava-footer-contact-card__body small {
    display: block;
    margin-bottom: 4px;
    color: rgba(232, 237, 248, .64);
    font-size: 11px;
}
.ava-site-footer--v3 .ava-footer-mini-card__body strong,
.ava-site-footer--v3 .ava-footer-contact-card__body b {
    color: #fff;
    font-size: 14px;
    line-height: 1.7;
}
.ava-site-footer--v3 .ava-footer-topbar__actions {
    display: grid;
    gap: 12px;
}
.ava-site-footer--v3 .ava-footer-topbar__primary,
.ava-site-footer--v3 .ava-footer-topbar__secondary,
.ava-site-footer--v3 .ava-footer-contact-actions__primary,
.ava-site-footer--v3 .ava-footer-contact-actions__secondary,
.ava-site-footer--v3 .ava-footer-latest-v3__heading > a,
.ava-site-footer--v3 .ava-back-to-top--v3 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 18px;
    border-radius: 16px;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.ava-site-footer--v3 .ava-footer-topbar__primary,
.ava-site-footer--v3 .ava-footer-contact-actions__primary {
    background: linear-gradient(135deg, #5e68ff, #2f88ff);
    color: #fff;
    box-shadow: 0 18px 36px rgba(45, 102, 255, .22);
}
.ava-site-footer--v3 .ava-footer-topbar__secondary,
.ava-site-footer--v3 .ava-footer-contact-actions__secondary,
.ava-site-footer--v3 .ava-footer-latest-v3__heading > a,
.ava-site-footer--v3 .ava-back-to-top--v3 {
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.05);
    color: #f6f9ff;
}
.ava-site-footer--v3 .ava-footer-topbar__primary:hover,
.ava-site-footer--v3 .ava-footer-topbar__secondary:hover,
.ava-site-footer--v3 .ava-footer-contact-actions__primary:hover,
.ava-site-footer--v3 .ava-footer-contact-actions__secondary:hover,
.ava-site-footer--v3 .ava-footer-latest-v3__heading > a:hover,
.ava-site-footer--v3 .ava-back-to-top--v3:hover {
    transform: translateY(-2px);
}
.ava-site-footer--v3 .ava-footer-panels {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr) minmax(0, .95fr);
    gap: 18px;
}
.ava-site-footer--v3 .ava-footer-panel {
    min-width: 0;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
    box-shadow: 0 18px 48px rgba(4, 9, 22, .16);
}
.ava-site-footer--v3 .ava-footer-panel__logo {
    margin-bottom: 18px;
}
.ava-site-footer--v3 .ava-footer-panel__logo img {
    max-height: 56px;
    width: auto;
}
.ava-site-footer--v3 .ava-footer-panel h2,
.ava-site-footer--v3 .ava-footer-latest-v3__heading h2 {
    margin: 8px 0 0;
    color: #fff;
    font-size: 24px;
    line-height: 1.5;
}
.ava-site-footer--v3 .ava-footer-panel__description {
    margin: 14px 0 0;
    color: rgba(232,237,248,.76);
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v3 .ava-footer-service-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}
.ava-site-footer--v3 .ava-footer-service-tags span,
.ava-site-footer--v3 .ava-footer-brand__quicklinks a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.06);
    color: #eef4ff;
    font-size: 12px;
    font-weight: 700;
}
.ava-site-footer--v3 .ava-footer-brand__quicklinks {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}
.ava-site-footer--v3 .ava-footer-social {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.08);
}
.ava-site-footer--v3 .ava-footer-social > span {
    color: #fff;
    font-size: 14px;
    font-weight: 800;
}
.ava-site-footer--v3 .ava-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.ava-site-footer--v3 .ava-social-links a {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: rgba(255,255,255,.06);
    color: #f6f8ff;
    border: 1px solid rgba(255,255,255,.08);
}
.ava-site-footer--v3 .ava-social-links a:hover {
    background: linear-gradient(135deg, rgba(111,103,255,.2), rgba(30,171,255,.18));
}
.ava-site-footer--v3 .ava-footer-nav-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}
.ava-site-footer--v3 .ava-footer-nav-card {
    padding: 18px;
    border-radius: 20px;
    background: rgba(7, 16, 38, .32);
    border: 1px solid rgba(255,255,255,.06);
}
.ava-site-footer--v3 .ava-footer-nav-card h3 {
    margin: 0 0 12px;
    color: #fff;
    font-size: 15px;
}
.ava-site-footer--v3 .ava-footer-menu,
.ava-site-footer--v3 .ava-footer-legal {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ava-site-footer--v3 .ava-footer-menu li + li {
    margin-top: 10px;
}
.ava-site-footer--v3 .ava-footer-menu a,
.ava-site-footer--v3 .ava-footer-legal a,
.ava-site-footer--v3 .ava-footer-credit a,
.ava-site-footer--v3 .ava-footer-brand__quicklinks a,
.ava-site-footer--v3 .ava-footer-latest-v3__heading > a,
.ava-site-footer--v3 .ava-footer-article-card h3 a {
    color: inherit;
}
.ava-site-footer--v3 .ava-footer-menu a {
    color: rgba(236, 242, 255, .78);
    font-size: 13px;
    line-height: 1.9;
}
.ava-site-footer--v3 .ava-footer-menu a:hover {
    color: #fff;
}
.ava-site-footer--v3 .ava-footer-contact-grid {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}
.ava-site-footer--v3 .ava-footer-contact-card {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
    padding: 16px;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(7, 16, 38, .32);
    color: #fff;
}
.ava-site-footer--v3 .ava-footer-contact-card[dir="ltr"] {
    direction: ltr;
    text-align: left;
}
.ava-site-footer--v3 .ava-footer-contact-card__icon {
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(111,103,255,.24), rgba(30,171,255,.16));
    color: #cae1ff;
}
.ava-site-footer--v3 .ava-footer-contact-card__body {
    min-width: 0;
}
.ava-site-footer--v3 .ava-footer-contact-card__body b {
    display: block;
    font-size: 13px;
    line-height: 1.85;
    word-break: break-word;
}
.ava-site-footer--v3 .ava-footer-contact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}
.ava-site-footer--v3 .ava-footer-latest-v3 {
    padding: 24px;
    border-radius: 28px;
    border: 1px solid rgba(255,255,255,.08);
    background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
}
.ava-site-footer--v3 .ava-footer-latest-v3__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}
.ava-site-footer--v3 .ava-footer-latest-v3__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.ava-site-footer--v3 .ava-footer-article-card {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 14px;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(7, 16, 38, .32);
}
.ava-site-footer--v3 .ava-footer-article-card__thumb {
    display: block;
    flex: 0 0 76px;
    width: 76px;
    min-width: 76px;
    aspect-ratio: 1;
    border-radius: 16px;
    overflow: hidden;
    background: rgba(255,255,255,.06);
}
.ava-site-footer--v3 .ava-footer-article-card__thumb img,
.ava-site-footer--v3 .ava-footer-article-card__thumb span {
    display: block;
    width: 100%;
    height: 100%;
}
.ava-site-footer--v3 .ava-footer-article-card__thumb img {
    object-fit: cover;
}
.ava-site-footer--v3 .ava-footer-article-card__thumb span {
    display: grid;
    place-items: center;
    color: #dbe8ff;
}
.ava-site-footer--v3 .ava-footer-article-card__content {
    min-width: 0;
}
.ava-site-footer--v3 .ava-footer-article-card time,
.ava-site-footer--v3 .ava-footer-bottomline p,
.ava-site-footer--v3 .ava-footer-credit,
.ava-site-footer--v3 .ava-footer-legal a {
    color: rgba(232,237,248,.66);
    font-size: 12px;
}
.ava-site-footer--v3 .ava-footer-article-card h3 {
    margin: 7px 0 0;
    font-size: 14px;
    line-height: 1.8;
}
.ava-site-footer--v3 .ava-footer-widgets--v3 {
    padding: 22px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
    background: rgba(255,255,255,.04);
}
.ava-site-footer--v3 .ava-footer-bottomline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 24px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
    background: rgba(255,255,255,.04);
}
.ava-site-footer--v3 .ava-footer-bottomline__copy {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: center;
}
.ava-site-footer--v3 .ava-footer-bottomline__copy p {
    margin: 0;
}
.ava-site-footer--v3 .ava-footer-bottomline__meta {
    display: flex;
    align-items: center;
    gap: 12px 16px;
    flex-wrap: wrap;
    margin-inline-start: auto;
}
.ava-site-footer--v3 .ava-footer-legal {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}
.ava-site-footer--v3 .ava-back-to-top--v3 span {
    white-space: nowrap;
}

@media (max-width: 1180px) {
    .ava-site-footer--v3 .ava-footer-topbar {
        grid-template-columns: minmax(0, 1fr);
    }
    .ava-site-footer--v3 .ava-footer-topbar__support,
    .ava-site-footer--v3 .ava-footer-topbar__actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        display: grid;
    }
    .ava-site-footer--v3 .ava-footer-panels {
        grid-template-columns: 1fr 1fr;
    }
    .ava-site-footer--v3 .ava-footer-panel--brand {
        grid-column: 1 / -1;
    }
    .ava-site-footer--v3 .ava-footer-latest-v3__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 900px) {
    .ava-site-footer--v3 {
        margin-top: 72px;
    }
    .ava-site-footer--v3 .ava-footer-shell {
        padding-top: 26px;
    }
    .ava-site-footer--v3 .ava-footer-panels,
    .ava-site-footer--v3 .ava-footer-nav-grid,
    .ava-site-footer--v3 .ava-footer-latest-v3__grid {
        grid-template-columns: 1fr;
    }
    .ava-site-footer--v3 .ava-footer-social,
    .ava-site-footer--v3 .ava-footer-bottomline {
        flex-direction: column;
        align-items: flex-start;
    }
    .ava-site-footer--v3 .ava-footer-bottomline__meta {
        margin-inline-start: 0;
    }
}
@media (max-width: 680px) {
    .ava-site-header .ava-header-shell {
        min-height: 70px;
    }
    .ava-site-footer--v3 .ava-footer-shell {
        gap: 18px;
        padding-bottom: 18px;
    }
    .ava-site-footer--v3 .ava-footer-topbar,
    .ava-site-footer--v3 .ava-footer-panel,
    .ava-site-footer--v3 .ava-footer-latest-v3,
    .ava-site-footer--v3 .ava-footer-widgets--v3,
    .ava-site-footer--v3 .ava-footer-bottomline {
        padding: 18px;
        border-radius: 22px;
    }
    .ava-site-footer--v3 .ava-footer-topbar h2,
    .ava-site-footer--v3 .ava-footer-panel h2,
    .ava-site-footer--v3 .ava-footer-latest-v3__heading h2 {
        font-size: 22px;
    }
    .ava-site-footer--v3 .ava-footer-topbar p,
    .ava-site-footer--v3 .ava-footer-panel__description {
        font-size: 13px;
    }
    .ava-site-footer--v3 .ava-footer-topbar__support,
    .ava-site-footer--v3 .ava-footer-topbar__actions,
    .ava-site-footer--v3 .ava-footer-contact-actions {
        grid-template-columns: 1fr;
        width: 100%;
    }
    .ava-site-footer--v3 .ava-footer-topbar__primary,
    .ava-site-footer--v3 .ava-footer-topbar__secondary,
    .ava-site-footer--v3 .ava-footer-contact-actions__primary,
    .ava-site-footer--v3 .ava-footer-contact-actions__secondary,
    .ava-site-footer--v3 .ava-footer-latest-v3__heading > a,
    .ava-site-footer--v3 .ava-back-to-top--v3 {
        width: 100%;
    }
    .ava-site-footer--v3 .ava-footer-latest-v3__heading {
        align-items: flex-start;
        flex-direction: column;
    }
    .ava-site-footer--v3 .ava-footer-article-card {
        align-items: flex-start;
    }
}

/* --- 3.2.6 hotfix: cleaner 2026 footer system (Ava footer v4) --- */
.ava-site-footer--v4 {
    position: relative;
    margin-top: 88px;
    padding-top: 18px;
    color: #162033;
    background:
        radial-gradient(circle at top right, rgba(80, 117, 255, .08), transparent 28%),
        linear-gradient(180deg, #f5f8ff 0%, #eef4ff 100%);
    border-top: 1px solid rgba(31, 52, 104, .08);
}
.ava-site-footer--v4::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,0)),
        radial-gradient(circle at left bottom, rgba(37, 99, 235, .05), transparent 26%);
    pointer-events: none;
}
.ava-site-footer--v4 .ava-footer-v4 {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 22px;
    padding: 0 0 28px;
}
.ava-site-footer--v4 .ava-footer-kicker,
.ava-site-footer--v4 .ava-footer-card__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #386cff;
    font-size: 12px;
    font-weight: 800;
}
.ava-site-footer--v4 .ava-footer-kicker::before,
.ava-site-footer--v4 .ava-footer-card__eyebrow::before {
    content: "";
    width: 22px;
    height: 2px;
    border-radius: 99px;
    background: linear-gradient(90deg, #386cff, #54a7ff);
}
.ava-site-footer--v4 .ava-footer-cta-bar {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) auto auto;
    align-items: center;
    gap: 18px;
    padding: 24px 28px;
    border: 1px solid rgba(31, 52, 104, .08);
    border-radius: 28px;
    background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(247,250,255,.98));
    box-shadow: 0 24px 60px rgba(27, 44, 94, .08);
}
.ava-site-footer--v4 .ava-footer-cta-bar__content h2 {
    margin: 10px 0 8px;
    color: #0f172a;
    font-size: clamp(24px, 2.4vw, 34px);
    line-height: 1.45;
}
.ava-site-footer--v4 .ava-footer-cta-bar__content p {
    margin: 0;
    max-width: 760px;
    color: #5f6c84;
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v4 .ava-footer-cta-bar__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.ava-site-footer--v4 .ava-footer-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 18px;
    border-radius: 16px;
    font-size: 13px;
    font-weight: 800;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.ava-site-footer--v4 .ava-footer-button:hover,
.ava-site-footer--v4 .ava-footer-insights__archive:hover,
.ava-site-footer--v4 .ava-back-to-top--footer-v4:hover {
    transform: translateY(-2px);
}
.ava-site-footer--v4 .ava-footer-button--primary {
    color: #fff;
    background: linear-gradient(135deg, #3d63ff, #2b8bff);
    box-shadow: 0 16px 30px rgba(61, 99, 255, .18);
}
.ava-site-footer--v4 .ava-footer-button--secondary,
.ava-site-footer--v4 .ava-footer-insights__archive,
.ava-site-footer--v4 .ava-back-to-top--footer-v4 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 0 16px;
    color: #1e3a8a;
    border: 1px solid rgba(31, 52, 104, .12);
    border-radius: 15px;
    background: #fff;
    font-size: 13px;
    font-weight: 800;
}
.ava-site-footer--v4 .ava-footer-cta-bar__phone {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 220px;
    min-height: 56px;
    padding: 10px 14px;
    border-radius: 18px;
    border: 1px solid rgba(31, 52, 104, .08);
    background: rgba(255,255,255,.78);
    color: #0f172a;
}
.ava-site-footer--v4 .ava-footer-cta-bar__icon,
.ava-site-footer--v4 .ava-footer-contact-row__icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(61, 99, 255, .10), rgba(84, 167, 255, .12));
    color: #2d5eff;
}
.ava-site-footer--v4 .ava-footer-cta-bar__phone small,
.ava-site-footer--v4 .ava-footer-contact-row__body small {
    display: block;
    margin-bottom: 3px;
    color: #6b7280;
    font-size: 11px;
}
.ava-site-footer--v4 .ava-footer-cta-bar__phone b,
.ava-site-footer--v4 .ava-footer-contact-row__body b {
    display: block;
    color: #0f172a;
    font-size: 14px;
    line-height: 1.8;
}
.ava-site-footer--v4 .ava-footer-grid-v4 {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr) minmax(0, .92fr);
    gap: 18px;
}
.ava-site-footer--v4 .ava-footer-card,
.ava-site-footer--v4 .ava-footer-insights,
.ava-site-footer--v4 .ava-footer-widgets--minimal,
.ava-site-footer--v4 .ava-footer-bottom-v4 {
    border: 1px solid rgba(31, 52, 104, .08);
    border-radius: 24px;
    background: rgba(255,255,255,.88);
    box-shadow: 0 16px 42px rgba(27, 44, 94, .06);
}
.ava-site-footer--v4 .ava-footer-card {
    padding: 24px;
}
.ava-site-footer--v4 .ava-footer-card__head h2,
.ava-site-footer--v4 .ava-footer-brand__description + h2,
.ava-site-footer--v4 .ava-footer-insights__head h2,
.ava-site-footer--v4 .ava-footer-card h2 {
    margin: 8px 0 0;
    color: #0f172a;
    font-size: 24px;
    line-height: 1.45;
}
.ava-site-footer--v4 .ava-footer-brand__logo {
    margin-bottom: 18px;
}
.ava-site-footer--v4 .ava-footer-brand__logo img {
    width: auto;
    max-height: 56px;
}
.ava-site-footer--v4 .ava-footer-brand__description {
    margin: 14px 0 0;
    color: #5f6c84;
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v4 .ava-footer-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}
.ava-site-footer--v4 .ava-footer-tags span,
.ava-site-footer--v4 .ava-footer-contact-links a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 12px;
    border-radius: 999px;
    background: #f3f7ff;
    color: #29417f;
    font-size: 12px;
    font-weight: 700;
}
.ava-site-footer--v4 .ava-footer-social-v4 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 22px;
    padding-top: 16px;
    border-top: 1px solid rgba(31, 52, 104, .08);
}
.ava-site-footer--v4 .ava-footer-social-v4 > span {
    color: #0f172a;
    font-size: 14px;
    font-weight: 800;
}
.ava-site-footer--v4 .ava-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.ava-site-footer--v4 .ava-social-links a {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 14px;
    color: #2d5eff;
    background: #f4f7ff;
    border: 1px solid rgba(45, 94, 255, .08);
}
.ava-site-footer--v4 .ava-social-links a:hover {
    background: #e8f0ff;
}
.ava-site-footer--v4 .ava-footer-menu-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}
.ava-site-footer--v4 .ava-footer-menu-columns--fallback {
    grid-template-columns: 1fr;
}
.ava-site-footer--v4 .ava-footer-menu-block {
    padding: 16px;
    border-radius: 18px;
    background: #f8faff;
    border: 1px solid rgba(31, 52, 104, .06);
}
.ava-site-footer--v4 .ava-footer-menu-block h3 {
    margin: 0 0 12px;
    color: #0f172a;
    font-size: 15px;
}
.ava-site-footer--v4 .ava-footer-menu,
.ava-site-footer--v4 .ava-footer-legal {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ava-site-footer--v4 .ava-footer-menu li + li {
    margin-top: 9px;
}
.ava-site-footer--v4 .ava-footer-menu a,
.ava-site-footer--v4 .ava-footer-post-link h3 a,
.ava-site-footer--v4 .ava-footer-legal a,
.ava-site-footer--v4 .ava-footer-credit a {
    color: inherit;
}
.ava-site-footer--v4 .ava-footer-menu a {
    color: #475569;
    font-size: 13px;
    line-height: 1.9;
}
.ava-site-footer--v4 .ava-footer-menu a:hover,
.ava-site-footer--v4 .ava-footer-post-link h3 a:hover,
.ava-site-footer--v4 .ava-footer-contact-links a:hover {
    color: #1d4ed8;
}
.ava-site-footer--v4 .ava-footer-contact-list {
    display: grid;
    gap: 10px;
    margin-top: 18px;
}
.ava-site-footer--v4 .ava-footer-contact-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
    padding: 14px 16px;
    border-radius: 18px;
    background: #f8faff;
    border: 1px solid rgba(31, 52, 104, .06);
    color: #0f172a;
}
.ava-site-footer--v4 .ava-footer-contact-row[dir="ltr"] {
    direction: ltr;
    text-align: left;
}
.ava-site-footer--v4 .ava-footer-contact-row__body {
    min-width: 0;
}
.ava-site-footer--v4 .ava-footer-contact-row__body b {
    word-break: break-word;
}
.ava-site-footer--v4 .ava-footer-contact-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}
.ava-site-footer--v4 .ava-footer-insights {
    padding: 22px 24px;
}
.ava-site-footer--v4 .ava-footer-insights__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.ava-site-footer--v4 .ava-footer-insights__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}
.ava-site-footer--v4 .ava-footer-post-link {
    padding: 14px 16px;
    border-radius: 18px;
    background: #f8faff;
    border: 1px solid rgba(31, 52, 104, .06);
}
.ava-site-footer--v4 .ava-footer-post-link time,
.ava-site-footer--v4 .ava-footer-bottom-v4 p,
.ava-site-footer--v4 .ava-footer-credit,
.ava-site-footer--v4 .ava-footer-legal a {
    color: #6b7280;
    font-size: 12px;
}
.ava-site-footer--v4 .ava-footer-post-link h3 {
    margin: 8px 0 0;
    color: #162033;
    font-size: 14px;
    line-height: 1.8;
}
.ava-site-footer--v4 .ava-footer-widgets--minimal {
    padding: 18px 22px;
}
.ava-site-footer--v4 .ava-footer-bottom-v4 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
}
.ava-site-footer--v4 .ava-footer-bottom-v4__copy {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: center;
}
.ava-site-footer--v4 .ava-footer-bottom-v4__copy p {
    margin: 0;
}
.ava-site-footer--v4 .ava-footer-bottom-v4__meta {
    display: flex;
    align-items: center;
    gap: 12px 16px;
    flex-wrap: wrap;
    margin-inline-start: auto;
}
.ava-site-footer--v4 .ava-footer-legal {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}
.ava-site-footer--v4 .ava-back-to-top--footer-v4 span {
    white-space: nowrap;
}

@media (max-width: 1180px) {
    .ava-site-footer--v4 .ava-footer-cta-bar {
        grid-template-columns: minmax(0, 1fr);
    }
    .ava-site-footer--v4 .ava-footer-grid-v4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .ava-site-footer--v4 .ava-footer-card--brand {
        grid-column: 1 / -1;
    }
}
@media (max-width: 900px) {
    .ava-site-footer--v4 .ava-footer-grid-v4,
    .ava-site-footer--v4 .ava-footer-insights__list {
        grid-template-columns: 1fr;
    }
    .ava-site-footer--v4 .ava-footer-social-v4,
    .ava-site-footer--v4 .ava-footer-bottom-v4,
    .ava-site-footer--v4 .ava-footer-insights__head {
        flex-direction: column;
        align-items: flex-start;
    }
    .ava-site-footer--v4 .ava-footer-bottom-v4__meta {
        margin-inline-start: 0;
    }
}
@media (max-width: 680px) {
    .ava-site-footer--v4 {
        margin-top: 70px;
    }
    .ava-site-footer--v4 .ava-footer-v4 {
        gap: 16px;
        padding-bottom: 18px;
    }
    .ava-site-footer--v4 .ava-footer-cta-bar,
    .ava-site-footer--v4 .ava-footer-card,
    .ava-site-footer--v4 .ava-footer-insights,
    .ava-site-footer--v4 .ava-footer-widgets--minimal,
    .ava-site-footer--v4 .ava-footer-bottom-v4 {
        padding: 18px;
        border-radius: 20px;
    }
    .ava-site-footer--v4 .ava-footer-cta-bar__content h2,
    .ava-site-footer--v4 .ava-footer-card h2,
    .ava-site-footer--v4 .ava-footer-insights__head h2 {
        font-size: 22px;
    }
    .ava-site-footer--v4 .ava-footer-menu-columns {
        grid-template-columns: 1fr;
    }
    .ava-site-footer--v4 .ava-footer-cta-bar__actions {
        width: 100%;
    }
    .ava-site-footer--v4 .ava-footer-button,
    .ava-site-footer--v4 .ava-footer-cta-bar__phone,
    .ava-site-footer--v4 .ava-footer-insights__archive,
    .ava-site-footer--v4 .ava-back-to-top--footer-v4 {
        width: 100%;
    }
}

/* --- 3.2.6 hotfix: compact unified footer redesign (Ava footer v5) --- */
.ava-site-footer--v5 {
    position: relative;
    margin-top: 118px;
    color: #e8eefb;
    background: linear-gradient(180deg, #0f1730 0%, #0b1327 100%);
}
.ava-site-footer--v5::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top left, rgba(69, 121, 255, .14), transparent 22%),
        radial-gradient(circle at bottom right, rgba(24, 207, 201, .08), transparent 18%);
    pointer-events: none;
}
.ava-site-footer--v5 .ava-footer-v5 {
    position: relative;
    z-index: 1;
    padding-bottom: 24px;
}
.ava-site-footer--v5 .ava-footer-floating-cta {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) auto;
    gap: 18px 24px;
    align-items: center;
    margin: 0 auto -74px;
    padding: 26px 28px;
    border: 1px solid rgba(255,255,255,.65);
    border-radius: 30px;
    background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(247,250,255,.98));
    box-shadow: 0 26px 70px rgba(10, 18, 42, .18);
}
.ava-site-footer--v5 .ava-footer-kicker,
.ava-site-footer--v5 .ava-footer-section__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #5d76ff;
    font-size: 12px;
    font-weight: 800;
}
.ava-site-footer--v5 .ava-footer-kicker::before,
.ava-site-footer--v5 .ava-footer-section__eyebrow::before {
    content: "";
    width: 24px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, #5d76ff, #31a3ff);
}
.ava-site-footer--v5 .ava-footer-floating-cta__content h2 {
    margin: 10px 0 8px;
    color: #111827;
    font-size: clamp(24px, 2.8vw, 38px);
    line-height: 1.42;
}
.ava-site-footer--v5 .ava-footer-floating-cta__content p {
    margin: 0;
    max-width: 760px;
    color: #64748b;
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v5 .ava-footer-floating-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}
.ava-site-footer--v5 .ava-footer-primary-action,
.ava-site-footer--v5 .ava-footer-secondary-action,
.ava-site-footer--v5 .ava-back-to-top--footer-v5,
.ava-site-footer--v5 .ava-footer-mini-posts__head a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 18px;
    border-radius: 16px;
    font-size: 13px;
    font-weight: 800;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.ava-site-footer--v5 .ava-footer-primary-action:hover,
.ava-site-footer--v5 .ava-footer-secondary-action:hover,
.ava-site-footer--v5 .ava-back-to-top--footer-v5:hover,
.ava-site-footer--v5 .ava-footer-mini-posts__head a:hover {
    transform: translateY(-2px);
}
.ava-site-footer--v5 .ava-footer-primary-action {
    color: #fff;
    background: linear-gradient(135deg, #4b64ff, #2990ff);
    box-shadow: 0 16px 36px rgba(59, 95, 255, .22);
}
.ava-site-footer--v5 .ava-footer-secondary-action,
.ava-site-footer--v5 .ava-back-to-top--footer-v5,
.ava-site-footer--v5 .ava-footer-mini-posts__head a {
    color: #203875;
    border: 1px solid rgba(54, 82, 164, .12);
    background: #f7f9ff;
}
.ava-site-footer--v5 .ava-footer-surface-v5 {
    display: grid;
    gap: 0;
    padding: 118px 34px 0;
    border-radius: 34px 34px 0 0;
    background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
}
.ava-site-footer--v5 .ava-footer-surface-v5__main {
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(0, .96fr) minmax(0, .92fr);
    gap: 24px;
    padding-bottom: 26px;
}
.ava-site-footer--v5 .ava-footer-section {
    min-width: 0;
}
.ava-site-footer--v5 .ava-footer-section + .ava-footer-section {
    border-inline-start: 1px solid rgba(255,255,255,.08);
    padding-inline-start: 24px;
}
.ava-site-footer--v5 .ava-footer-section h2,
.ava-site-footer--v5 .ava-footer-mini-posts h2 {
    margin: 8px 0 0;
    color: #fff;
    font-size: 24px;
    line-height: 1.45;
}
.ava-site-footer--v5 .ava-footer-brand__logo {
    margin-bottom: 18px;
}
.ava-site-footer--v5 .ava-footer-brand__logo img {
    width: auto;
    max-height: 56px;
}
.ava-site-footer--v5 .ava-footer-brand__description {
    margin: 14px 0 0;
    color: rgba(232,238,251,.72);
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v5 .ava-footer-tags,
.ava-site-footer--v5 .ava-footer-contact-actions-v5 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}
.ava-site-footer--v5 .ava-footer-tags span,
.ava-site-footer--v5 .ava-footer-contact-actions-v5 a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.06);
    color: #eef4ff;
    font-size: 12px;
    font-weight: 700;
}
.ava-site-footer--v5 .ava-footer-social-v5 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid rgba(255,255,255,.08);
}
.ava-site-footer--v5 .ava-footer-social-v5 > span {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}
.ava-site-footer--v5 .ava-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.ava-site-footer--v5 .ava-social-links a {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 13px;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.05);
    color: #dbe7ff;
}
.ava-site-footer--v5 .ava-social-links a:hover {
    background: rgba(255,255,255,.10);
}
.ava-site-footer--v5 .ava-footer-link-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 18px;
}
.ava-site-footer--v5 .ava-footer-link-columns--fallback {
    grid-template-columns: 1fr;
}
.ava-site-footer--v5 .ava-footer-link-group h3 {
    margin: 0 0 12px;
    color: #fff;
    font-size: 15px;
}
.ava-site-footer--v5 .ava-footer-menu,
.ava-site-footer--v5 .ava-footer-legal {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ava-site-footer--v5 .ava-footer-menu li + li {
    margin-top: 10px;
}
.ava-site-footer--v5 .ava-footer-menu a,
.ava-site-footer--v5 .ava-footer-legal a,
.ava-site-footer--v5 .ava-footer-credit a,
.ava-site-footer--v5 .ava-footer-mini-post h3 a,
.ava-site-footer--v5 .ava-footer-contact-actions-v5 a {
    color: inherit;
}
.ava-site-footer--v5 .ava-footer-menu a {
    color: rgba(232,238,251,.74);
    font-size: 13px;
    line-height: 1.9;
}
.ava-site-footer--v5 .ava-footer-menu a:hover,
.ava-site-footer--v5 .ava-footer-mini-post h3 a:hover,
.ava-site-footer--v5 .ava-footer-contact-actions-v5 a:hover {
    color: #fff;
}
.ava-site-footer--v5 .ava-footer-contact-list {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}
.ava-site-footer--v5 .ava-footer-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    color: #fff;
}
.ava-site-footer--v5 .ava-footer-contact-item[dir="ltr"] {
    direction: ltr;
    text-align: left;
}
.ava-site-footer--v5 .ava-footer-contact-item__icon {
    display: grid;
    place-items: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: 14px;
    background: rgba(255,255,255,.06);
    color: #bcd4ff;
}
.ava-site-footer--v5 .ava-footer-contact-item__body {
    min-width: 0;
}
.ava-site-footer--v5 .ava-footer-contact-item__body small,
.ava-site-footer--v5 .ava-footer-mini-post time,
.ava-site-footer--v5 .ava-footer-bottom-copy p,
.ava-site-footer--v5 .ava-footer-credit,
.ava-site-footer--v5 .ava-footer-legal a {
    color: rgba(232,238,251,.62);
    font-size: 12px;
}
.ava-site-footer--v5 .ava-footer-contact-item__body b {
    display: block;
    color: #fff;
    font-size: 14px;
    line-height: 1.85;
    word-break: break-word;
}
.ava-site-footer--v5 .ava-footer-surface-v5__extra {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,.08);
}
.ava-site-footer--v5 .ava-footer-mini-posts__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}
.ava-site-footer--v5 .ava-footer-mini-posts__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}
.ava-site-footer--v5 .ava-footer-mini-post {
    min-width: 0;
}
.ava-site-footer--v5 .ava-footer-mini-post h3 {
    margin: 8px 0 0;
    color: #fff;
    font-size: 14px;
    line-height: 1.9;
}
.ava-site-footer--v5 .ava-footer-widgets--inline {
    color: #e8eefb;
}
.ava-site-footer--v5 .ava-footer-surface-v5__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px 22px;
    padding: 18px 0 22px;
    border-top: 1px solid rgba(255,255,255,.08);
}
.ava-site-footer--v5 .ava-footer-bottom-copy {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: center;
}
.ava-site-footer--v5 .ava-footer-bottom-copy p {
    margin: 0;
}
.ava-site-footer--v5 .ava-footer-bottom-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 16px;
    margin-inline-start: auto;
}
.ava-site-footer--v5 .ava-footer-legal {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}
.ava-site-footer--v5 .ava-back-to-top--footer-v5 span {
    white-space: nowrap;
}

@media (max-width: 1200px) {
    .ava-site-footer--v5 .ava-footer-surface-v5__main {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .ava-site-footer--v5 .ava-footer-section--brand {
        grid-column: 1 / -1;
    }
}
@media (max-width: 980px) {
    .ava-site-footer--v5 .ava-footer-floating-cta,
    .ava-site-footer--v5 .ava-footer-surface-v5__main,
    .ava-site-footer--v5 .ava-footer-mini-posts__list {
        grid-template-columns: 1fr;
    }
    .ava-site-footer--v5 .ava-footer-floating-cta__actions {
        justify-content: flex-start;
    }
    .ava-site-footer--v5 .ava-footer-section + .ava-footer-section {
        border-inline-start: 0;
        border-top: 1px solid rgba(255,255,255,.08);
        padding-inline-start: 0;
        padding-top: 22px;
    }
    .ava-site-footer--v5 .ava-footer-surface-v5__bottom,
    .ava-site-footer--v5 .ava-footer-mini-posts__head,
    .ava-site-footer--v5 .ava-footer-social-v5 {
        flex-direction: column;
        align-items: flex-start;
    }
    .ava-site-footer--v5 .ava-footer-bottom-meta {
        margin-inline-start: 0;
    }
}
@media (max-width: 680px) {
    .ava-site-footer--v5 {
        margin-top: 88px;
    }
    .ava-site-footer--v5 .ava-footer-floating-cta {
        margin-bottom: -58px;
        padding: 20px 18px;
        border-radius: 24px;
    }
    .ava-site-footer--v5 .ava-footer-floating-cta__content h2,
    .ava-site-footer--v5 .ava-footer-section h2,
    .ava-site-footer--v5 .ava-footer-mini-posts h2 {
        font-size: 21px;
    }
    .ava-site-footer--v5 .ava-footer-floating-cta__content p,
    .ava-site-footer--v5 .ava-footer-brand__description {
        font-size: 13px;
    }
    .ava-site-footer--v5 .ava-footer-surface-v5 {
        padding: 92px 18px 0;
        border-radius: 26px 26px 0 0;
    }
    .ava-site-footer--v5 .ava-footer-surface-v5__main {
        gap: 18px;
        padding-bottom: 18px;
    }
    .ava-site-footer--v5 .ava-footer-link-columns,
    .ava-site-footer--v5 .ava-footer-mini-posts__list {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .ava-site-footer--v5 .ava-footer-primary-action,
    .ava-site-footer--v5 .ava-footer-secondary-action,
    .ava-site-footer--v5 .ava-back-to-top--footer-v5,
    .ava-site-footer--v5 .ava-footer-mini-posts__head a {
        width: 100%;
    }
}

/* --- 3.2.6: approved footer concept, implemented exactly from the mockup --- */
.ava-site-footer--v6 {
    position: relative;
    margin-top: 190px;
    padding: 0 0 34px;
    overflow: visible;
    color: #e8eefb;
    background:
        radial-gradient(circle at 8% 18%, rgba(21, 91, 255, .14), transparent 24%),
        radial-gradient(circle at 92% 22%, rgba(44, 87, 255, .10), transparent 20%),
        linear-gradient(180deg, #081c49 0%, #06183e 52%, #051433 100%);
}
.ava-site-footer--v6::before,
.ava-site-footer--v6::after {
    content: "";
    position: absolute;
    pointer-events: none;
    opacity: .28;
}
.ava-site-footer--v6::before {
    top: 58px;
    left: 2.5%;
    width: 170px;
    height: 260px;
    border: 1px solid rgba(52, 118, 255, .35);
    border-radius: 50%;
    transform: rotate(-22deg);
}
.ava-site-footer--v6::after {
    top: 96px;
    right: 1.5%;
    width: 170px;
    height: 210px;
    border: 1px solid rgba(52, 118, 255, .28);
    border-radius: 50%;
    transform: rotate(28deg);
}
.ava-site-footer--v6 .ava-footer-v6__container {
    position: relative;
    z-index: 1;
}
.ava-site-footer--v6 .ava-footer-v6__cta {
    width: min(1120px, calc(100% - 44px));
    margin-inline: auto;
    transform: translateY(-50%);
    margin-bottom: -132px;
    padding: 38px 48px 40px;
    border: 1px solid rgba(255,255,255,.92);
    border-radius: 32px;
    background:
        radial-gradient(circle at 14% 18%, rgba(78, 112, 255, .06), transparent 30%),
        linear-gradient(135deg, #fff 0%, #fbfcff 58%, #f4f7ff 100%);
    box-shadow: 0 30px 80px rgba(0, 20, 60, .20);
    text-align: center;
}
.ava-site-footer--v6 .ava-footer-v6__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #174dff;
    font-size: 13px;
    font-weight: 800;
}
.ava-site-footer--v6 .ava-footer-v6__kicker::before {
    content: "";
    width: 28px;
    height: 2px;
    border-radius: 999px;
    background: #174dff;
}
.ava-site-footer--v6 .ava-footer-v6__cta h2 {
    margin: 14px 0 10px;
    color: #0b1838;
    font-size: clamp(30px, 3.5vw, 48px);
    line-height: 1.35;
    letter-spacing: -.9px;
}
.ava-site-footer--v6 .ava-footer-v6__cta p {
    max-width: 800px;
    margin: 0 auto;
    color: #6b7891;
    font-size: 15px;
    line-height: 2;
}
.ava-site-footer--v6 .ava-footer-v6__cta-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    margin-top: 28px;
}
.ava-site-footer--v6 .ava-footer-v6__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 230px;
    min-height: 58px;
    padding: 0 24px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 800;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ava-site-footer--v6 .ava-footer-v6__button:hover {
    transform: translateY(-2px);
}
.ava-site-footer--v6 .ava-footer-v6__button--primary {
    color: #fff;
    background: linear-gradient(135deg, #1c35ff, #157fff);
    box-shadow: 0 14px 28px rgba(26, 78, 255, .28);
}
.ava-site-footer--v6 .ava-footer-v6__button--secondary {
    color: #0d234f;
    border: 1px solid rgba(17, 38, 80, .22);
    background: #fff;
}
.ava-site-footer--v6 .ava-footer-v6__button .ava-icon {
    width: 19px;
    height: 19px;
}
.ava-site-footer--v6 .ava-footer-v6__surface {
    padding: 190px 42px 0;
    border: 1px solid rgba(116, 159, 255, .22);
    border-radius: 34px 34px 28px 28px;
    background:
        linear-gradient(180deg, rgba(4, 24, 64, .64), rgba(1, 15, 42, .38));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.ava-site-footer--v6 .ava-footer-v6__columns {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr) minmax(0, .95fr);
    gap: 0;
    padding-bottom: 38px;
}
.ava-site-footer--v6 .ava-footer-v6__brand,
.ava-site-footer--v6 .ava-footer-v6__links,
.ava-site-footer--v6 .ava-footer-v6__contact {
    min-width: 0;
    padding-inline: 42px;
}
.ava-site-footer--v6 .ava-footer-v6__brand {
    padding-inline-start: 0;
}
.ava-site-footer--v6 .ava-footer-v6__contact {
    padding-inline-end: 0;
}
.ava-site-footer--v6 .ava-footer-v6__links,
.ava-site-footer--v6 .ava-footer-v6__contact {
    border-inline-start: 1px solid rgba(255,255,255,.12);
}
.ava-site-footer--v6 .ava-footer-v6__logo {
    margin-bottom: 20px;
}
.ava-site-footer--v6 .ava-footer-v6__logo img {
    display: block;
    width: auto;
    max-width: 210px;
    max-height: 70px;
}
.ava-site-footer--v6 .ava-footer-v6__brand h2,
.ava-site-footer--v6 .ava-footer-v6__links h2,
.ava-site-footer--v6 .ava-footer-v6__contact h2 {
    position: relative;
    margin: 0 0 22px;
    color: #fff;
    font-size: 24px;
    line-height: 1.45;
}
.ava-site-footer--v6 .ava-footer-v6__links h2,
.ava-site-footer--v6 .ava-footer-v6__contact h2 {
    display: inline-flex;
    flex-direction: column;
    gap: 10px;
}
.ava-site-footer--v6 .ava-footer-v6__links h2::after,
.ava-site-footer--v6 .ava-footer-v6__contact h2::after {
    content: "";
    width: 34px;
    height: 2px;
    border-radius: 999px;
    background: #2d74ff;
}
.ava-site-footer--v6 .ava-footer-v6__brand p {
    max-width: 390px;
    margin: 0;
    color: rgba(232,238,251,.76);
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v6 .ava-footer-v6__social {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 26px;
}
.ava-site-footer--v6 .ava-footer-v6__social a {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 50%;
    background: rgba(255,255,255,.06);
    color: #fff;
    transition: transform .2s ease, background .2s ease;
}
.ava-site-footer--v6 .ava-footer-v6__social a:hover {
    transform: translateY(-2px);
    background: rgba(255,255,255,.12);
}
.ava-site-footer--v6 .ava-footer-v6__menu,
.ava-site-footer--v6 .ava-footer-v6__legal {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ava-site-footer--v6 .ava-footer-v6__menu li + li {
    margin-top: 14px;
}
.ava-site-footer--v6 .ava-footer-v6__menu a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: rgba(232,238,251,.74);
    font-size: 14px;
    line-height: 1.8;
}
.ava-site-footer--v6 .ava-footer-v6__menu a::before {
    content: "‹";
    color: #9cb8ff;
    font-size: 20px;
    line-height: 1;
}
.ava-site-footer--v6 .ava-footer-v6__menu a:hover {
    color: #fff;
}
.ava-site-footer--v6 .ava-footer-v6__contact-list {
    display: grid;
    gap: 18px;
}
.ava-site-footer--v6 .ava-footer-v6__contact-row {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #fff;
}
.ava-site-footer--v6 .ava-footer-v6__contact-icon {
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 13px;
    background: rgba(255,255,255,.05);
    color: #dce7ff;
}
.ava-site-footer--v6 .ava-footer-v6__contact-copy {
    min-width: 0;
}
.ava-site-footer--v6 .ava-footer-v6__contact-copy small {
    display: block;
    margin-bottom: 4px;
    color: rgba(232,238,251,.62);
    font-size: 11px;
}
.ava-site-footer--v6 .ava-footer-v6__contact-copy b {
    display: block;
    color: #fff;
    font-size: 14px;
    line-height: 1.75;
    word-break: break-word;
}
.ava-site-footer--v6 .ava-footer-v6__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 0 26px;
    border-top: 1px solid rgba(255,255,255,.14);
}
.ava-site-footer--v6 .ava-footer-v6__bottom p {
    margin: 0;
    color: rgba(232,238,251,.62);
    font-size: 12px;
}
.ava-site-footer--v6 .ava-footer-v6__legal-wrap {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-inline-start: auto;
}
.ava-site-footer--v6 .ava-footer-v6__legal {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
}
.ava-site-footer--v6 .ava-footer-v6__legal a {
    color: rgba(232,238,251,.62);
    font-size: 12px;
}
.ava-site-footer--v6 .ava-footer-v6__legal a:hover {
    color: #fff;
}
.ava-site-footer--v6 .ava-footer-v6__top {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    background: rgba(255,255,255,.06);
    color: #fff;
}

@media (max-width: 1100px) {
    .ava-site-footer--v6 .ava-footer-v6__surface {
        padding-inline: 28px;
    }
    .ava-site-footer--v6 .ava-footer-v6__brand,
    .ava-site-footer--v6 .ava-footer-v6__links,
    .ava-site-footer--v6 .ava-footer-v6__contact {
        padding-inline: 26px;
    }
    .ava-site-footer--v6 .ava-footer-v6__brand {
        padding-inline-start: 0;
    }
    .ava-site-footer--v6 .ava-footer-v6__contact {
        padding-inline-end: 0;
    }
}
@media (max-width: 900px) {
    .ava-site-footer--v6 {
        margin-top: 170px;
    }
    .ava-site-footer--v6 .ava-footer-v6__cta {
        margin-bottom: -118px;
    }
    .ava-site-footer--v6 .ava-footer-v6__surface {
        padding-top: 168px;
    }
    .ava-site-footer--v6 .ava-footer-v6__columns {
        grid-template-columns: 1fr 1fr;
        gap: 26px 0;
    }
    .ava-site-footer--v6 .ava-footer-v6__brand {
        grid-column: 1 / -1;
        padding-inline: 0;
        padding-bottom: 26px;
        border-bottom: 1px solid rgba(255,255,255,.12);
    }
    .ava-site-footer--v6 .ava-footer-v6__links {
        padding-inline-start: 0;
        border-inline-start: 0;
    }
}
@media (max-width: 680px) {
    .ava-site-footer--v6 {
        margin-top: 146px;
        padding-bottom: 18px;
    }
    .ava-site-footer--v6 .ava-footer-v6__cta {
        width: calc(100% - 24px);
        margin-bottom: -96px;
        padding: 24px 18px 22px;
        border-radius: 24px;
    }
    .ava-site-footer--v6 .ava-footer-v6__cta h2 {
        margin-top: 11px;
        font-size: 25px;
        line-height: 1.48;
    }
    .ava-site-footer--v6 .ava-footer-v6__cta p {
        font-size: 12.5px;
        line-height: 1.9;
    }
    .ava-site-footer--v6 .ava-footer-v6__cta-actions {
        display: grid;
        grid-template-columns: 1fr;
        margin-top: 20px;
    }
    .ava-site-footer--v6 .ava-footer-v6__button {
        width: 100%;
        min-width: 0;
        min-height: 52px;
    }
    .ava-site-footer--v6 .ava-footer-v6__surface {
        padding: 132px 20px 0;
        border-radius: 26px 26px 20px 20px;
    }
    .ava-site-footer--v6 .ava-footer-v6__columns {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .ava-site-footer--v6 .ava-footer-v6__brand,
    .ava-site-footer--v6 .ava-footer-v6__links,
    .ava-site-footer--v6 .ava-footer-v6__contact {
        padding: 0;
        border: 0;
    }
    .ava-site-footer--v6 .ava-footer-v6__section + .ava-footer-v6__section {
        border-top: 1px solid rgba(255,255,255,.12);
    }
    .ava-site-footer--v6 .ava-footer-v6__links,
    .ava-site-footer--v6 .ava-footer-v6__contact {
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid rgba(255,255,255,.12);
    }
    .ava-site-footer--v6 .ava-footer-v6__bottom {
        align-items: flex-start;
        flex-direction: column;
    }
    .ava-site-footer--v6 .ava-footer-v6__legal-wrap {
        width: 100%;
        margin-inline-start: 0;
        justify-content: space-between;
    }
}

/* --- 3.2.6 hotfix: approved footer refined into 4 unified tools (Ava footer v7) --- */
.ava-site-footer--v7 {
    position: relative;
    margin-top: 114px;
    background: linear-gradient(180deg, #07194d 0%, #031a58 100%);
    color: #ecf2ff;
}
.ava-site-footer--v7::before,
.ava-site-footer--v7::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    opacity: .3;
    border: 1px solid rgba(86, 121, 255, .24);
}
.ava-site-footer--v7::before {
    width: 190px;
    height: 190px;
    inset-inline-start: 24px;
    top: 118px;
}
.ava-site-footer--v7::after {
    width: 240px;
    height: 240px;
    inset-inline-end: 18px;
    top: 156px;
}
.ava-site-footer--v7 .ava-footer-v7__container {
    position: relative;
    z-index: 1;
}
.ava-site-footer--v7 .ava-footer-v7__cta {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) auto;
    align-items: center;
    gap: 22px 28px;
    margin: 0 auto -72px;
    padding: 46px 54px;
    border-radius: 34px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    box-shadow: 0 26px 70px rgba(5, 19, 59, .16);
}
.ava-site-footer--v7 .ava-footer-v7__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #2962ff;
    font-size: 14px;
    font-weight: 800;
}
.ava-site-footer--v7 .ava-footer-v7__kicker::before {
    content: "";
    width: 44px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, #2962ff, #47afff);
}
.ava-site-footer--v7 .ava-footer-v7__cta h2 {
    margin: 18px 0 12px;
    color: #0c1a44;
    font-size: clamp(40px, 3.9vw, 62px);
    line-height: 1.25;
}
.ava-site-footer--v7 .ava-footer-v7__cta p {
    margin: 0;
    color: #7888a7;
    font-size: 14px;
    line-height: 2.05;
}
.ava-site-footer--v7 .ava-footer-v7__cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: flex-end;
}
.ava-site-footer--v7 .ava-footer-v7__button,
.ava-site-footer--v7 .ava-footer-v7__top {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 68px;
    padding: 0 28px;
    border-radius: 18px;
    font-size: 15px;
    font-weight: 800;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.ava-site-footer--v7 .ava-footer-v7__button:hover,
.ava-site-footer--v7 .ava-footer-v7__top:hover {
    transform: translateY(-2px);
}
.ava-site-footer--v7 .ava-footer-v7__button--primary {
    color: #fff;
    background: linear-gradient(90deg, #2b48ff 0%, #2d8dff 100%);
    box-shadow: 0 18px 40px rgba(43, 72, 255, .22);
}
.ava-site-footer--v7 .ava-footer-v7__button--secondary {
    color: #17336d;
    border: 1px solid #d7dfef;
    background: #fff;
}
.ava-site-footer--v7 .ava-footer-v7__button .ava-icon {
    width: 20px;
    height: 20px;
}
.ava-site-footer--v7 .ava-footer-v7__surface {
    padding: 118px 44px 26px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 34px;
    background: linear-gradient(180deg, rgba(2, 25, 89, .78), rgba(0, 28, 96, .9));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.ava-site-footer--v7 .ava-footer-v7__columns {
    display: grid;
    grid-template-columns: 1.1fr .9fr .95fr 1fr;
    gap: 28px;
}
.ava-site-footer--v7 .ava-footer-v7__column {
    min-width: 0;
}
.ava-site-footer--v7 .ava-footer-v7__column + .ava-footer-v7__column {
    border-inline-start: 1px solid rgba(255,255,255,.10);
    padding-inline-start: 28px;
}
.ava-site-footer--v7 .ava-footer-v7__column h2 {
    margin: 0 0 28px;
    color: #ffffff;
    font-size: 23px;
    line-height: 1.5;
}
.ava-site-footer--v7 .ava-footer-v7__column h2::after {
    content: "";
    display: block;
    width: 42px;
    height: 3px;
    margin-top: 12px;
    border-radius: 999px;
    background: linear-gradient(90deg, #2b6cff, #39b3ff);
}
.ava-site-footer--v7 .ava-footer-v7__logo {
    margin-bottom: 24px;
}
.ava-site-footer--v7 .ava-footer-v7__logo img {
    max-height: 64px;
    width: auto;
}
.ava-site-footer--v7 .ava-footer-v7__brand p {
    margin: 0;
    color: rgba(236, 242, 255, .78);
    font-size: 15px;
    line-height: 2.1;
}
.ava-site-footer--v7 .ava-footer-v7__menu,
.ava-site-footer--v7 .ava-footer-v7__legal {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ava-site-footer--v7 .ava-footer-v7__menu li + li {
    margin-top: 14px;
}
.ava-site-footer--v7 .ava-footer-v7__menu a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: rgba(236, 242, 255, .84);
    font-size: 15px;
    line-height: 1.95;
    transition: color .2s ease, transform .2s ease;
}
.ava-site-footer--v7 .ava-footer-v7__menu a::before {
    content: "›";
    color: rgba(105, 168, 255, .9);
    font-size: 20px;
    line-height: 1;
}
.ava-site-footer--v7 .ava-footer-v7__menu a:hover {
    color: #fff;
    transform: translateX(-2px);
}
.ava-site-footer--v7 .ava-footer-v7__contact-list {
    display: grid;
    gap: 16px;
}
.ava-site-footer--v7 .ava-footer-v7__contact-row {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #fff;
}
.ava-site-footer--v7 .ava-footer-v7__contact-icon {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.1);
    background: rgba(255,255,255,.05);
    color: #dfe9ff;
}
.ava-site-footer--v7 .ava-footer-v7__contact-icon .ava-icon {
    width: 22px;
    height: 22px;
}
.ava-site-footer--v7 .ava-footer-v7__contact-copy {
    min-width: 0;
}
.ava-site-footer--v7 .ava-footer-v7__contact-copy small {
    display: block;
    margin-bottom: 5px;
    color: rgba(236, 242, 255, .62);
    font-size: 12px;
}
.ava-site-footer--v7 .ava-footer-v7__contact-copy b {
    display: block;
    color: #fff;
    font-size: 15px;
    line-height: 1.8;
    word-break: break-word;
}
.ava-site-footer--v7 .ava-footer-v7__social {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}
.ava-site-footer--v7 .ava-footer-v7__social a {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.12);
    background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
    color: #f2f7ff;
    box-shadow: 0 8px 22px rgba(1, 8, 32, .18);
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.ava-site-footer--v7 .ava-footer-v7__social a:hover {
    transform: translateY(-2px);
    background: linear-gradient(180deg, rgba(71, 129, 255, .24), rgba(46, 158, 255, .18));
    border-color: rgba(135, 180, 255, .36);
}
.ava-site-footer--v7 .ava-footer-v7__social .ava-icon {
    width: 23px;
    height: 23px;
    stroke-width: 1.7;
}
.ava-site-footer--v7 .ava-footer-v7__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,.10);
}
.ava-site-footer--v7 .ava-footer-v7__bottom p,
.ava-site-footer--v7 .ava-footer-v7__legal a {
    color: rgba(236, 242, 255, .72);
    font-size: 13px;
    line-height: 1.9;
}
.ava-site-footer--v7 .ava-footer-v7__bottom p {
    margin: 0;
}
.ava-site-footer--v7 .ava-footer-v7__bottom-actions {
    display: flex;
    align-items: center;
    gap: 12px 16px;
    flex-wrap: wrap;
    margin-inline-start: auto;
}
.ava-site-footer--v7 .ava-footer-v7__legal {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}
.ava-site-footer--v7 .ava-footer-v7__legal a:hover {
    color: #fff;
}
.ava-site-footer--v7 .ava-footer-v7__top {
    width: 52px;
    min-height: 52px;
    padding: 0;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 18px;
    background: rgba(255,255,255,.06);
    color: #fff;
}

@media (max-width: 1400px) {
    .ava-site-footer--v7 .ava-footer-v7__cta h2 {
        font-size: clamp(34px, 3.3vw, 52px);
    }
    .ava-site-footer--v7 .ava-footer-v7__columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .ava-site-footer--v7 .ava-footer-v7__column:nth-child(3) {
        border-inline-start: 0;
        padding-inline-start: 0;
    }
}
@media (max-width: 980px) {
    .ava-site-footer--v7 {
        margin-top: 96px;
    }
    .ava-site-footer--v7 .ava-footer-v7__cta {
        grid-template-columns: 1fr;
        margin-bottom: -60px;
        padding: 28px 24px;
    }
    .ava-site-footer--v7 .ava-footer-v7__cta-actions {
        justify-content: flex-start;
    }
    .ava-site-footer--v7 .ava-footer-v7__surface {
        padding: 92px 24px 22px;
    }
    .ava-site-footer--v7 .ava-footer-v7__columns {
        grid-template-columns: 1fr 1fr;
        gap: 22px;
    }
    .ava-site-footer--v7 .ava-footer-v7__column:nth-child(2n+1) {
        border-inline-start: 0;
        padding-inline-start: 0;
    }
    .ava-site-footer--v7 .ava-footer-v7__bottom {
        flex-direction: column;
        align-items: flex-start;
    }
    .ava-site-footer--v7 .ava-footer-v7__bottom-actions {
        margin-inline-start: 0;
    }
}
@media (max-width: 680px) {
    .ava-site-footer--v7 {
        margin-top: 84px;
    }
    .ava-site-footer--v7 .ava-footer-v7__cta {
        margin-bottom: -52px;
        padding: 22px 18px;
        border-radius: 26px;
    }
    .ava-site-footer--v7 .ava-footer-v7__cta h2 {
        margin-top: 14px;
        font-size: 24px;
    }
    .ava-site-footer--v7 .ava-footer-v7__cta p,
    .ava-site-footer--v7 .ava-footer-v7__brand p {
        font-size: 13px;
    }
    .ava-site-footer--v7 .ava-footer-v7__cta-actions {
        width: 100%;
        flex-direction: column;
    }
    .ava-site-footer--v7 .ava-footer-v7__button {
        width: 100%;
        min-height: 54px;
        padding: 0 16px;
        font-size: 14px;
    }
    .ava-site-footer--v7 .ava-footer-v7__surface {
        padding: 82px 18px 18px;
        border-radius: 26px;
    }
    .ava-site-footer--v7 .ava-footer-v7__columns {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .ava-site-footer--v7 .ava-footer-v7__column + .ava-footer-v7__column,
    .ava-site-footer--v7 .ava-footer-v7__column:nth-child(2n+1) {
        border-inline-start: 0;
        padding-inline-start: 0;
        border-top: 1px solid rgba(255,255,255,.08);
        padding-top: 18px;
    }
    .ava-site-footer--v7 .ava-footer-v7__column h2 {
        font-size: 20px;
        margin-bottom: 18px;
    }
    .ava-site-footer--v7 .ava-footer-v7__social a,
    .ava-site-footer--v7 .ava-footer-v7__top {
        width: 46px;
        height: 46px;
        border-radius: 15px;
    }
    .ava-site-footer--v7 .ava-footer-v7__legal {
        width: 100%;
    }
}

/* --- 3.2.6: exact implementation of the approved footer mockup (Ava footer v8) --- */
.ava-site-footer--v8 {
    position: relative;
    z-index: 2;
    margin-top: 168px;
    padding: 0 0 28px;
    overflow: visible;
    color: #eef4ff;
    background:
        radial-gradient(circle at 8% 28%, rgba(36, 92, 216, .16), transparent 20%),
        radial-gradient(circle at 94% 26%, rgba(36, 92, 216, .12), transparent 20%),
        linear-gradient(180deg, #08245f 0%, #031b4e 100%);
}
.ava-site-footer--v8::before,
.ava-site-footer--v8::after {
    content: "";
    position: absolute;
    z-index: 0;
    width: 210px;
    height: 210px;
    border: 1px solid rgba(61, 117, 255, .18);
    border-radius: 50%;
    pointer-events: none;
}
.ava-site-footer--v8::before {
    inset-inline-start: 36px;
    top: 74px;
}
.ava-site-footer--v8::after {
    inset-inline-end: 28px;
    top: 126px;
}
.ava-site-footer--v8 .ava-footer-v8__container {
    position: relative;
    z-index: 1;
}
.ava-site-footer--v8 .ava-footer-v8__cta {
    position: relative;
    z-index: 2;
    width: min(1120px, calc(100% - 48px));
    margin: -150px auto 54px;
    padding: 52px 48px 46px;
    text-align: center;
    border: 1px solid rgba(38, 66, 130, .07);
    border-radius: 32px;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9fd 100%);
    box-shadow: 0 28px 70px rgba(3, 18, 61, .16);
}
.ava-site-footer--v8 .ava-footer-v8__kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #275fe8;
    font-size: 14px;
    font-weight: 800;
}
.ava-site-footer--v8 .ava-footer-v8__kicker::after {
    content: "";
    width: 42px;
    height: 2px;
    border-radius: 99px;
    background: linear-gradient(90deg, #275fe8, #47a6ff);
}
.ava-site-footer--v8 .ava-footer-v8__cta h2 {
    max-width: 900px;
    margin: 18px auto 14px;
    color: #0d1d4a;
    font-size: clamp(36px, 4vw, 58px);
    line-height: 1.35;
    letter-spacing: -.7px;
}
.ava-site-footer--v8 .ava-footer-v8__cta p {
    max-width: 820px;
    margin: 0 auto;
    color: #7684a0;
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v8 .ava-footer-v8__cta-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
}
.ava-site-footer--v8 .ava-footer-v8__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 220px;
    min-height: 58px;
    padding: 0 24px;
    border-radius: 15px;
    font-size: 14px;
    font-weight: 800;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.ava-site-footer--v8 .ava-footer-v8__button:hover,
.ava-site-footer--v8 .ava-footer-v8__top:hover {
    transform: translateY(-2px);
}
.ava-site-footer--v8 .ava-footer-v8__button--primary {
    color: #fff;
    background: linear-gradient(90deg, #2a55ff 0%, #2d8cff 100%);
    box-shadow: 0 16px 34px rgba(42, 85, 255, .22);
}
.ava-site-footer--v8 .ava-footer-v8__button--secondary {
    color: #132d66;
    border: 1px solid #d1d9ea;
    background: #fff;
}
.ava-site-footer--v8 .ava-footer-v8__button .ava-icon {
    width: 19px;
    height: 19px;
}
.ava-site-footer--v8 .ava-footer-v8__surface {
    width: min(1240px, calc(100% - 48px));
    margin: 0 auto;
    padding: 54px 52px 24px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 30px;
    background: linear-gradient(180deg, rgba(2, 25, 79, .78), rgba(1, 24, 75, .88));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.ava-site-footer--v8 .ava-footer-v8__columns {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, .78fr) minmax(0, .9fr);
    gap: 0;
    direction: rtl;
}
.ava-site-footer--v8 .ava-footer-v8__brand,
.ava-site-footer--v8 .ava-footer-v8__links,
.ava-site-footer--v8 .ava-footer-v8__contact {
    min-width: 0;
    padding-inline: 42px;
}
.ava-site-footer--v8 .ava-footer-v8__brand {
    padding-inline-start: 0;
}
.ava-site-footer--v8 .ava-footer-v8__contact {
    padding-inline-end: 0;
}
.ava-site-footer--v8 .ava-footer-v8__links,
.ava-site-footer--v8 .ava-footer-v8__contact {
    border-inline-start: 1px solid rgba(255,255,255,.12);
}
.ava-site-footer--v8 .ava-footer-v8__logo {
    margin-bottom: 20px;
}
.ava-site-footer--v8 .ava-footer-v8__logo img {
    display: block;
    width: auto;
    max-width: 220px;
    max-height: 72px;
}
.ava-site-footer--v8 .ava-footer-v8__brand h2,
.ava-site-footer--v8 .ava-footer-v8__links h2,
.ava-site-footer--v8 .ava-footer-v8__contact h2 {
    margin: 0 0 22px;
    color: #fff;
    font-size: 23px;
    line-height: 1.45;
}
.ava-site-footer--v8 .ava-footer-v8__links h2,
.ava-site-footer--v8 .ava-footer-v8__contact h2 {
    display: inline-flex;
    flex-direction: column;
    gap: 10px;
}
.ava-site-footer--v8 .ava-footer-v8__links h2::after,
.ava-site-footer--v8 .ava-footer-v8__contact h2::after {
    content: "";
    width: 36px;
    height: 2px;
    border-radius: 99px;
    background: #2d74ff;
}
.ava-site-footer--v8 .ava-footer-v8__brand p {
    max-width: 390px;
    margin: 0;
    color: rgba(232, 238, 251, .76);
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v8 .ava-footer-v8__social {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}
.ava-site-footer--v8 .ava-footer-v8__social a {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%;
    background: rgba(255,255,255,.06);
    color: #fff;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.ava-site-footer--v8 .ava-footer-v8__social a:hover {
    transform: translateY(-2px);
    background: rgba(255,255,255,.12);
    border-color: rgba(141, 181, 255, .34);
}
.ava-site-footer--v8 .ava-footer-v8__social .ava-icon {
    width: 21px;
    height: 21px;
}
.ava-site-footer--v8 .ava-footer-v8__menu,
.ava-site-footer--v8 .ava-footer-v8__legal {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ava-site-footer--v8 .ava-footer-v8__menu li + li {
    margin-top: 14px;
}
.ava-site-footer--v8 .ava-footer-v8__menu a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: rgba(232, 238, 251, .76);
    font-size: 14px;
    line-height: 1.85;
}
.ava-site-footer--v8 .ava-footer-v8__menu a::before {
    content: "‹";
    color: #96b5ff;
    font-size: 20px;
    line-height: 1;
}
.ava-site-footer--v8 .ava-footer-v8__menu a:hover {
    color: #fff;
}
.ava-site-footer--v8 .ava-footer-v8__contact-list {
    display: grid;
    gap: 18px;
}
.ava-site-footer--v8 .ava-footer-v8__contact-row {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #fff;
}
.ava-site-footer--v8 .ava-footer-v8__contact-icon {
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 13px;
    background: rgba(255,255,255,.05);
    color: #dce7ff;
}
.ava-site-footer--v8 .ava-footer-v8__contact-copy {
    min-width: 0;
}
.ava-site-footer--v8 .ava-footer-v8__contact-copy small {
    display: block;
    margin-bottom: 4px;
    color: rgba(232, 238, 251, .62);
    font-size: 11px;
}
.ava-site-footer--v8 .ava-footer-v8__contact-copy b {
    display: block;
    color: #fff;
    font-size: 14px;
    line-height: 1.75;
    word-break: break-word;
}
.ava-site-footer--v8 .ava-footer-v8__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 42px;
    padding-top: 22px;
    border-top: 1px solid rgba(255,255,255,.14);
}
.ava-site-footer--v8 .ava-footer-v8__bottom p {
    margin: 0;
    color: rgba(232, 238, 251, .62);
    font-size: 12px;
}
.ava-site-footer--v8 .ava-footer-v8__bottom-actions {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-inline-start: auto;
}
.ava-site-footer--v8 .ava-footer-v8__legal {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
}
.ava-site-footer--v8 .ava-footer-v8__legal a {
    color: rgba(232, 238, 251, .62);
    font-size: 12px;
}
.ava-site-footer--v8 .ava-footer-v8__legal a:hover {
    color: #fff;
}
.ava-site-footer--v8 .ava-footer-v8__top {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    background: rgba(255,255,255,.06);
    color: #fff;
    transition: transform .2s ease, background .2s ease;
}

@media (max-width: 1100px) {
    .ava-site-footer--v8 .ava-footer-v8__surface {
        padding-inline: 30px;
    }
    .ava-site-footer--v8 .ava-footer-v8__brand,
    .ava-site-footer--v8 .ava-footer-v8__links,
    .ava-site-footer--v8 .ava-footer-v8__contact {
        padding-inline: 26px;
    }
    .ava-site-footer--v8 .ava-footer-v8__brand {
        padding-inline-start: 0;
    }
    .ava-site-footer--v8 .ava-footer-v8__contact {
        padding-inline-end: 0;
    }
}

@media (max-width: 900px) {
    .ava-site-footer--v8 {
        margin-top: 148px;
    }
    .ava-site-footer--v8 .ava-footer-v8__cta {
        width: min(760px, calc(100% - 36px));
        margin-top: -126px;
        padding: 38px 28px 34px;
    }
    .ava-site-footer--v8 .ava-footer-v8__surface {
        width: calc(100% - 36px);
        padding: 44px 28px 22px;
    }
    .ava-site-footer--v8 .ava-footer-v8__columns {
        grid-template-columns: 1fr 1fr;
        gap: 28px 0;
    }
    .ava-site-footer--v8 .ava-footer-v8__brand {
        grid-column: 1 / -1;
        padding-inline: 0;
        padding-bottom: 26px;
        border-bottom: 1px solid rgba(255,255,255,.12);
    }
    .ava-site-footer--v8 .ava-footer-v8__links {
        padding-inline-start: 0;
        border-inline-start: 0;
    }
}

@media (max-width: 680px) {
    .ava-site-footer--v8 {
        margin-top: 120px;
        padding-bottom: 16px;
    }
    .ava-site-footer--v8 .ava-footer-v8__cta {
        width: calc(100% - 24px);
        margin-top: -104px;
        margin-bottom: 28px;
        padding: 26px 18px 22px;
        border-radius: 24px;
    }
    .ava-site-footer--v8 .ava-footer-v8__kicker {
        font-size: 11px;
    }
    .ava-site-footer--v8 .ava-footer-v8__kicker::after {
        width: 26px;
    }
    .ava-site-footer--v8 .ava-footer-v8__cta h2 {
        margin-top: 12px;
        font-size: 25px;
        line-height: 1.5;
        letter-spacing: 0;
    }
    .ava-site-footer--v8 .ava-footer-v8__cta p {
        font-size: 12px;
        line-height: 1.9;
    }
    .ava-site-footer--v8 .ava-footer-v8__cta-actions {
        display: grid;
        grid-template-columns: 1fr;
        margin-top: 20px;
    }
    .ava-site-footer--v8 .ava-footer-v8__button {
        width: 100%;
        min-width: 0;
        min-height: 52px;
    }
    .ava-site-footer--v8 .ava-footer-v8__surface {
        width: calc(100% - 24px);
        padding: 30px 20px 18px;
        border-radius: 24px;
    }
    .ava-site-footer--v8 .ava-footer-v8__columns {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .ava-site-footer--v8 .ava-footer-v8__brand,
    .ava-site-footer--v8 .ava-footer-v8__links,
    .ava-site-footer--v8 .ava-footer-v8__contact {
        padding: 0;
        border: 0;
    }
    .ava-site-footer--v8 .ava-footer-v8__links,
    .ava-site-footer--v8 .ava-footer-v8__contact {
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid rgba(255,255,255,.12);
    }
    .ava-site-footer--v8 .ava-footer-v8__bottom {
        align-items: flex-start;
        flex-direction: column;
        margin-top: 28px;
    }
    .ava-site-footer--v8 .ava-footer-v8__bottom-actions {
        width: 100%;
        margin-inline-start: 0;
        justify-content: space-between;
    }
}

/* --- 3.2.8 hotfix: CTA overlap refinement + internal article layout polish --- */
.ava-site-footer--v8 {
    margin-top: 132px;
}
.ava-site-footer--v8 .ava-footer-v8__cta {
    margin: -116px auto 34px;
}

/* Article single: cleaner proportions, tidier content cards, better mobile fit */
.aps-article-page--content-first .aps-article-shell {
    padding: 24px 0 48px;
}
.aps-article-page--content-first .aps-article-body-container {
    width: min(calc(100% - 34px), 1280px);
}
.aps-article-page--content-first .aps-article-main {
    min-width: 0;
}
.aps-article-intro {
    border-radius: 28px 28px 0 0;
    padding: 34px 34px 24px;
}
.aps-article-intro h1 {
    max-width: 980px;
    font-size: clamp(32px, 3.6vw, 54px);
    line-height: 1.42;
}
.aps-article-intro__subtitle {
    max-width: 920px;
    font-size: clamp(14px, 1.15vw, 17px);
    line-height: 2;
}
.aps-article-intro__footer,
.aps-article-intro__meta {
    display: flex;
    align-items: center;
}
.aps-article-intro__media {
    margin-top: 24px;
    aspect-ratio: 16 / 8.8;
    border-radius: 20px;
}
.aps-article-intro__media img {
    object-fit: cover;
}
.aps-article-page--content-first .aps-article-content {
    padding: clamp(26px, 3.2vw, 46px);
    border-radius: 0 0 28px 28px;
    font-size: 16px;
    line-height: 2.22;
}
.aps-article-content > * {
    max-width: 100%;
}
.aps-article-content h2 {
    font-size: clamp(24px, 2.2vw, 30px);
    margin: 1.9em 0 .72em;
    padding: 16px 18px 16px 0;
}
.aps-article-content h3 {
    font-size: clamp(20px, 1.7vw, 23px);
}
.aps-article-content figure {
    margin: 1.9em auto;
}
.aps-article-content p,
.aps-article-content li {
    line-height: 2.15;
}
.aps-article-links,
.aps-article-faq,
.aps-article-tags,
.aps-article-share,
.aps-article-comments #comments {
    border-radius: 22px;
    box-shadow: 0 14px 40px rgba(31, 42, 72, .052);
}
.aps-article-links__grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
.aps-article-link {
    min-height: 84px;
}
.aps-faq-item {
    border-radius: 15px;
}
.aps-article-tags strong {
    display: block;
    margin-bottom: 14px;
}
.aps-article-tags > div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.aps-article-tags a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 12px;
    border: 1px solid #e4e8f0;
    border-radius: 999px;
    background: #f7f9fc;
    color: #254d9a;
    text-decoration: none;
}
.aps-article-share {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}
.aps-share-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.aps-share-action {
    min-height: 44px;
    padding: 0 15px;
    border-radius: 12px;
}
.aps-article-comments .comment-form input:not([type=checkbox]),
.aps-article-comments .comment-form textarea,
.aps-article-comments .form-submit input {
    min-height: 48px;
}
.aps-related-grid {
    align-items: stretch;
}
.aps-related-card,
.aps-article-navigation a.aps-article-nav-card {
    height: 100%;
}
.aps-related-card__body {
    min-height: 206px;
}
.aps-article-navigation {
    border-top-color: #e7ebf2;
}

@media (max-width: 900px) {
    .ava-site-footer--v8 {
        margin-top: 118px;
    }
    .ava-site-footer--v8 .ava-footer-v8__cta {
        margin-top: -96px;
        margin-bottom: 28px;
    }
}

@media (max-width: 680px) {
    .ava-site-footer--v8 {
        margin-top: 96px;
    }
    .ava-site-footer--v8 .ava-footer-v8__cta {
        margin-top: -78px;
        margin-bottom: 22px;
    }
    .aps-article-page--content-first .aps-article-shell {
        padding: 12px 0 30px;
    }
    .aps-article-page--content-first .aps-article-body-container {
        width: calc(100% - 18px);
    }
    .aps-article-intro {
        padding: 20px 16px 16px;
        border-radius: 20px 20px 0 0;
    }
    .aps-article-intro h1 {
        font-size: clamp(24px, 7vw, 30px);
        line-height: 1.52;
    }
    .aps-article-intro__subtitle {
        font-size: 13px;
        line-height: 2;
    }
    .aps-article-intro__footer,
    .aps-article-intro__meta {
        align-items: flex-start;
    }
    .aps-article-intro__media {
        margin-top: 18px;
        border-radius: 16px;
        aspect-ratio: 16 / 9.2;
    }
    .aps-article-page--content-first .aps-article-content {
        padding: 20px 14px;
        border-radius: 0 0 20px 20px;
        font-size: 14.5px;
        line-height: 2.15;
    }
    .aps-article-content h2 {
        font-size: 21px;
        padding: 12px 12px 12px 0;
    }
    .aps-article-links,
    .aps-article-faq,
    .aps-article-tags,
    .aps-article-share,
    .aps-article-comments #comments {
        padding: 18px 14px;
        border-radius: 18px;
    }
    .aps-article-links__grid {
        grid-template-columns: 1fr;
    }
    .aps-article-link {
        min-height: 72px;
    }
    .aps-article-tags > div {
        gap: 8px;
    }
    .aps-article-share {
        align-items: stretch;
        flex-direction: column;
    }
    .aps-share-actions {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: 100%;
    }
    .aps-share-action {
        justify-content: center;
        min-width: 0;
        padding-inline: 8px;
    }
    .aps-related-card__body {
        min-height: 0;
    }
}

/* --- 3.2.8: true 50/50 floating CTA overlap --- */
.ava-site-footer--v8 {
    --ava-footer-cta-half: 205px;
    margin-top: calc(var(--ava-footer-cta-half) + 28px);
}
.ava-site-footer--v8 .ava-footer-v8__cta {
    margin-top: calc(0px - var(--ava-footer-cta-half));
    margin-bottom: 36px;
}

@media (max-width: 900px) {
    .ava-site-footer--v8 {
        --ava-footer-cta-half: 178px;
        margin-top: calc(var(--ava-footer-cta-half) + 22px);
    }
    .ava-site-footer--v8 .ava-footer-v8__cta {
        margin-top: calc(0px - var(--ava-footer-cta-half));
        margin-bottom: 30px;
    }
}

@media (max-width: 680px) {
    .ava-site-footer--v8 {
        --ava-footer-cta-half: 168px;
        margin-top: calc(var(--ava-footer-cta-half) + 16px);
    }
    .ava-site-footer--v8 .ava-footer-v8__cta {
        margin-top: calc(0px - var(--ava-footer-cta-half));
        margin-bottom: 24px;
    }
}


/* --- 3.3.0: approved footer with structural 50/50 overlap (Ava footer v9) --- */
.ava-site-footer--v9 {
    position: relative;
    z-index: 2;
    margin-top: 168px;
    padding: 0 0 28px;
    overflow: visible;
    color: #eef4ff;
    background:
        radial-gradient(circle at 8% 28%, rgba(36, 92, 216, .16), transparent 20%),
        radial-gradient(circle at 94% 26%, rgba(36, 92, 216, .12), transparent 20%),
        linear-gradient(180deg, #08245f 0%, #031b4e 100%);
}
.ava-site-footer--v9::before,
.ava-site-footer--v9::after {
    content: "";
    position: absolute;
    z-index: 0;
    width: 210px;
    height: 210px;
    border: 1px solid rgba(61, 117, 255, .18);
    border-radius: 50%;
    pointer-events: none;
}
.ava-site-footer--v9::before {
    inset-inline-start: 36px;
    top: 74px;
}
.ava-site-footer--v9::after {
    inset-inline-end: 28px;
    top: 126px;
}
.ava-site-footer--v9 .ava-footer-v9__container {
    position: relative;
    z-index: 1;
}
.ava-site-footer--v9 .ava-footer-v9__cta {
    position: relative;
    z-index: 2;
    width: min(1120px, calc(100% - 48px));
    margin: -150px auto 54px;
    padding: 52px 48px 46px;
    text-align: center;
    border: 1px solid rgba(38, 66, 130, .07);
    border-radius: 32px;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9fd 100%);
    box-shadow: 0 28px 70px rgba(3, 18, 61, .16);
}
.ava-site-footer--v9 .ava-footer-v9__kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #275fe8;
    font-size: 14px;
    font-weight: 800;
}
.ava-site-footer--v9 .ava-footer-v9__kicker::after {
    content: "";
    width: 42px;
    height: 2px;
    border-radius: 99px;
    background: linear-gradient(90deg, #275fe8, #47a6ff);
}
.ava-site-footer--v9 .ava-footer-v9__cta h2 {
    max-width: 900px;
    margin: 18px auto 14px;
    color: #0d1d4a;
    font-size: clamp(36px, 4vw, 58px);
    line-height: 1.35;
    letter-spacing: -.7px;
}
.ava-site-footer--v9 .ava-footer-v9__cta p {
    max-width: 820px;
    margin: 0 auto;
    color: #7684a0;
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v9 .ava-footer-v9__cta-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
}
.ava-site-footer--v9 .ava-footer-v9__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 220px;
    min-height: 58px;
    padding: 0 24px;
    border-radius: 15px;
    font-size: 14px;
    font-weight: 800;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.ava-site-footer--v9 .ava-footer-v9__button:hover,
.ava-site-footer--v9 .ava-footer-v9__top:hover {
    transform: translateY(-2px);
}
.ava-site-footer--v9 .ava-footer-v9__button--primary {
    color: #fff;
    background: linear-gradient(90deg, #2a55ff 0%, #2d8cff 100%);
    box-shadow: 0 16px 34px rgba(42, 85, 255, .22);
}
.ava-site-footer--v9 .ava-footer-v9__button--secondary {
    color: #132d66;
    border: 1px solid #d1d9ea;
    background: #fff;
}
.ava-site-footer--v9 .ava-footer-v9__button .ava-icon {
    width: 19px;
    height: 19px;
}
.ava-site-footer--v9 .ava-footer-v9__surface {
    width: min(1240px, calc(100% - 48px));
    margin: 0 auto;
    padding: 54px 52px 24px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 30px;
    background: linear-gradient(180deg, rgba(2, 25, 79, .78), rgba(1, 24, 75, .88));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.ava-site-footer--v9 .ava-footer-v9__columns {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, .78fr) minmax(0, .9fr);
    gap: 0;
    direction: rtl;
}
.ava-site-footer--v9 .ava-footer-v9__brand,
.ava-site-footer--v9 .ava-footer-v9__links,
.ava-site-footer--v9 .ava-footer-v9__contact {
    min-width: 0;
    padding-inline: 42px;
}
.ava-site-footer--v9 .ava-footer-v9__brand {
    padding-inline-start: 0;
}
.ava-site-footer--v9 .ava-footer-v9__contact {
    padding-inline-end: 0;
}
.ava-site-footer--v9 .ava-footer-v9__links,
.ava-site-footer--v9 .ava-footer-v9__contact {
    border-inline-start: 1px solid rgba(255,255,255,.12);
}
.ava-site-footer--v9 .ava-footer-v9__logo {
    margin-bottom: 20px;
}
.ava-site-footer--v9 .ava-footer-v9__logo img {
    display: block;
    width: auto;
    max-width: 220px;
    max-height: 72px;
}
.ava-site-footer--v9 .ava-footer-v9__brand h2,
.ava-site-footer--v9 .ava-footer-v9__links h2,
.ava-site-footer--v9 .ava-footer-v9__contact h2 {
    margin: 0 0 22px;
    color: #fff;
    font-size: 23px;
    line-height: 1.45;
}
.ava-site-footer--v9 .ava-footer-v9__links h2,
.ava-site-footer--v9 .ava-footer-v9__contact h2 {
    display: inline-flex;
    flex-direction: column;
    gap: 10px;
}
.ava-site-footer--v9 .ava-footer-v9__links h2::after,
.ava-site-footer--v9 .ava-footer-v9__contact h2::after {
    content: "";
    width: 36px;
    height: 2px;
    border-radius: 99px;
    background: #2d74ff;
}
.ava-site-footer--v9 .ava-footer-v9__brand p {
    max-width: 390px;
    margin: 0;
    color: rgba(232, 238, 251, .76);
    font-size: 14px;
    line-height: 2;
}
.ava-site-footer--v9 .ava-footer-v9__social {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}
.ava-site-footer--v9 .ava-footer-v9__social a {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%;
    background: rgba(255,255,255,.06);
    color: #fff;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.ava-site-footer--v9 .ava-footer-v9__social a:hover {
    transform: translateY(-2px);
    background: rgba(255,255,255,.12);
    border-color: rgba(141, 181, 255, .34);
}
.ava-site-footer--v9 .ava-footer-v9__social .ava-icon {
    width: 21px;
    height: 21px;
}
.ava-site-footer--v9 .ava-footer-v9__menu,
.ava-site-footer--v9 .ava-footer-v9__legal {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ava-site-footer--v9 .ava-footer-v9__menu li + li {
    margin-top: 14px;
}
.ava-site-footer--v9 .ava-footer-v9__menu a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: rgba(232, 238, 251, .76);
    font-size: 14px;
    line-height: 1.85;
}
.ava-site-footer--v9 .ava-footer-v9__menu a::before {
    content: "‹";
    color: #96b5ff;
    font-size: 20px;
    line-height: 1;
}
.ava-site-footer--v9 .ava-footer-v9__menu a:hover {
    color: #fff;
}
.ava-site-footer--v9 .ava-footer-v9__contact-list {
    display: grid;
    gap: 18px;
}
.ava-site-footer--v9 .ava-footer-v9__contact-row {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #fff;
}
.ava-site-footer--v9 .ava-footer-v9__contact-icon {
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 13px;
    background: rgba(255,255,255,.05);
    color: #dce7ff;
}
.ava-site-footer--v9 .ava-footer-v9__contact-copy {
    min-width: 0;
}
.ava-site-footer--v9 .ava-footer-v9__contact-copy small {
    display: block;
    margin-bottom: 4px;
    color: rgba(232, 238, 251, .62);
    font-size: 11px;
}
.ava-site-footer--v9 .ava-footer-v9__contact-copy b {
    display: block;
    color: #fff;
    font-size: 14px;
    line-height: 1.75;
    word-break: break-word;
}
.ava-site-footer--v9 .ava-footer-v9__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 42px;
    padding-top: 22px;
    border-top: 1px solid rgba(255,255,255,.14);
}
.ava-site-footer--v9 .ava-footer-v9__bottom p {
    margin: 0;
    color: rgba(232, 238, 251, .62);
    font-size: 12px;
}
.ava-site-footer--v9 .ava-footer-v9__bottom-actions {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-inline-start: auto;
}
.ava-site-footer--v9 .ava-footer-v9__legal {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
}
.ava-site-footer--v9 .ava-footer-v9__legal a {
    color: rgba(232, 238, 251, .62);
    font-size: 12px;
}
.ava-site-footer--v9 .ava-footer-v9__legal a:hover {
    color: #fff;
}
.ava-site-footer--v9 .ava-footer-v9__top {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    background: rgba(255,255,255,.06);
    color: #fff;
    transition: transform .2s ease, background .2s ease;
}

@media (max-width: 1100px) {
    .ava-site-footer--v9 .ava-footer-v9__surface {
        padding-inline: 30px;
    }
    .ava-site-footer--v9 .ava-footer-v9__brand,
    .ava-site-footer--v9 .ava-footer-v9__links,
    .ava-site-footer--v9 .ava-footer-v9__contact {
        padding-inline: 26px;
    }
    .ava-site-footer--v9 .ava-footer-v9__brand {
        padding-inline-start: 0;
    }
    .ava-site-footer--v9 .ava-footer-v9__contact {
        padding-inline-end: 0;
    }
}

@media (max-width: 900px) {
    .ava-site-footer--v9 {
        margin-top: 148px;
    }
    .ava-site-footer--v9 .ava-footer-v9__cta {
        width: min(760px, calc(100% - 36px));
        margin-top: -126px;
        padding: 38px 28px 34px;
    }
    .ava-site-footer--v9 .ava-footer-v9__surface {
        width: calc(100% - 36px);
        padding: 44px 28px 22px;
    }
    .ava-site-footer--v9 .ava-footer-v9__columns {
        grid-template-columns: 1fr 1fr;
        gap: 28px 0;
    }
    .ava-site-footer--v9 .ava-footer-v9__brand {
        grid-column: 1 / -1;
        padding-inline: 0;
        padding-bottom: 26px;
        border-bottom: 1px solid rgba(255,255,255,.12);
    }
    .ava-site-footer--v9 .ava-footer-v9__links {
        padding-inline-start: 0;
        border-inline-start: 0;
    }
}

@media (max-width: 680px) {
    .ava-site-footer--v9 {
        margin-top: 120px;
        padding-bottom: 16px;
    }
    .ava-site-footer--v9 .ava-footer-v9__cta {
        width: calc(100% - 24px);
        margin-top: -104px;
        margin-bottom: 28px;
        padding: 26px 18px 22px;
        border-radius: 24px;
    }
    .ava-site-footer--v9 .ava-footer-v9__kicker {
        font-size: 11px;
    }
    .ava-site-footer--v9 .ava-footer-v9__kicker::after {
        width: 26px;
    }
    .ava-site-footer--v9 .ava-footer-v9__cta h2 {
        margin-top: 12px;
        font-size: 25px;
        line-height: 1.5;
        letter-spacing: 0;
    }
    .ava-site-footer--v9 .ava-footer-v9__cta p {
        font-size: 12px;
        line-height: 1.9;
    }
    .ava-site-footer--v9 .ava-footer-v9__cta-actions {
        display: grid;
        grid-template-columns: 1fr;
        margin-top: 20px;
    }
    .ava-site-footer--v9 .ava-footer-v9__button {
        width: 100%;
        min-width: 0;
        min-height: 52px;
    }
    .ava-site-footer--v9 .ava-footer-v9__surface {
        width: calc(100% - 24px);
        padding: 30px 20px 18px;
        border-radius: 24px;
    }
    .ava-site-footer--v9 .ava-footer-v9__columns {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .ava-site-footer--v9 .ava-footer-v9__brand,
    .ava-site-footer--v9 .ava-footer-v9__links,
    .ava-site-footer--v9 .ava-footer-v9__contact {
        padding: 0;
        border: 0;
    }
    .ava-site-footer--v9 .ava-footer-v9__links,
    .ava-site-footer--v9 .ava-footer-v9__contact {
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid rgba(255,255,255,.12);
    }
    .ava-site-footer--v9 .ava-footer-v9__bottom {
        align-items: flex-start;
        flex-direction: column;
        margin-top: 28px;
    }
    .ava-site-footer--v9 .ava-footer-v9__bottom-actions {
        width: 100%;
        margin-inline-start: 0;
        justify-content: space-between;
    }
}



/* The footer begins exactly at the vertical center of the floating CTA. */
.ava-site-footer--v9.has-floating-cta {
    --ava-footer-v9-cta-half: 205px;
    margin-top: calc(var(--ava-footer-v9-cta-half) + 32px);
}
.ava-site-footer--v9.has-floating-cta .ava-footer-v9__container {
    position: relative;
    padding-top: calc(var(--ava-footer-v9-cta-half) + 36px);
}
.ava-site-footer--v9.has-floating-cta .ava-footer-v9__cta {
    position: absolute;
    top: 0;
    inset-inline: 0;
    width: min(1120px, calc(100% - 48px));
    margin: 0 auto;
    transform: translateY(-50%);
}
.ava-site-footer--v9.has-floating-cta .ava-footer-v9__surface {
    margin-top: 0;
}

@media (max-width: 900px) {
    .ava-site-footer--v9.has-floating-cta {
        --ava-footer-v9-cta-half: 178px;
        margin-top: calc(var(--ava-footer-v9-cta-half) + 24px);
    }
    .ava-site-footer--v9.has-floating-cta .ava-footer-v9__container {
        padding-top: calc(var(--ava-footer-v9-cta-half) + 30px);
    }
    .ava-site-footer--v9.has-floating-cta .ava-footer-v9__cta {
        width: min(760px, calc(100% - 36px));
    }
}

@media (max-width: 680px) {
    .ava-site-footer--v9.has-floating-cta {
        --ava-footer-v9-cta-half: 168px;
        margin-top: calc(var(--ava-footer-v9-cta-half) + 18px);
    }
    .ava-site-footer--v9.has-floating-cta .ava-footer-v9__container {
        padding-top: calc(var(--ava-footer-v9-cta-half) + 24px);
    }
    .ava-site-footer--v9.has-floating-cta .ava-footer-v9__cta {
        width: calc(100% - 24px);
    }
}

.ava-site-footer--v9:not(.has-floating-cta){margin-top:80px;}
