.avc-footer { position: relative; overflow: hidden; padding-top: var(--avc-space-4); color: var(--avc-footer-copy, var(--avc-surface)); background: linear-gradient(var(--avc-footer-dark, var(--avc-primary)), var(--avc-footer-purple, var(--avc-primary))); }.avc-footer__grid { display: grid; gap: var(--avc-space-3); padding-block: var(--avc-space-4); }.avc-footer__brand p, .avc-footer__column p { color: var(--avc-footer-muted, var(--avc-surface)); opacity: var(--avc-footer-opacity, .82); }.avc-footer__logo { color: inherit; font-family: var(--avc-font-heading); font-size: var(--avc-footer-logo-size, 1.4rem); font-weight: var(--avc-weight-semibold, 600); text-decoration: none; }.avc-footer h2 { color: inherit; font-size: var(--avc-footer-heading-size, 1rem); }.avc-footer ul { padding: 0; margin: 0; list-style: none; }.avc-footer__column li + li { margin-top: var(--avc-space-1); }.avc-footer a { color: inherit; text-underline-offset: var(--avc-link-offset, .16em); }.avc-footer a:hover { color: var(--avc-highlight); }.avc-footer__social { display: flex; gap: var(--avc-space-1); }.avc-footer__social a { display: grid; width: var(--avc-social-size, 2rem); height: var(--avc-social-size, 2rem); place-items: center; border: var(--avc-footer-border, 1px solid var(--avc-surface)); border-radius: var(--avc-radius); text-decoration: none; }.avc-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--avc-space-2); padding-block: var(--avc-space-2); border-top: var(--avc-footer-border, 1px solid var(--avc-surface)); font-size: var(--avc-text-sm, .875rem); }.avc-footer__bottom p { margin: 0; }.avc-footer__bottom nav { display: flex; flex-wrap: wrap; gap: var(--avc-space-2); }
.avc-footer-newsletter { display: grid; gap: var(--avc-space-2); padding: var(--avc-space-3); border: var(--avc-footer-border, 1px solid var(--avc-surface)); border-radius: var(--avc-s8-radius, 1.5rem); background: var(--avc-footer-glass, var(--avc-primary)); }.avc-footer-newsletter h2 { margin-bottom: var(--avc-space-1); }.avc-footer-newsletter p { margin: 0; opacity: var(--avc-footer-opacity, .82); }.avc-footer-newsletter__form { display: flex; flex-wrap: wrap; gap: var(--avc-space-1); }.avc-footer-newsletter input { min-height: var(--avc-control-size, 2.75rem); flex: 1 1 var(--avc-newsletter-input-width, 12rem); padding-inline: var(--avc-space-1); border: 0; border-radius: var(--avc-radius); }.avc-footer-newsletter button { min-height: var(--avc-control-size, 2.75rem); padding-inline: var(--avc-space-2); border: 0; border-radius: var(--avc-radius); color: var(--avc-surface); background: var(--avc-accent); font: inherit; font-weight: var(--avc-weight-semibold, 600); cursor: pointer; }.avc-footer-newsletter input:focus-visible, .avc-footer-newsletter button:focus-visible, .avc-footer a:focus-visible { outline: var(--avc-focus-outline, 3px solid var(--avc-highlight)); outline-offset: var(--avc-focus-offset, 3px); }
.avc-footer-newsletter__signup { min-width: 0; }
.avc-footer-newsletter__honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.avc-footer-newsletter button:disabled { opacity: .65; cursor: wait; }
.avc-footer-newsletter__message { margin-top: 12px; padding: 10px 14px; border-radius: 10px; font-size: 14px; font-weight: 600; line-height: 1.5; }
.avc-footer-newsletter__message:empty { display: none; }
.avc-footer-newsletter__message.is-success { border: 1px solid #65c29a; color: #dff9ed; background: rgb(20 112 77 / 55%); }
.avc-footer-newsletter__message.is-error { border: 1px solid #ef938e; color: #fff0ef; background: rgb(151 35 28 / 55%); }
.avc-footer-newsletter__message.is-info { border: 1px solid #8eb9ee; color: #eef6ff; background: rgb(31 83 145 / 58%); }
@media (min-width: 42rem) { .avc-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (min-width: 64rem) { .avc-footer__grid { grid-template-columns: 1.5fr repeat(3, 1fr); }.avc-footer-newsletter { grid-template-columns: 1fr 1fr; align-items: center; } }
@media (max-width: 41.99rem) { .avc-footer-newsletter__form { flex-direction: column; }.avc-footer-newsletter__form input, .avc-footer-newsletter__form button { width: 100%; flex-basis: auto; } }
