@font-face {
    font-family: 'Sedan SC';
    src: url('css/SedanSC-Regular.ttf') format('truetype');
}
body{
    font-family: 'Public Sans', sans-serif;
    --altfont: 'Sedan SC';
    --azul: #00AFFF;
    --margen: 30px;
    font-size: 15px;
    background: #efefef;
}
.contenedor{
    width: 100%;
    min-height: 400px;
    border: 1px solid #d4d4d4;
    margin: 40px auto;
    max-width: 900px;
    padding: var(--margen);
    position: relative;
    background: #fff;
}
.contenedor::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 230px;
    height: 262px;
    background: var(--azul);
    z-index: 1;
}
.perfilc{position: relative;z-index: 2}
.titularcv{
    position: relative;
    margin: 30px 0;
}
.titularcv::after{
    content: '';
    position: absolute;
    left: -30px;
    width: 30px;
    height: 25px;
    top: 0;
    background: var(--azul);
    display: block;
}
.titularcv h2{
    font-family: var(--altfont);
    font-size: 23px;
    margin: 0;
    padding-left: 15px;
}
.logocv{overflow: hidden}
.contenidocv{text-align: justify;font-size: 14px}
.contenidocv p{margin-bottom: 10px;}
.contenidocv ul li{margin-bottom: 10px;}
.contenidocv ul li:last-child{margin: 0}
.itemcv{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    text-align: justify;
    margin-bottom: var(--margen);
}
.itemcv img{
    width: 50px;
    height: auto;
    margin-right: 15px;
    border: 1px solid #d4d4d4;
}
.itemcv span{
    font-family: var(--altfont);
    display: block;
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 0.6;
}
.itemcv p{
    margin: 0;
    font-size: 13px;
}
.itemcv ul{margin-top: 15px;padding: 0 0 0 15px;}
.itemcv ul li{
    font-size: 13px;
    margin-bottom: 15px;
}
.itemcv ul li b{font-weight: normal;opacity: 0.8;font-size: 90%}
.cvlateral{
    margin-top: var(--margen);
    font-size: 13px;
}
.cvlateral header{
    font-family: var(--altfont);
    text-align: center;
    font-size: 19px;
    margin-bottom: 20px;
}
.cvlateral header::after{
    content: '';
    width: 100%;
    display: block;
    height: 1px;
    background: url(img/degre.webp) center no-repeat;
    background-size: cover;
}
.listalateral{
    margin-bottom: 10px;
}
.listalateral ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
.listalateral ul li{
    padding-left: 16px;
    position: relative;
}
.listalateral ul li:before {
    content: "";
    width: 5px;
    height: 5px;
    background: var(--azul);
    border-radius: 100%;
    position: absolute;
    left: 0;
    top: 7px;
}
.cvlateral .itemcv{margin-bottom: 15px;}
.listaante li{margin-bottom: 15px;font-size: 13px;}
.listaante li:last-child{margin: 0}
.contactoboton{
    width: 100%;
    padding: 13px;
    font-family: var(--altfont);
    font-size: 11px;
    margin-top: 15px;
    border: 1px solid #d4d4d4;
    background: #efefef;
    line-height: 1;
    text-transform: uppercase;
}
.contactoboton:hover{background: linear-gradient(0deg, rgb(222, 222, 222) 0%, rgba(239,239,239,1) 100%);}
.contactoboton i{}
.modal-content{border-radius: 0}
.btn{
    border: 0;
    border-radius: 0;
    font-family: var(--altfont);
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
}
.btn-primary{background: var(--azul)!important}
.modal-title{font-family: var(--altfont);}
.copyimp{
    width: 100px;
    height: 20px;
    display: block;
    margin: -15px auto 30px;
    background: url(img/spagencia.svg) center no-repeat;
    background-size: contain;
    filter: grayscale(100%);
    opacity: 0.6;
}
.duobotonescont{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 15px;
}
.abrirsidebar{display: none}
.offcanvas{display: block}

@media only screen and (max-width: 900px) {
    .contenedor{margin: 0;border: 0}
    .copyimp{margin: 15px auto;}
}
@media only screen and (max-width: 700px) {
    .contenedor{padding-right: 60px}
    .contenedor::after{display: none}
    .abrirsidebar{
    display: block;
    border: 0;
    background: #efefef;
    color: #000;
    position: fixed;
    top: 0;
    bottom: 0;
    width: 30px;
    right: 0;
    font-size: 21px;
    padding: 0;
    }
    .barra-lateral{display: none}
    .offcanvas.offcanvas-end{overflow: scroll;width: 80%;}
}