@font-face {
    font-family: "Oswald";
    src: url("../../../fonts/oswald.ttf");
}

@font-face {
    font-family: "Lato";
    src: url("../../../fonts/lato-regular.ttf");
}

@font-face {
    font-family: "Lato Italic";
    src: url("../../../fonts/lato-italic.ttf");
}

@font-face {
    font-family: "Lexend";
    src: url("../../../fonts/lexend.ttf");
}

@font-face {
    font-family: "Gantari";
    src: url("../../../fonts/gantari.ttf");
}
*, a {
    font-family: "Lato";
    color:  var(--font-color);
}

body {
    overflow-x: hidden;
    background-color: var(--color-bg);
}

main {
    position: relative;
    overflow-x: hidden;
}

header {
    padding: 1rem;
}
i{
    color: var(--accent-color);
}
section {
    width: 90%;
    margin-block: 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}

p {
    font-family: "Lexend";
    font-size: 1.25rem;
    font-weight: 300;
    margin-inline: 1rem;
    text-align: center;
}
.dynamic-selected .c_name{
    display: none;
}
.dynamic-select .fa-solid.fa-caret-down{
    display: none !important;
}
button {
    border: 0;
    background-color: transparent;
    cursor: pointer;
}

section:not(:first-of-type),footer {
    justify-content: center;
    margin-top: 4rem;
}

section:first-of-type {
    margin-top: 0.5rem;
}

footer {
    position: relative;
    display: flex;
    flex-direction: row;
    gap: 3rem;
    margin-inline: 2rem;
    width: -webkit-fill-available;
    padding-block: 2rem;
}

footer i {
    font-size: 1.5rem;
}

footer::after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0.2rem;
    background: var(--accent-color-bg);
    z-index: 1000;
}

footer a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem;
    transition: all 0.2s;
    text-decoration: none;
}

footer a span, .link span {
    text-decoration: underline;
    color: var(--font-color-dark);
}

footer a:hover {
    background-color: var(--color-link-hover);
    box-shadow: 0px 0px 5px 5px var(--color-link-hover);
}

h1 {
    font-family: "Gantari";
    font-weight: 500;
    font-size: clamp(32px, 3vw, 64px);
    letter-spacing: -0.05rem;
    margin-inline: 1rem;
    text-align: center;
    scale: 0.9 0.85;
}

.pill {
    background-color: var(--accent-color);
    padding: 0 0.3rem;
    border-radius: 0.75rem;
}

h2 {
    position: relative;
    letter-spacing: 0.05rem;
    font-size: clamp(32px, 4vw, 64px);
    text-align: center;
    font-family: "Gantari";
    font-weight: 600;
    margin: 1rem;
}
h2::after{
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    background-image: linear-gradient(0deg, var(--color-bg) 5%, transparent 85%);
}
.catchphrase{
    font-size: 1.2rem;
    font-weight: 300;
    position: relative;
    padding: 1rem;
    padding-bottom: 1.5rem;
    text-align: center;
    color: var(--font-color-dark);
}

.catchphrase::after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.2rem;
    background: var(--accent-color-bg);
    z-index: 1000;
}
.catch{
    overflow: hidden;
    position: relative;
}
.catch::before{
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: var(--accent-color);
    opacity: .5;
    filter: blur(50px);
    border-radius: 100%;
    height: 300px;
    overflow: visible;
    width: 50%;
    left: 50%;
    top: 20%;
    transform: translate(-50%, 50%);
}
#header-logo{
    display: grid;
    place-items: center;
}
#header-logo img{
    width: calc(8rem + 8%);
}

.button-cta {
    position: relative;
    text-align: center;
    
    font-family: 'Lexend';
    font-size: 1.25rem;
    font-weight: 500;
    letter-spacing: -0.05rem;
    
    display: inline-flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    padding-inline: 1.5rem;
    background-color: var(--accent-color);
    background: var(--gradient-buttons);
    border-radius: 0.5rem;
    transition: all 0.5s;
    margin-block: 2rem;
    cursor: pointer;
    box-shadow: 0px 0px 6px 1px inset var(--color-bg);

    outline: 6px solid var(--border-color);
    white-space: nowrap;
}
.button-cta, .button-cta i{
    color: var(--font-color-buttons);
}
.button-cta:hover {
    scale: 1.05;
    box-shadow: 0px 0px 0px 0px inset transparent;
    outline: 6px solid var(--border-color);
}
.span-cta{
    display: flex;
    gap: 0.5rem;
}
section .button-cta{
    max-width: 85%;
}
@media screen and (max-width: 400px) {
    section .button-cta{
        max-width: 90%;
    }
}
section .button-cta, .modal-content button[type="submit"]{
    font-size: clamp(16px, 3vw, 24px);
}

#about {
    padding: 1rem;
    min-height: 30svh;

    position: relative;
    overflow: hidden;
    z-index: 1;
    gap: 3rem;
}

#exp {
    padding-bottom: 3rem;
    border-radius: 1rem;
    margin-inline: 1rem;
    padding: 0.3rem;
}
#exp .clientes{
    padding-bottom: 1rem;
}
.cliente {
    margin-top: 4rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap: 1rem;
    opacity: 0;
    outline: 1px solid var(--border-color);
    border-radius: 1rem;
}
.cliente-fotos {
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: stretch;
    gap: 1rem;
    width: 100%;
    padding: 1rem;
}

.cliente-fotos img:not(.chevron) {
    width: 45%;
    border-radius: 1rem;
}
.fa-chevron-right{
    font-size: calc(0.5rem + 2vw);
    translate: -10% -50%;
    position: absolute;
    top: 50%;
    z-index: 999;
    color: var(--accent-color)
}

#pat {
    border-radius: 1rem;
    outline: var(--border);
    overflow: hidden;
}

#pat article {
    position: relative;
    display: inline-flex;
    margin-top: 1rem;
    transform: translateY(5%);
}

.pat-img {
    position: relative;
    width: 50%;
    overflow: hidden;
}

.pat-img:first-of-type {
    border-bottom-left-radius: 1.5rem;
}

.pat-img:last-of-type {
    border-bottom-right-radius: 1.5rem;
}

.pat-img::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 2%;
    width: 15%;
    background: linear-gradient(90deg, var(--color-bg) 0%, var(--color-bg) 30%, rgba(67, 67, 67, 0) 100%);
    z-index: 999;
    transform: scaleY(1.03);
}

.pat-img:first-of-type::after {
    right: -2%;
    rotate: 180deg;
}

.pat-img:last-of-type::after {
    left: -2%;
}

#pat p {
    position: absolute;
    top: 40%;
    left: 50%;
    translate: -50% -50%;
    z-index: 999;
    width: 40%;
    text-align: center;

    padding: 0.5rem;
    padding-inline: 1rem;
    background-color: var(--color-backdrop);
    box-shadow: 0px 0px 10px 5px var(--color-backdrop);
    color: black;
    font-weight: 500;
}

#hablemos {
    border-radius: 1rem;
    margin-inline: 2rem;
    border: 1px solid var(--border-color);
}

#hablemos svg {
    margin-top: 2rem;
    width: 30%;
}
svg path{
    fill: var(--accent-color) !important;
}
#hablemos .button-cta {
    margin-block: 3rem;
}

#hablemos p {
    font-weight: 300;
}

#button-fixed {
    font-size: 1.5rem;
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    display: inline-flex;
    gap: 0.5rem;
    padding: 0.5rem;
    padding-inline: 1rem;
    border-radius: 2rem;
    z-index: 1000;
    width: auto !important;
    border: var(--border);
    margin: 1rem;
    outline: none;
}
#button-fixed i {
    width: 1.5rem;
}
#button-fixed::after{
    display: none;
}

@media screen and (max-width: 800px) {
    #clientes-section {
        overflow-x: hidden;
    }
    .cliente{
        scale: 0.95;
    }
    .cliente:first-of-type {
        margin-top: 1rem;
    }
    #hablemos {
        margin-inline: 1rem;
    }

    #hablemos h2 {
        margin: 1.5rem;
    }

    .cliente {
        gap: 0;
    }

    .cliente i {
        width: 5%;
        scale: 2;
    }

    #button-fixed {
        bottom: 0.5rem;
        right: 0.5rem;
    }

    #pat article {
        flex-direction: column;
    }
    #pat p {
        top: 45%;
        width: 90%;
    }
    .pat-img {
        width: 100%;
    }
    .pat-img:first-of-type{
        border-radius: 0;
    }
    .pat-img:first-of-type::after {
        inset: unset;
    }
}

@media screen and (min-width: 1200px) {
    section {
        width: 70%;
    }
    .catchphrase::after {
        width: 70%;
        transform: translate(20%, 0);
    }

    #about,#hablemos {
        height: auto;
        width: 50%;
    }

    #exp p {
        width: 60%;
    }

    header {
        width: 100%;
    }
    .cliente{
        scale: 0.95;
    }
}
#clientes-section .cliente:first-of-type{
    margin-top: 1.5rem;
}
.brand-border{
    border: 0;
    background-image: var(--accent-bg-image);
    padding: 0.25rem;
    border: var(--border);
    border-radius: 1rem;
}
.brand-bg{
    border-radius: 1rem;
    background-color: var(--color-bg);
}
.section-pill{
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    margin-top: 2rem;
    border-radius: 1rem;
    background: linear-gradient(90deg, rgb(28, 28, 28) 10%, var(--color-bg), rgb(28, 28, 28), var(--color-bg) 100%);
    outline: 6px solid var(--border-color);
}
.button-cta::after{
    border-radius: 0.4rem;
}
#exp .cliente:first-of-type{
    outline: none;
}