.navbar {
    padding-inline: 30px;
    backdrop-filter: blur(20px);
}

.nav-link {
    letter-spacing: 1px;
    color: rgb(249, 69, 0);
    font-family: "Playfair Display", serif;
    font-size: 22px;
    font-weight: 900;
    position: relative;
}

.nav-link:hover, .nav-link.active {
    color: rgb(255, 253, 180);

}

@media (min-width: 991px) {
    .nav-link::before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 2px;
        background-color: rgb(255, 253, 180);
        visibility: hidden;
        transition: 0.3s ease-in-out;
    }
}

.nav-link:hover::before, .nav-link.active::before {
    width: 100%;
    visibility: visible;
}

.navbar-toggler {
    border: none;
    font-size: 1.25rem;
}

.navbar-toggler:focus, .btn-close:focus {
    box-shadow: none;
    outline: none;
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28249, 69, 0, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.offcanvas, .offcanvas-header, .offcanvas-end {
    background-color: rgb(35, 0, 63);
}

.offcanvas-end  {
    height: 100vh;
}

.btn-close {
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23F94500'><path d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/></svg>");}

body {
    font-family: "Playfair Display", serif;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    background: linear-gradient(to top right, black, rgb(35, 0, 63));
    letter-spacing: 1px;
}

/*rgb(188, 172, 206)*/

nav {
    height: 100px;
    border-bottom: solid 0.5px rgb(249, 69, 0);
}

h2 {
    width: fit-content;
    font-family: "Playfair Display", serif;
    font-weight: bold;
    font-size: 70px;
    color: rgb(249, 69, 0);
}

h3 {
    font-family: "Playfair Display", serif;
    font-weight: bold;
    font-size: 28px;
    color: rgb(255, 231, 213);
}

p {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    color: rgb(255, 231, 213);
}

#contenidoGeneral {
    padding-inline: 10%;
}

.typed-cursor {
    color: rgb(249, 69, 0);
    font-family: "Playfair Display", serif;
    font-style: italic;
    font-weight: 800;
    font-size: 80px;
    letter-spacing: 2px;
}

#typed {
    color: rgb(249, 69, 0);
    font-family: "Playfair Display", serif;
    font-style: italic;
    font-weight: 800;
    font-size: 80px;
    letter-spacing: 2px;
}

#imgSobremi {
    height: 400px;
}

.mario {
    padding-top: 280px;
    view-timeline-name: --x;
    view-timeline-axis: block;
    animation-timeline: --x;
    animation-name: show;
    animation-range: entry 5% cover 15%;
    animation-fill-mode: both;
}

.sobreMi {
    margin-top: 150px;
    align-content: center;
    view-timeline-name: --x;
    view-timeline-axis: block;
    animation-timeline: --x;
    animation-name: show;
    animation-range: entry 5% cover 15%;
    animation-fill-mode: both;
}

.porfolio {
    margin-top: 150px;
    align-content: center;
    view-timeline-name: --x;
    view-timeline-axis: block;
    animation-timeline: --x;
    animation-name: show;
    animation-range: entry 5% cover 15%;
    animation-fill-mode: both;
}

.educacion {
    margin-top: 150px;
    align-content: center;
    view-timeline-name: --x;
    view-timeline-axis: block;
    animation-timeline: --x;
    animation-name: show;
    animation-range: entry 5% cover 15%;
    animation-fill-mode: both;
}

.habilidades {
    margin-top: 150px;
    align-content: center;
    view-timeline-name: --x;
    view-timeline-axis: block;
    animation-timeline: --x;
    animation-name: show;
    animation-range: entry 5% cover 5%;
    animation-fill-mode: both;
}

.contacto {
    margin-top: 150px;
    align-content: center;
    view-timeline-name: --x;
    view-timeline-axis: block;
    animation-timeline: --x;
    animation-name: show;
    animation-range: entry 5% cover 15%;
    animation-fill-mode: both;
}

.contactame {
    margin-top: 65px;
}

.gmail {
    margin-top: 40px;
}

.mail {
    border: solid 2px;
    border-radius: 12px;
    border-color: rgb(255, 253, 180);
    width: fit-content;
    background-color: rgb(25, 15, 34);
    transition: .3s;
    padding-left: 15px;
    padding-right: 150px;
    padding-top: 5px;
    padding-bottom: 0px;
}

@media (max-width: 560px) {

    #typed {
        font-size: 65px;
        line-height: 5px;
    }

    #contenedorTyped {
        height: 150px;
        padding-bottom: 10px;
    }

    h2 {
        font-size: 50px;
    }

    h3 {
        font-size: 24px;
    }

    p {
        font-size: 18px;
    }

    .resaltadoOtros {
        font-size: 20px;
    }

    #imgSobremi {
        height: 360px;
    }

    .mail {
        padding-left: 10px;
        padding-right: 15px;
        margin-bottom: 7px;
    }
}

.mensajeFooter {
    margin-top: 120px;
    margin-bottom: 180px;
}

#aEspecial {
    width: fit-content;
    display: inline;
}

.bi {
    padding: 5px;
    font-size: 32px;
    color: rgb(249, 69, 0);
}

.bi:hover {
    color: rgb(255, 253, 180);
}

.resaltadoEnlaces {
    color: rgb(255, 253, 180);
}

.resaltadoOtros {
    color: rgb(249, 69, 0);
    font-family: "Playfair Display", serif;
    font-weight: bold;
    font-size: 28px;
}

.resaltadoDate {
    color: rgb(255, 253, 180);
    font-size: 18px;
}

.cursando::before {
    color: rgb(249, 69, 0);
    font-family: "Playfair Display", serif;
    font-weight: bold;
    font-size: 16px;
    content: "-En curso- ";
}

.finalizado::before {
    color: rgb(249, 69, 0);
    font-family: "Playfair Display", serif;
    font-weight: bold;
    font-size: 16px;
}

.botonCv {
    background-color: rgb(255, 253, 180);
    border-radius: 7px;
    border: none;
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 25px;
    padding-right: 25px;
    width: fit-content;
    font-family: "Playfair Display", serif;
    font-weight: 700;
    transition: .5s, color .10s;
    -webkit-transition: .5s, color .10s;
    -moz-transition: .5s, color .10s;
}

.botonCv:hover {
    box-shadow: 0 8px 8px 0 #bebbbc,0 8px 8px 0 #adadab;
    transform: translate(0px,5px);
    -webkit-transform: translate(0px,5px);
    -moz-transform:translate(0px,5px);
}

.botonCert {
    font-size: 18px;
    margin-left: 40px;
    background-color: rgb(255, 253, 180);
    border-radius: 7px;
    border: none;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
    padding-right: 20px;
    width: fit-content;
    font-family: "Playfair Display", serif;
    font-weight: 800;
    transition: .5s, color .10s;
    -webkit-transition: .5s, color .10s;
    -moz-transition: .5s, color .10s;
}

.botonCert:hover {
    box-shadow: 0 8px 8px 0 #bebbbc,0 8px 8px 0 #adadab;
    transform: translate(0px,5px);
    -webkit-transform: translate(0px,5px);
    -moz-transform:translate(0px,5px);
}

.botonCopy {
    margin-left: 30px;
    background-color: rgb(255, 253, 180);
    border-radius: 7px;
    border: none;
    padding-top: 11px;
    padding-bottom: 11px;
    padding-left: 25px;
    padding-right: 25px;
    width: fit-content;
    font-family: "Playfair Display", serif;
    font-weight: 700;
    transition: .5s, color .10s;
    -webkit-transition: .5s, color .10s;
    -moz-transition: .5s, color .10s;
}

.botonCopy:hover {
    box-shadow: 0 8px 8px 0 #bebbbc,0 8px 8px 0 #adadab;
    transform: translate(0px,5px);
    -webkit-transform: translate(0px,5px);
    -moz-transform:translate(0px,5px);
}

.botonCopy:active {
    background-color: rgb(255, 253, 180);
}

.botonCopy:disabled {
    background-color: grey;
    cursor: not-allowed;
}

.copyImg {
    height: 36px;
}

@keyframes show {
    from {
        opacity: 0;
        scale: 25%;
    }
    to {
        opacity: 1;
        scale: 100%;
    }
}

.card {
    background: none;
}

.card-body {
    background-color: none;
}

.card-img-top {
    border: 5px;
    border-color: white;
    height: 300px;
    width: 300px;
}

.cardH {
    border: solid 2px;
    border-radius: 12px;
    border-color: rgb(104, 104, 104);
    width: 150px;
    background-color: rgb(25, 15, 34);
    transition: .3s;
    padding-block: 15px;
    margin: 15px;
    font-weight: 300;
}

.cardImg {
    height: 60px;
    margin-bottom: 10px;
}