@media screen and (max-width: 1760px) {
    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(4, minmax(320px, 320px));
        justify-content: center;
    }
}

@media screen and (max-width: 1536px) {
    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(3, minmax(320px, 320px));
        justify-content: center;
    }
    
    #s5 .localizacao .local {
        display: flex;
        flex-direction: column;
        gap: 4rem;
        align-items: center;
    }
}

@media screen and (max-width: 1280px) {
    .header {
        max-height: var(--max-header-height);
    }

    .header .header-container {
        display: flex;
        padding: 2.5rem 8rem;
        justify-content: space-between;
        align-items: center;
    }
    
    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(3, minmax(320px, 320px));
        justify-content: center;
    }
    
    .main-s3 .ouro-fino,
    .servicos-s1 .ouro-fino {
        display: flex;
        width: 100%;
        max-width: 100rem;
        margin: 4rem auto;
    }

    #s5 .localizacao .local {
        display: flex;
        flex-direction: column;
        gap: 4rem;
        align-items: center;
    }
}

@media screen and (max-width: 1080px) {
    html {
        /* 1rem = 9px (9 / 16 = 56.25%) */
        font-size: 56.25%;
    }

    .header {
        max-height: var(--max-header-height);
    }

    .header .header-container {
        display: flex;
        padding: 2.25rem 8rem;
        align-items: center;
        justify-content: space-between;
    }

    .header .header-container a .logo {
        width: 95%;
        height: auto;
    }

    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(2, minmax(320px, 320px));
        justify-content: center;
    }

    .main-s2 .ouro,
    .produtos-s1 .ouro,
    .main-s3 .ouro-fino,
    .servicos-s1 .ouro-fino,
    .main-s4 .moedas-estrangeiras,
    .produtos-s2 .moedas-estrangeiras,
    .produtos-s3 .vtm {
        padding: 4rem 2rem;
    }

    .main-s1 .intro .selecao-btn {
        display: flex;
        position: relative;
        flex-direction: column;
    }

    .footer .footer-container {
        display: flex;
        flex-direction: column;
        gap: 4rem;
        text-align: center;
    }

    .footer .footer-container .spotlight {
        max-width: 100%;
        align-items: center;
    }

    .footer .footer-container .spotlight .spotlight-text .slogan {
        text-align: center;
    }

    .footer .footer-container .footer-nav {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 3rem;
    }

    .footer .footer-container .footer-nav li ul {
        display: flex;
        align-items: center;
    }
}

@media screen and (max-width: 992px) {
    .header {
        max-height: var(--max-header-height);
    }

    .header .header-container {
        display: flex;
        align-items: center;
        padding: 2.25rem 4rem;
        justify-content: space-between;
    }

    .header .header-container a .logo {
        width: 95%;
        height: auto;
    }

    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(2, minmax(320px, 320px));
        justify-content: center;
    }
    
    .main-s3 .ouro-fino,
    .servicos-s1 .ouro-fino,
    .main-s4 .moedas-estrangeiras,
    .produtos-s2 .moedas-estrangeiras,
    .produtos-s3 .vtm {
        display: flex;
        width: 100%;
        max-width: 75rem;
        margin: 5rem auto;
        padding: 1.5rem 1rem;
    }
}

@media screen and (max-width: 768px) {
    html {
        font-size: 50%;
    }

    .header {
        max-height: var(--max-header-height);
    }

    .header .header-container {
        display: flex;
        padding: 1.75rem 2rem;
        align-items: center;
        justify-content: space-between;
    }
    
    .header .header-container a .logo {
        width: 90%;
        height: auto;
    }


    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(1, minmax(320px, 320px));
        justify-content: center;
    }

    .main-s3 .ouro-fino,
    .servicos-s1 .ouro-fino,
    .main-s4 .moedas-estrangeiras,
    .produtos-s2 .moedas-estrangeiras,
    .produtos-s3 .vtm {
        display: flex;
        width: 100%;
        max-width: 75rem;
        margin: 5rem auto;
    }

    .main-s1 .intro .bemvindo {
        font-size: 3.2rem;
    }

    .main-s1 .intro .selecao-btn {
        display: flex;
        flex-direction: column;
        margin: 3rem 0;
    }

    .main-s3 .ouro-fino .ouro-fino-descricao,
    .servicos-s1 .ouro-fino .ouro-fino-descricao,
    .main-s4 .moedas-estrangeiras .moedas-estrangeiras-descricao,
    .produtos-s2 .moedas-estrangeiras .moedas-estrangeiras-descricao {
        margin: 2rem;
    }

    #s5 .localizacao .local {
        display: flex;
        flex-direction: column;
        gap: 4rem;
        align-items: center;
    }
}

@media screen and (max-width: 680px) {
    html {
        font-size: 43.75%;
    }

    .header {
        max-height: var(--max-header-height);
    }

    .header .header-container {
        display: flex;
        padding: 1.75rem 2rem;
        align-items: center;
        justify-content: space-between;
    }

    .header .header-container a .logo {
        width: 80%;
        height: auto;
    }

    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(1, minmax(320px, 320px));
        justify-content: center;
    }
    
    .main-s3 .ouro-fino,
    .servicos-s1 .ouro-fino,
    .main-s4 .moedas-estrangeiras,
    .produtos-s2 .moedas-estrangeiras,
    .produtos-s3 .vtm {
        display: flex;
        max-height: calc(89vh - var(--max-header-height));
        height: 100%;
        width: 100%;
        max-width: 60rem;
    }

    .servicos-s2 .remessas {
        width: 100%;
        max-width: 60rem;
        height: auto;
    }

    .servicos-s2 .remessas img {
        width: 90%;
        height: auto;
        margin-bottom: 2rem;
    }

    .main-s4 .moedas-estrangeiras .moedas-estrangeiras-lista,
    .produtos-s2 .moedas-estrangeiras .moedas-estrangeiras-lista {
        width: 75%;
    }

    .produtos-s3 .vtm {
        width: 100%;
        max-width: 60rem;
        height: 100%;
        margin: 5rem auto;
    }

    .produtos-s3 .vtm .vtm-lista {
        width: 50%;
    }

    .servicos-s3 .seguro-viagem {
        width: 100%;
        max-width: 60rem;
        height: 100%;
        margin: 5rem auto;
    }
    
    #s5 .localizacao .local img {
        max-width: 60rem;
        max-height: auto;
        width: auto;
        height: auto;
    }
}

@media screen and (max-width: 545px) {
    html {
        font-size: 43.75%;
    }

    .header {
        max-height: var(--max-header-height);
    }

    .header .header-container {
        display: flex;
        padding: 1.75rem 2rem;
        align-items: center;
        justify-content: space-between;
    }

    .header .header-container a .logo {
        width: 80%;
        height: auto;
    }

    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(1, minmax(320px, 320px));
        justify-content: center;
    }
    
    .main-s3 .ouro-fino,
    .servicos-s1 .ouro-fino,
    .main-s4 .moedas-estrangeiras,
    .produtos-s2 .moedas-estrangeiras,
    .produtos-s3 .vtm {
        display: flex;
        max-height: calc(89vh - var(--max-header-height));
        height: 100%;
        width: 100%;
        max-width: 40rem;
    }

    .main-s4 .moedas-estrangeiras .moedas-estrangeiras-lista,
    .produtos-s2 .moedas-estrangeiras .moedas-estrangeiras-lista {
        width: 90%;
    }

    .servicos-s2 .remessas {
        width: 100%;
        max-width: 50rem;
        height: auto;
    }

    .servicos-s2 .remessas img {
        width: 90%;
        height: auto;
        margin-bottom: 2rem;
    }

    .produtos-s3 .vtm {
        width: 100%;
        max-width: 50rem;
        height: 100%;
        margin: 5rem auto;
    }

    .servicos-s3 .seguro-viagem {
        width: 100%;
        max-width: 50rem;
        height: 100%;
        margin: 5rem auto;
    }
    
    #s5 .localizacao .local img {
        max-width: 40rem;
        max-height: auto;
        width: auto;
        height: auto;
    }
}

@media screen and (max-width: 480px) {
    html {
        font-size: 36.5%;
    }

    .header {
        max-height: var(--max-header-height);
    }

    .header .header-container {
        display: flex;
        padding: 1.25rem 2rem;
        align-items: center;
        justify-content: space-between;
    }

    .header .header-container a .logo {
        width: 75%;
        height: auto;
    }

    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(1, minmax(320px, 320px));
        justify-content: center;
    }
    
    .main-s3 .ouro-fino,
    .servicos-s1 .ouro-fino,
    .main-s4 .moedas-estrangeiras,
    .produtos-s2 .moedas-estrangeiras,
    .produtos-s3 .vtm {
        display: flex;
        max-height: calc(89vh - var(--max-header-height));
        height: 100%;
        width: 100%;
        max-width: 60rem;
    }

    .main-s4 .moedas-estrangeiras .moedas-estrangeiras-lista,
    .produtos-s2 .moedas-estrangeiras .moedas-estrangeiras-lista {
        width: 90%;
    }

    .servicos-s2 .remessas {
        width: 100%;
        max-width: 60rem;
        height: auto;
    }

    .servicos-s2 .remessas img {
        width: 90%;
        height: auto;
        margin-bottom: 2rem;
    }

    .produtos-s3 .vtm {
        width: 100%;
        max-width: 60rem;
        height: 100%;
        margin: 5rem auto;
    }

    .servicos-s3 .seguro-viagem {
        width: 100%;
        max-width: 60rem;
        height: 100%;
        margin: 5rem auto;
    }

    #s5 .localizacao .local img {
        max-width: 60rem;
        max-height: auto;
        width: auto;
        height: auto;
    }
}

@media screen and (max-width: 400px) {
    html {
        font-size: 36.5%;
    }

    .header {
        max-height: var(--max-header-height);
    }

    .header .header-container {
        display: flex;
        padding: 1.5rem 2rem;
        align-items: center;
        justify-content: space-between;
    }

    .header .header-container a .logo {
        width: 70%;
        height: auto;
    }

    .main-s2 .ouro .ouro-lista,
    .produtos-s1 .ouro .ouro-lista {
        grid-template-columns: repeat(1, minmax(320px, 320px));
        justify-content: center;
    }
    
    .main-s3 .ouro-fino,
    .servicos-s1 .ouro-fino,
    .main-s4 .moedas-estrangeiras,
    .produtos-s2 .moedas-estrangeiras,
    .produtos-s3 .vtm {
        display: flex;
        max-height: calc(89vh - var(--max-header-height));
        height: 100%;
        width: 100%;
        max-width: 50rem;
    }

    .main-s4 .moedas-estrangeiras .moedas-estrangeiras-lista,
    .produtos-s2 .moedas-estrangeiras .moedas-estrangeiras-lista {
        width: 90%;
    }

    .servicos-s2 .remessas {
        width: 100%;
        max-width: 50rem;
        height: auto;
    }

    .servicos-s2 .remessas img {
        width: 90%;
        height: auto;
        margin-bottom: 2rem;
    }

    .produtos-s3 .vtm {
        width: 100%;
        max-width: 40rem;
        height: 100%;
        margin: 5rem auto;
    }

    .produtos-s3 .vtm .vtm-lista {
        width: 80%;
    }

    .servicos-s3 .seguro-viagem {
        width: 100%;
        max-width: 50rem;
        height: 100%;
        margin: 5rem auto;
    }

    #s5 .localizacao .local img {
        max-width: 50rem;
        max-height: auto;
        width: auto;
        height: auto;
    }
}