.amf3,
            .amf3 * {
                box-sizing: border-box;
            }

            .amf3 {
                --amf3-dark: #27322f;
                --amf3-darkest: #202825;
                --amf3-text: #f7f9f8;
                --amf3-muted: rgba(255, 255, 255, .65);
                --amf3-soft: #f5f7f6;
                --amf3-line: rgba(255, 255, 255, .12);

                width: 100vw;
                margin-left: calc(50% - 50vw);
                overflow: hidden;
                background: linear-gradient(105deg, #504064 0%, #315477 38%, #176b78 70%, #087e7a 100%);
                color: var(--amf3-text);
                font-family:
                    Inter,
                    -apple-system,
                    BlinkMacSystemFont,
                    "Segoe UI",
                    Roboto,
                    Arial,
                    sans-serif;
                font-size: 15px;
                line-height: 1.55;
                -webkit-font-smoothing: antialiased;
            }

            .amf3 a {
                color: inherit;
                text-decoration: none;
            }

            .amf3 svg {
                display: block;
                width: 1em;
                height: 1em;
            }

            .amf3-container {
                width: min(
                    var(--amf3-max),
                    calc(100% - 40px)
                );
                margin-inline: auto;
            }


            /* MEDIOS DE PAGO */

            .amf3-payments {
                display: grid;
                grid-template-columns: 155px minmax(0, 1fr);
                align-items: center;
                gap: 24px;
                padding: 23px 0 30px;
                border-top: 1px solid var(--amf3-line);
            }

            .amf3-payments-copy > span {
                display: block;
                margin-bottom: 5px;
                color: var(--amf3-accent);
                font-size: 10px;
                font-weight: 500;
                letter-spacing: .12em;
            }

            .amf3-payments-copy p {
                margin: 0;
                color: var(--amf3-muted);
                font-size: 11.5px;
                font-weight: 400;
                line-height: 1.4;
            }

            .amf3-payment-list {
                display: grid;
                grid-template-columns: repeat(16, minmax(52px, 1fr));
                align-items: center;
                gap: 6px;
                min-width: 0;
            }

            .amf3-payment {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                width: 100%;
                min-width: 0;
                height: 40px;
                padding: 4px 6px;
                overflow: hidden;
                color: #1d2925;
                background: #ffffff;
                border: 1px solid rgba(255, 255, 255, .14);
                border-radius: 5px;
                box-shadow: none;
            }

            .amf3-payment img {
                display: block !important;
                width: auto !important;
                max-width: 100% !important;
                height: 100% !important;
                max-height: 30px !important;
                margin: 0 !important;
                padding: 0 !important;
                object-fit: contain !important;
            }

            .amf3-payment > span {
                color: #27322f;
                font-size: 9px;
                font-weight: 500;
                line-height: 1.05;
                text-align: center;
            }

            .amf3-payment-empty {
                margin: 0;
                color: #64716c;
                font-size: 13px;
            }


            /* LOGOS DE MEDIOS DE PAGO */

            .amf3-brand--visa > span {
                color: #1434cb;
                font-size: 14px;
                font-style: italic;
                letter-spacing: -.08em;
            }

            .amf3-brand--mastercard {
                position: relative;
                min-width: 70px;
            }

            .amf3-brand--mastercard::before,
            .amf3-brand--mastercard::after {
                content: "";
                position: absolute;
                top: 5px;
                width: 18px;
                height: 18px;
                border-radius: 50%;
            }

            .amf3-brand--mastercard::before {
                left: 17px;
                background: #eb001b;
            }

            .amf3-brand--mastercard::after {
                left: 29px;
                background: #f79e1b;
                mix-blend-mode: multiply;
            }

            .amf3-brand--mastercard > span {
                padding-top: 17px;
                font-size: 7px;
            }

            .amf3-brand--amex {
                background: #2e77bc;
            }

            .amf3-brand--amex > span {
                color: #fff;
                font-size: 11px;
            }

            .amf3-brand--diners > span,
            .amf3-brand--banelco > span,
            .amf3-brand--cabal > span,
            .amf3-brand--cabal-debito > span,
            .amf3-brand--provincianet > span {
                color: #166fa9;
            }

            .amf3-brand--link > span {
                color: #75aa35;
            }

            .amf3-brand--naranja {
                background: #ff6b00;
            }

            .amf3-brand--naranja > span,
            .amf3-brand--pagofacil > span,
            .amf3-brand--rapipago > span {
                color: #fff;
            }

            .amf3-brand--nativa > span {
                color: #5d8a35;
            }

            .amf3-brand--cencosud > span {
                color: #ed1b2f;
            }

            .amf3-brand--argencard > span {
                color: #233f88;
            }

            .amf3-brand--maestro > span {
                color: #333;
            }

            .amf3-brand--visa-debito > span {
                color: #1434cb;
            }

            .amf3-brand--pagofacil,
            .amf3-brand--rapipago {
                background: #ec1c24;
            }

            /* Los WebP reemplazan por completo los logos dibujados en CSS. */
            .amf3-payment--image {
                background: #ffffff;
            }

            .amf3-payment--image::before,
            .amf3-payment--image::after {
                display: none !important;
                content: none !important;
            }


            /* CUERPO PRINCIPAL */

            .amf3-main {
                background: transparent;
                border-top: 3px solid var(--amf3-accent);
            }

            .amf3-grid {
                display: grid;
                grid-template-columns:
                    minmax(290px, 1.55fr)
                    repeat(3, minmax(135px, .72fr))
                    minmax(250px, 1.15fr);
                gap: clamp(34px, 4vw, 65px);
                padding-block: 72px 58px;
            }

            .amf3-logo {
                display: inline-flex;
                align-items: center;
                min-height: 55px;
            }

            .amf3-logo-image {
                display: block;
                width: auto;
                max-width: 230px;
                max-height: 70px;
                object-fit: contain;
            }

            .amf3-logo-text {
                color: #ffffff;
                font-size: 23px;
                font-weight: 500;
            }

            .amf3-group-signature {
                margin-top: 8px;
                color: rgba(255, 255, 255, .52);
                font-size: 11px;
                font-weight: 400;
                line-height: 1.4;
                letter-spacing: .02em;
            }

            .amf3-group-signature a {
                color: rgba(255, 255, 255, .82);
                font-weight: 600;
                letter-spacing: .06em;
                text-transform: uppercase;
                transition: color .2s ease;
            }

            .amf3-group-signature a:hover {
                color: var(--amf3-accent);
            }

            .amf3-brand > p {
                max-width: 390px;
                margin: 24px 0 0;
                color: var(--amf3-muted);
                font-size: 14px;
                font-weight: 400;
                line-height: 1.75;
            }

            .amf3-socials {
                display: flex;
                flex-wrap: wrap;
                gap: 9px;
                margin-top: 27px;
            }

            .amf3-socials a {
                display: grid;
                place-items: center;
                width: 42px;
                height: 42px;
                color: rgba(255, 255, 255, .78);
                background: rgba(255, 255, 255, .045);
                border: 1px solid var(--amf3-line);
                border-radius: 50%;
                transition:
                    color .2s ease,
                    background .2s ease,
                    border-color .2s ease,
                    transform .2s ease;
            }

            .amf3-socials a:hover {
                color: #1f2c28;
                background: var(--amf3-accent);
                border-color: var(--amf3-accent);
                transform: translateY(-2px);
            }

            .amf3-socials svg {
                width: 19px;
                height: 19px;
            }

            .amf3-column h3,
            .amf3-contact h3 {
                margin: 0 0 24px;
                color: #ffffff !important;
                font-size: 16px;
                font-weight: 500;
                line-height: 1.2;
            }

            .amf3-column ul {
                display: grid;
                gap: 13px;
                margin: 0;
                padding: 0;
                list-style: none;
            }

            .amf3-column li {
                margin: 0;
                padding: 0;
            }

            .amf3-column a {
                display: inline-block;
                color: var(--amf3-muted);
                font-size: 14px;
                font-weight: 400;
                line-height: 1.4;
                transition:
                    color .2s ease,
                    transform .2s ease;
            }

            .amf3-column a:hover {
                color: var(--amf3-accent);
                transform: translateX(3px);
            }


            /* CONTACTO */

            .amf3-contact {
                min-width: 0;
            }

            .amf3-contact-item {
                display: flex;
                align-items: center;
                gap: 13px;
                margin-bottom: 17px;
                color: rgba(255, 255, 255, .88) !important;
            }

            .amf3-contact-item > span {
                display: grid;
                place-items: center;
                flex: 0 0 42px;
                width: 42px;
                height: 42px;
                color: var(--amf3-accent);
                background: rgba(255, 255, 255, .045);
                border: 1px solid var(--amf3-line);
                border-radius: 50%;
            }

            .amf3-contact-item > span svg {
                width: 19px;
                height: 19px;
            }

            .amf3-contact-item
            > span.amf3-contact-whatsapp svg {
                fill: currentColor;
                stroke: none;
            }

            .amf3-contact-item > div {
                display: grid;
                min-width: 0;
                gap: 2px;
            }

            .amf3-contact-item small {
                color: rgba(255, 255, 255, .47);
                font-size: 10.5px;
                font-weight: 400;
            }

            .amf3-contact-item strong {
                overflow: hidden;
                color: rgba(255, 255, 255, .9) !important;
                font-size: 13.5px;
                font-weight: 400;
                line-height: 1.4;
                text-overflow: ellipsis;
            }

            a.amf3-contact-item:hover strong {
                color: var(--amf3-accent) !important;
            }


            /* CATEGORÍAS */

            .amf3-categories {
                display: grid;
                grid-template-columns: 115px minmax(0, 1fr);
                align-items: start;
                gap: 25px;
                padding: 24px 0 34px;
                border-top: 1px solid var(--amf3-line);
            }

            .amf3-categories > span {
                padding-top: 8px;
                color: #ffffff;
                font-size: 14px;
                font-weight: 500;
            }

            .amf3-categories > div {
                display: flex;
                flex-wrap: wrap;
                gap: 8px;
            }

            .amf3-categories a {
                display: inline-flex;
                align-items: center;
                min-height: 34px;
                padding: 0 13px;
                color: rgba(255, 255, 255, .67);
                background: rgba(255, 255, 255, .035);
                border: 1px solid var(--amf3-line);
                border-radius: 999px;
                font-size: 12.5px;
                font-weight: 400;
                transition:
                    color .2s ease,
                    background .2s ease,
                    border-color .2s ease;
            }

            .amf3-categories a:hover {
                color: #20302b;
                background: var(--amf3-accent);
                border-color: var(--amf3-accent);
            }


            /* INFERIOR */

            .amf3-bottom {
                color: rgba(255, 255, 255, .52);
                background: transparent;
                border-top: 1px solid rgba(255, 255, 255, .08);
            }

            .amf3-bottom-inner {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 25px;
                min-height: 77px;
            }

            .amf3-bottom p {
                margin: 0;
                font-size: 11.5px;
                font-weight: 400;
            }

            .amf3-legal-copy {
                flex: 1 1 720px;
                min-width: 0;
                color: rgba(255, 255, 255, .52);
                line-height: 1.7;
            }

            .amf3-legal-copy > span {
                display: inline-block;
                margin-inline: 4px;
                color: rgba(255, 255, 255, .28);
            }

            .amf3-bottom-inner > div,
            .amf3-bottom-actions {
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                justify-content: flex-end;
                gap: 14px 22px;
            }

            .amf3-bottom a {
                color: rgba(255, 255, 255, .52);
                font-size: 11.5px;
                font-weight: 400;
            }

            .amf3-bottom a:hover {
                color: var(--amf3-accent);
            }

            .amf3-data-fiscal {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                flex: 0 0 auto;
                padding: 0;
                line-height: 0;
            }

            .amf3-data-fiscal img {
                display: block;
                width: auto;
                height: 44px;
                max-width: 100%;
                margin: 0;
                border: 0;
                border-radius: 3px;
                background: #ffffff;
            }

            .amf3-data-fiscal:hover {
                opacity: .9;
            }

            .amf3-regret-row {
                display: flex;
                align-items: center;
                justify-content: center;
                padding: 0 0 22px;
            }

            .amf3-regret-button {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-height: 42px;
                padding: 0 20px;
                border: 1px solid rgba(66, 215, 185, .7);
                border-radius: 7px;
                background: rgba(66, 215, 185, .08);
                color: var(--amf3-accent) !important;
                font-size: 12px !important;
                font-weight: 600 !important;
                line-height: 1.2;
                text-align: center;
                transition:
                    color .2s ease,
                    background .2s ease,
                    border-color .2s ease,
                    transform .2s ease;
            }

            .amf3-regret-button:hover {
                color: #20302b !important;
                background: var(--amf3-accent);
                border-color: var(--amf3-accent);
                text-decoration: none;
                transform: translateY(-1px);
            }


            /* RESPONSIVE · v3.7 */

            @media (max-width: 1180px) {
                .amf3-payment-list {
                    grid-template-columns: repeat(8, minmax(68px, 1fr));
                }

                /*
                 * Tablet grande:
                 * marca + tres columnas de navegación en la primera fila.
                 * Contacto ocupa una fila completa debajo, sin quedar
                 * desbalanceado comenzando desde la segunda columna.
                 */
                .amf3-grid {
                    grid-template-columns:
                        minmax(250px, 1.25fr)
                        repeat(3, minmax(125px, .75fr));
                    gap: 42px 28px;
                }

                .amf3-contact {
                    grid-column: 1 / -1;
                    display: grid;
                    grid-template-columns:
                        repeat(4, minmax(0, 1fr));
                    gap: 0 24px;
                    min-width: 0;
                }

                .amf3-contact h3 {
                    grid-column: 1 / -1;
                }

                /*
                 * La nueva línea legal es larga. Desde tablet pasa a una
                 * composición vertical para que no comprima ni el QR ni
                 * los enlaces.
                 */
                .amf3-bottom-inner {
                    align-items: flex-start;
                    flex-direction: column;
                    justify-content: center;
                    gap: 14px;
                    padding-block: 18px 12px;
                }

                .amf3-legal-copy {
                    flex: none;
                    width: 100%;
                    overflow-wrap: anywhere;
                }

                .amf3-bottom-actions {
                    width: 100%;
                    justify-content: flex-start;
                }
            }


            @media (max-width: 860px) {
                .amf3-container {
                    width: min(
                        var(--amf3-max),
                        calc(100% - 28px)
                    );
                }

                .amf3-payments {
                    grid-template-columns: 1fr;
                    gap: 13px;
                    padding-block: 23px 26px;
                }

                .amf3-payments-copy {
                    max-width: 520px;
                }

                .amf3-payment-list {
                    display: flex;
                    flex-wrap: nowrap;
                    width: 100%;
                    padding-bottom: 7px;
                    overflow-x: auto;
                    overscroll-behavior-inline: contain;
                    scroll-snap-type: x proximity;
                    scrollbar-width: none;
                }

                .amf3-payment-list::-webkit-scrollbar {
                    display: none;
                }

                .amf3-payment {
                    flex: 0 0 88px;
                    scroll-snap-align: start;
                }

                /*
                 * Tablet:
                 * las tres columnas de links quedan parejas en una misma
                 * fila; marca y contacto ocupan todo el ancho.
                 */
                .amf3-grid {
                    grid-template-columns:
                        repeat(3, minmax(0, 1fr));
                    gap: 36px 22px;
                    padding-block: 52px 42px;
                }

                .amf3-brand,
                .amf3-contact {
                    grid-column: 1 / -1;
                }

                .amf3-contact {
                    grid-template-columns:
                        repeat(2, minmax(0, 1fr));
                    gap: 0 24px;
                }

                .amf3-categories {
                    grid-template-columns: 1fr;
                    gap: 12px;
                }

                .amf3-categories > span {
                    padding-top: 0;
                }
            }


            @media (max-width: 680px) {
                /*
                 * Teléfono grande / tablet angosta:
                 * dos columnas para navegación y la última columna legal
                 * ocupa el ancho completo para no quedar "huérfana".
                 */
                .amf3-grid {
                    grid-template-columns:
                        repeat(2, minmax(0, 1fr));
                    gap: 34px 20px;
                }

                .amf3-grid > .amf3-column:last-of-type {
                    grid-column: 1 / -1;
                }

                .amf3-contact {
                    grid-template-columns: 1fr;
                }
            }


            @media (max-width: 580px) {
                .amf3-container {
                    width: calc(100% - 24px);
                }

                /*
                 * Mobile real: una sola columna.
                 * Evita textos comprimidos y columnas desparejas.
                 */
                .amf3-grid {
                    grid-template-columns: 1fr;
                    gap: 30px;
                    padding-block: 42px 34px;
                }

                .amf3-brand,
                .amf3-contact,
                .amf3-grid > .amf3-column:last-of-type {
                    grid-column: 1;
                }

                .amf3-logo-image {
                    max-width: min(205px, 80vw);
                    max-height: 62px;
                }

                .amf3-brand > p {
                    max-width: none;
                    font-size: 13.5px;
                }

                .amf3-column h3,
                .amf3-contact h3 {
                    margin-bottom: 15px;
                    font-size: 15px;
                }

                .amf3-column ul {
                    gap: 10px;
                }

                .amf3-column a {
                    font-size: 13.5px;
                }

                .amf3-contact {
                    display: block;
                }

                .amf3-contact-item {
                    margin-bottom: 14px;
                }

                .amf3-contact-item strong {
                    overflow: visible;
                    text-overflow: clip;
                    white-space: normal;
                    overflow-wrap: anywhere;
                }

                .amf3-categories {
                    padding-bottom: 27px;
                }

                .amf3-categories > div {
                    flex-wrap: nowrap;
                    margin-inline: -12px;
                    padding-inline: 12px;
                    padding-bottom: 6px;
                    overflow-x: auto;
                    overscroll-behavior-inline: contain;
                    scrollbar-width: none;
                }

                .amf3-categories > div::-webkit-scrollbar {
                    display: none;
                }

                .amf3-categories a {
                    flex: 0 0 auto;
                }

                .amf3-bottom-inner {
                    align-items: center;
                    gap: 17px;
                    padding-block: 20px 14px;
                    text-align: center;
                }

                .amf3-legal-copy {
                    width: 100%;
                    font-size: 10.5px !important;
                    line-height: 1.65;
                    text-align: center;
                }

                .amf3-bottom-actions {
                    width: 100%;
                    align-items: center;
                    justify-content: center;
                    gap: 11px 17px;
                }

                .amf3-bottom-actions > a:not(.amf3-data-fiscal) {
                    font-size: 11px;
                }

                .amf3-data-fiscal {
                    flex-basis: 100%;
                }

                .amf3-data-fiscal img {
                    height: 48px;
                }

                .amf3-regret-row {
                    justify-content: center;
                    padding: 7px 0 22px;
                }

                .amf3-regret-button {
                    width: min(100%, 320px);
                    min-height: 44px;
                }
            }


            @media (max-width: 380px) {
                .amf3-container {
                    width: calc(100% - 20px);
                }

                .amf3-socials a {
                    width: 39px;
                    height: 39px;
                }

                .amf3-payment {
                    flex-basis: 82px;
                }

                .amf3-bottom-actions {
                    flex-direction: column;
                }

                .amf3-data-fiscal {
                    flex-basis: auto;
                }
            }