:root {
    --azul: #6562ff;
    --blanco: #f5f5f5;
    --negro: #333333;
    --rojo: red;

    --glass-bg: rgba(255, 255, 255, 0.12);
    --glass-border: rgba(255, 255, 255, 0.35);
    --glass-shadow: 0 18px 45px rgba(0, 0, 0, 0.35);
    --glass-blur: 18px;
}

body {
    background-color: var(--blanco);
    /* background-image: url(./fondo.jpg); */
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 14px;
    padding: 0;
    margin: 0;
    /* min-height: 100vh; */
}

.section {
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    /* background-color: #414097; */
}

.bgcalcula {
    background-image: url(../img/CALCULADORA-WEB_01.png);
}

.bggastos {
    background-image: url(../img/CALCULADORA-WEB_02.png);
}

.bgsalario {
    background-image: url(../img/CALCULADORA-WEB_03.png);
}

.bgmargen {
    background-image: url(../img/CALCULADORA-WEB_04.png);
}

.bghora {
    background-image: url(../img/CALCULADORA-WEB_05.png);
}

.bgpresupuesto {
    background-image: url(../img/CALCULADORA-WEB_06.png);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
ul,
li,
ol {
    padding: 0;
    margin: 0;
}

ul,
li,
ol {
    list-style: none;
}

a {
    text-decoration: none;
}

.in {
    max-width: 1200px;
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
}

.in2 {
    max-width: 1250px;
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
}

header {
    background-color: var(--blanco);
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff;
    font-family: "Poppins", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 24px;
}

header .header {
    position: relative;
    justify-content: center;
}

#btn_menu {
    position: absolute;
    right: 0;
    padding: 20px;
}

header .logo {
    width: 200px;
    height: 0;
    padding-bottom: 88px;
    box-sizing: border-box;
    position: relative;
}

header .logo img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: contain;

}

header+hr {
    border: solid 3px #ededed;
    width: 90%;
    margin: 0 auto;
    border-radius: 5px;
}












.slide {
    background-color: var(--azul);
    padding: 50px;
    margin-top: 20px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
}





#slide.slide3 {
    position: relative;
}

#slide.slide3 .activi_menu {
    background-color: unset;
}

#slide.slide3 .btn_play hr {
    background-color: var(--blanco);
}

#slide.slide3::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh;
    background-image: url(../img/background_header_slider3.jpg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-attachment: scroll;
    z-index: -2;
}

#slide.slide3 .activi_menu .logo {
    width: 220px;
}

#slide.slide3 .slide3sectionin .activi_line {
    height: 80%;
    margin: auto 0 0;
}

#slide.slide3 .slide3section {
    height: 400px;
    align-items: start;
}

#slide.slide3 .slide3section .activi_line {
    height: 100%;
}

#slide.slide3 .slide3cont {
    padding-left: 20px;
    line-height: 1.6;
    color: var(--blanco);
}

#slide.slide3 .slide3cont img {
    float: right;
    /* 👉 ahora la imagen flota a la derecha */
    width: 70%;
    height: auto;
    shape-outside: url("../img/slide3.png");
    shape-margin: 20px;
    margin-left: 20px;
    margin-top: 60px;
    /* margen al lado izquierdo */
    clip-path: url("../img/slide3.png");
    /* opcional, recorta visualmente */
}

#slide.slide3 .slide3cont div:nth-child(2) {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 38px;
}

#slide.slide3 .slide3cont div:nth-child(3) {
    padding-top: 20px;
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 18px;
}

#slide.slide3 .slide3cont div:nth-child(4) {
    padding-top: 20px;
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 14px;
}

#slide.slide3 .slide3sectionmarc {
    height: 50px;
}

#slide.slide3 .slide3sectionmarc .activi_line {
    position: relative;
    border: solid 3px transparent;
    overflow: visible;
    height: 100%;
}

#slide.slide3 .slide3sectionmarc .activi_line::after {
    position: relative;
    content: "";
    display: block;
    border: solid 3px #dedede;
    background-color: #dedede;
    height: 30px;
    width: 0;
    left: -14px;
    top: -46px;
    transform: rotate(313deg);
}

#slide.slide3 .slide3sectionmarc .activi_line::before {
    position: relative;
    content: "";
    display: block;
    border: solid 3px #dedede;
    background-color: #dedede;
    height: 30px;
    width: 0;
    left: 8px;
    top: -10px;
    transform: rotate(47deg);
}


.efecto_glass {
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
    transition: backdrop-filter .3s, -webkit-backdrop-filter .3s, background .3s;
}

.efecto_glass_activo {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 2;
    /* background: rgba(255, 255, 255, 0); */
    /* backdrop-filter: blur(2.5px); */
    /* -webkit-backdrop-filter: blur(2.5px); */

    background: var(--glass-bg);
    backdrop-filter: blur(var(--glass-blur));
    -webkit-backdrop-filter: blur(var(--glass-blur));
}











.slide>div {
    background-color: var(--blanco);
    padding: 50px 20px 50px 60px;
    width: 60%;
    box-sizing: border-box;
}

.slide>div:nth-child(2) {
    padding: 40px 30px 0;
    width: 40%;
}

.slide>div img {
    width: 100%;
    transition: all .5s;
}

.slide>div img:hover {
    transform: scale(1.05);
}

.slide>div>div:nth-child(1) {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 48px;
}

.slide>div>div:nth-child(2) {
    padding-top: 20px;
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 24px;
}

.slide>div>div:nth-child(3) {
    padding-top: 20px;
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 16px;
}

.noti {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: start;
    gap: 20px;
    box-sizing: border-box;
    margin-top: 40px;
    margin-bottom: 40px;
}

.noticaja {
    width: calc(100% - 360px - 20px);
    flex-grow: 0;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

.notigrid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0 40px;
    padding-bottom: 50px;
}

.notiitem {
    width: calc(50% - 20px);
    flex-grow: 0;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
}

.notigrid .notiitem .notibox {
    background-color: transparent;
    position: relative;
    top: 0px;
    width: 100%;
    padding: 10px 20px;
    box-sizing: border-box;
}

.notiimg {
    width: 100%;
}

.notiimg a {
    display: block;
}

.img {
    width: 100%;
    height: 0;
    padding-bottom: 59%;
    position: relative;
    overflow: hidden;
}

.img img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: all .3s;
}

.notibox h3 a {
    padding-top: 10px;
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 120%;
    display: block;
    transition: all .3s;

    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.notibox h3 a:hover {
    color: var(--azul);
}

.notifecha {
    padding-top: 10px;
    color: var(--azul);
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 12px;
    text-transform: uppercase;
}

.notidescrip {
    padding-top: 10px;
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 14px;

    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.notimas a {
    padding-top: 10px;
    color: var(--azul);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 12px;
    display: block;
    transition: all .3s;
}

.notimas a:hover {
    color: var(--negro);
}

.notiitem:hover .img img {
    display: block;
    transform: scale(1.2);
}


.notilist {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.notilistsubtit {
    color: var(--azul);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 16px;
}

.notilisttit {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 36px;
}

.notilist .notiitem {
    width: 100%;
    flex-direction: row;
    gap: 20px;
    padding: 20px 0;
}

.notilist .notiitem .notiimg {
    width: 47%;
    flex-grow: 0;
    flex-shrink: 0;
}

.notilist .notiitem .notibox {
    width: auto;
    flex-grow: 1;
    flex-shrink: 1;
}

.notipubli {
    width: 360px;
    flex-grow: 0;
    flex-shrink: 0;
    border: 1px solid #eee;
    padding: 20px;
    box-sizing: border-box;
    position: sticky;
    top: 20px;
}

.notipublitit {
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 16px;

}

.notipubli hr {
    border: 2px solid var(--negro);
    margin: 10px 0;
}


#footer {
    background-color: var(--azul);
}

.footer {
    /* padding: 30px 20px; */
    justify-content: center;
    color: var(--blanco);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 12px;
    align-content: center;
    height: 50px;
}



.miga {
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 14px;
    justify-content: center;
    padding: 30px 20px;
    text-transform: uppercase;
}

.miga a {
    color: var(--negro);
}

.miga a:hover {
    color: var(--azul);
}

.miga>div {
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: center;
}

.miga>div>div {
    white-space: nowrap;
    /* Mantiene el texto en una sola línea */
    display: block;
    /* Asegura que se comporte correctamente */
}

.miga>div>div:last-child {
    color: var(--azul);
    white-space: nowrap;
    /* Mantiene el texto en una sola línea */
    overflow: hidden;
    /* Oculta el texto que se sale del ancho */
    text-overflow: ellipsis;
    /* Agrega "..." cuando el texto es muy largo */
    display: block;
    /* Asegura que se comporte correctamente */
}





.blog .noticaja {
    gap: 20px;
}

.blog .notiitem:nth-child(1) {
    width: 100%;
    position: relative;
    margin-bottom: 40px;
}

.blog .notiitem:nth-child(1) .notibox {
    position: absolute;
    top: 0;
    bottom: 0;
    background-color: #00000077;
    padding: 40px;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: end;
}

.blog .notiitem:nth-child(1) .notibox h3 a {
    color: var(--blanco);
}

.blog .notiitem:nth-child(1) .notibox .notidescrip {
    color: var(--blanco);
}

.blog .notiitem:nth-child(1) .notibox .notimas a:hover {
    color: var(--blanco);
}

.single .noticaja {
    gap: 20px;
}

.single .notisingletit {
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 40px;
    line-height: 130%;
}

.single .notisinglesubtit {
    color: var(--azul);
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 14px;
    text-transform: uppercase;
}

.single .notisingleextract {
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 18px;
}

.single .notisingleimg {
    margin-left: -20px;
}

.single .notisingleimg .img {
    padding-bottom: 65%;
}

.single .notisinglecontent {
    color: var(--negro);
    margin-bottom: 40px;
}

.single .notisinglecontent p {
    color: var(--negro);
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 14px;
    text-align: justify;
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 150%;

    /* Ajusta según tu diseño aumenta linea de corte en palabras */
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    /* Ajusta según tu diseño aumenta linea de corte en palabras */
}

.single .notisinglecontent h1,
.single .notisinglecontent h2,
.single .notisinglecontent h3,
.single .notisinglecontent h4,
.single .notisinglecontent h5 {
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 24px;
    padding: 15px 0 10px;
}

.noti.grid {
    visibility: visible;
    display: flex;
}

.noti.list {
    visibility: hidden;
    display: none;
}

/* calculadora */
#fullpage #menujr {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
}

#fullpage #menujr+hr {
    position: absolute;
    top: 100px;
    left: 0;
    right: 0;
    margin: 0 5%;
}

#fullpage #footer {

    top: 0;
    left: 0;
    right: 0;
    margin-top: 50px;
    width: 100%;
}


.calcflex1>div:nth-child(odd) {
    width: 60%;
    flex-grow: 0;
    flex-shrink: 0;
}

.calcflex2 {
    justify-content: flex-end;
}

.calcflex2>div:nth-child(even) {
    width: 60%;
    flex-grow: 0;
    flex-shrink: 0;
}

.calcflex3>div:nth-child(odd) {
    width: 90%;
    flex-grow: 0;
    flex-shrink: 0;
}

h3 {
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 36px;
    padding-bottom: 8px;
}

.descrip {
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 500;
    font-size: 21px;
    padding-bottom: 20px;
}

.btn {
    background-color: var(--azul);
    color: var(--blanco);
    display: inline-block;
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 24px;
    padding: 5px 35px;
    border-radius: 2px;
    text-align: center;
    cursor: pointer;
    transition: all .3s;
}

.btn:hover {
    box-shadow: 3px 2px 5px #414097, -3px 2px 5px #414097;
}

.calculadora {
    padding: 50px 30px;
}

.calculadora .btn {
    margin-top: 25px;
}

.check {
    display: flex;
    flex-direction: row;
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 18px;
    gap: 0 20px;
}

.check h4 {
    font-family: "Poppins", serif;
    font-weight: 500;
    font-size: 21px;
    padding: 10px 0 5px;
}

.check>div {
    display: flex;
    flex-direction: column;
}

.check>div>div {
    display: flex;
    flex-direction: row;
    padding-bottom: 5px;
}

label {
    display: flex;
    flex-direction: row;
    align-items: center;
    cursor: pointer;
}

/* Ocultamos el checkbox original */
.check input[type="checkbox"] {
    display: none;
}

/* Estilizamos el label como el "nuevo" checkbox */
.check .custom-checkbox {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 3px solid var(--azul);
    box-sizing: border-box;
    border-radius: 1px;
    position: relative;
    cursor: pointer;
    margin-right: 8px;
}

/* Pseudo-elemento para la marca de verificación */
.check input[type="checkbox"]:checked+.custom-checkbox::after {
    content: "✔";
    font-size: 16px;
    color: white;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Cambiamos el color de fondo cuando está marcado */
.check input[type="checkbox"]:checked+.custom-checkbox {
    background-color: var(--azul);
    border-color: var(--azul);
}

.checkitem span {
    color: var(--azul);
}

.check_precio {
    border-bottom: 2px solid transparent;
}

.check_precio[contenteditable=true] {
    /* outline: 1px solid var(--azul); */
    outline: none;
    border-bottom: 2px solid var(--azul);
    padding: 0;
    margin: 0;
    box-sizing: border-box;

}

.check_icon {
    color: var(--azul);
    cursor: pointer;
}

.check_icon.guardargasto {
    display: none;
}

.select {
    background-color: var(--azul);
    color: var(--blanco);
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 18px;
    padding: 9px 30px;
    width: 90%;
    max-width: 400px;
    outline: none;
    border-radius: 2px;
}

.descrip2 {
    color: var(--azul);
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 15px;
    padding: 7px 0 20px;

}

.descrip3 {
    color: var(--negro);
    font-family: "Poppins", serif;
    font-weight: 500;
    font-size: 21px;
    padding: 10px 0 15px;

}

.descripnum {
    color: var(--azul);
    font-family: "Barlow", serif;
    font-weight: 900;
    font-size: 100px;
}

.radio {
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 18px;
    display: flex;
    flex-direction: row;
    gap: 0 20px;
}

/* Ocultamos el radio original */
input[type="radio"] {
    display: none;
}

/* Estilo del radio personalizado */
.custom-radio {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 3px solid var(--azul);
    border-radius: 50%;
    position: relative;
    cursor: pointer;
}

.custom-radio.ra30 {
    display: inline-block;
    width: 30px;
    height: 30px;
    border: 3px solid var(--azul);
    border-radius: 50%;
    position: relative;
    cursor: pointer;
}

/* Pseudo-elemento para el círculo interno cuando está seleccionado */
input[type="radio"]:checked+.custom-radio::after {
    content: "";
    width: 10px;
    height: 10px;
    background-color: var(--azul);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

input[type="radio"]:checked+.custom-radio.ra30::after {
    content: "";
    width: 15px;
    height: 15px;
    background-color: var(--azul);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Cambio de color en hover */
.custom-radio:hover {
    border-color: var(--azul);
}

/* Estilo del texto de la opción */
.radio-label {
    cursor: pointer;
    margin-left: 5px;
    font-size: 18px;
}

.radio label {
    display: flex;
    flex-direction: row;
    align-items: center;
    cursor: pointer;
}

/*********************************/
.cobrar h3 {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 60px;

}

.cobrar .descrip {
    font-family: "Poppins", serif;
    font-weight: 500;
    font-size: 36px;
}

.cobrar .descripnum {
    color: var(--azul);
    font-family: "Barlow", serif;
    font-weight: 900;
    font-size: 150px;
}

.cobrar .descriptext {
    color: var(--azul);
    font-family: "Barlow", serif;
    font-weight: 900;
    font-size: 72px;
}

.sueldoideal {
    position: relative;
}

.sueldoideal .descripnum {
    text-align: right;
}

.sueldoideal .btn {
    margin-left: 50%;

}

.cobrar .descripnum {
    margin-left: 20%;
}

.cobrar .descriptext {
    margin-left: 54%;
}

.cobrar .btn {
    margin-left: 20%;
    text-align: center;
}

/******/
.presupuestobox {
    background-color: var(--azul);
}

h4 {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 36px;
}

.presupuestobox h3 {
    padding-bottom: 0px;
    color: var(--azul);
}

.presupuestobox h4 {
    color: var(--blanco);
    text-align: center;
    width: 100%;
    padding: 30px 20px;
    box-sizing: border-box;
}

.presupuesto {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0 20px;
    align-items: start;
}

.presupuesto .descrip {
    font-family: "Poppins", serif;
    font-weight: 400;
    font-size: 15px;
    padding-bottom: 10px;
}

.presupuesto1 {
    display: flex;
    flex-direction: column;
    width: calc(65% - 20px);
    padding: 30px 30px;
    box-sizing: border-box;
    background-color: var(--blanco);
}

.presupuesto1 .select {
    width: 100%;
    max-width: inherit;
}

.presupuesto2 {
    display: flex;
    flex-direction: column;
    width: 35%;
    padding: 30px 20px;
    box-sizing: border-box;
    background-color: var(--blanco);

}

h5 {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 21px;
}

.presupuesto2 h5 {
    border-bottom: 5px solid var(--negro);
    margin-bottom: 40px;
}

.presupuesto2 hr {
    border: 2px solid #dddddd;
    background-color: #dddddd;
    outline: none;
    box-shadow: none;
}

.titp {
    color: var(--azul);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 14px;
}

.presupuestoitem {
    padding: 10px 0 20px 20px;
}

.descp {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 24px;
    display: flex;
    flex-direction: column;
}

.descp>span {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 18px;
}

.descp1 {
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 18px;
}

.presupuestototal {
    padding: 20px 0;
}

.presupuestototal .descrip {
    color: var(--azul);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 14px;
    padding-left: 20px;
}

.presupuesto2 .num {
    font-family: "Barlow", serif;
    font-weight: 900;
    font-size: 50px;
    display: flex;
    background-color: var(--azul);
    color: var(--blanco);
    padding: 10px 20px 30px;
}

/*******/
/* .seccion-larga {
    height: auto !important;
    overflow: visible !important;
} */

.fp-watermark {
    display: none;
}

#footer_oculto {
    display: none;
}


/*********************************************************** ACTIVIDADES **/
.activi {
    display: flex;
    flex-direction: column;
    /* height: 100vh; */
    width: 100%;
}

.activi .activi_menu {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1;
}

.activi #footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 1;
}

.activi_line {
    height: 80%;
    border: solid 3px #dedede;
    margin: auto 0 0;
}


.activi_menu {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: nowrap;
    width: 100%;
    height: 100px;
    flex-grow: 0;
    flex-shrink: 0;
    background-color: var(--blanco);
}

.activi_menu .logo {
    width: 340px;
    height: 70px;
    box-sizing: border-box;
    position: relative;
    display: flex;
    margin-right: 40px;
    flex-shrink: 0;
}

.activi_menu .logo a {
    display: block;
}

.activi_menu .logo img {
    position: absolute;
    top: 0;
    right: 1px;
    left: auto;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: 100%;
    display: block;
}

.menu_2 {
    flex-grow: 1;
    flex-shrink: 1;
}

.menu_2 ul {
    display: flex;
    flex-direction: row;
    flex-grow: 1;
    justify-content: space-evenly;
    margin-right: 120px;
}

.menu_2 ul li {
    flex-shrink: 1;
    position: relative;
    transition: all .3s;
}

.menu_2 ul li a {
    display: block;
}

.menu_2 ul li a::after {
    /* content: "⏷"; */
    content: "\f0dd";
    color: var(--rojo);
    padding-left: 5px;
    font-family: "Font Awesome 5 Free";
    font-display: swap;
    font-weight: 900;
    font-size: 16px;
    vertical-align: top;
}

.menu_2 a {
    padding: 10px 20px;
    font-family: "Barlow", serif;
    font-weight: 700;
    font-size: 18px;
    background-color: transparent;
    color: var(--negro);
    transition: all .3s;
    cursor: pointer;
}

.menu_2 ul li:hover {
    background-color: var(--azul);
}

.menu_2 ul li:hover a {
    color: var(--blanco);
}

.menu_2 ul li:hover ul {
    visibility: visible;
    transform: translateY(0px);
    opacity: 1;
    width: auto;
    min-width: 100%;
}

.menu_2 ul ul {
    z-index: 1;
    position: absolute;
    left: 0;
    top: 45px;
    visibility: hidden;
    display: block;
    background-color: transparent;
    width: 200px;
    /* box-shadow: 1px 1px 2px var(--azul), -1px 1px 2px var(--azul); */
    transform: translateY(50px);
    transition: all .3s;
    opacity: 0;
    /* margin-top: 10px; */
}

.menu_2 ul ul::before {
    content: "";
    /* position: absolute; */
    top: -10px;
    left: 30px;
    margin-left: 25px;
    width: 0;
    height: 0;
    display: block;
    border-top: 0px solid transparent;
    border-bottom: 10px solid var(--azul);
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
}

.menu_2 ul li ul li {
    background-color: var(--azul);
    box-shadow: 1px 1px 2px var(--azul), -1px 1px 2px var(--azul);
    border-bottom: 1px solid var(--blanco);
}

.menu_2 ul li ul li:last-child {
    background-color: var(--azul);
    border-bottom: none;
}

.menu_2 ul li ul li a:hover {
    padding-left: 15px;
}

.menu_2 ul ul a {
    padding: 10px 20px;
    font-family: "Poppins", serif;
    font-weight: 500;
    font-size: 16px;
    background-color: transparent;
    color: var(--blanco);
    white-space: nowrap;
    transition: all .3s;
}

.menu_2 ul ul a::after {
    display: none;
}

.menu_2 ul ul a::before {
    content: "⏵";
    color: var(--rojo);
    padding-right: 0px;
    visibility: hidden;
    opacity: 0;
    transition: all .3s;
    margin-left: -15px;
}

.menu_2 ul ul a:hover::before {
    content: "⏵";
    color: var(--rojo);
    padding-right: 5px;
    visibility: visible;
    opacity: 1;
    margin-left: 0px;
}




















/****************** ACTIVITI **/
.activi_activi {
    width: 100vw;
    height: calc(100vh - 15px);
    box-sizing: border-box;
    /* overflow-x: auto; */


    /* scroll-snap-type: x mandatory; */
    /* snap entre secciones */
    /* scroll-behavior: smooth; */
    /* -webkit-overflow-scrolling: touch; */

    padding-top: 100px;
    padding-bottom: 52px;
}

.activi_activi .activi_item_box {
    width: max-content;
    height: 98%;
    float: left;
    white-space: wrap;
}

.activi_activi .activi_item_box>div,
.activi_activi .activi_item_box>hr {
    height: 98%;
    float: left;
}

/********************* MENU*/
.menu_left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 380px;
    flex-shrink: 0;
    flex-grow: 0;
    text-align: right;
    padding-right: 40px;
    box-sizing: border-box;
}

.menu_left hr {
    border-color: var(--azul);
    border-width: 3px;
    border-style: solid;
}

.menu_left h1 {
    padding: 30px 0 10px 20px;
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 20px;
    width: 80%;
    margin-left: auto;
}

.menu_left h2 {
    padding: 10px 0;
    font-family: "Poppins", serif;
    font-weight: 500;
    font-size: 18px;
    width: 80%;
    margin-left: auto;
}

.menu_left div>p {
    padding: 10px 0;
    font-family: "Poppins", serif;
    font-weight: 500;
    font-size: 14px;
    width: 80%;
    margin-left: auto;
}

.menu_left .miga {
    padding: 30px 0 20px 20px;
}

.menu_left .miga>div {
    justify-content: end;
    flex-direction: column;
}

.menu_left .item_dat1 {
    justify-content: flex-end;
}


.item {
    margin: 10px 20px;
}

.item_img {
    height: calc(100% - 70px);
    cursor: pointer;
    position: relative;
    z-index: 0;
}

.item_img:hover .item_shadow {
    opacity: 1;
    transition: opacity .3s ease;
}

.item_img .item_shadow {
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    cursor: pointer;
    background-color: #000000aa;
    color: var(--blanco);
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 24px;
    transition: all .5s;
    padding: 20px;
    box-sizing: border-box;
}

.item img {
    width: auto;
    height: 100%;
}

.item_dat {
    height: 70px;
    padding: 10px 0;
    box-sizing: border-box;
}

.item_dat1 {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    font-family: "Poppins", serif;
    font-weight: 700;
    font-size: 16px;
}

.item_dat1 div:nth-child(1) {
    padding-right: 15px;
    box-sizing: border-box;
}
.menu_left .item_dat1_share {
    padding-right: 0 !important;

}
.item_dat1 .item_dat1_share {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.item_dat1 .item_dat1_share>div {
    display: inline;
    transition: all .3s;
    position: relative;
}

.item_dat1 .item_dat1_share .share_boxin_rrss {
    display: none;
}

.item_dat1 .item_dat1_share .share_boxin_rrss>div {
    display: flex;
    flex-direction: column;
    gap: 5px;
    position: absolute;
    bottom: 40px;
    right: 0;
    background-color: var(--blanco);
    padding: 8px 5px;
    border-radius: 5px;
    box-shadow: 0 0 15px #999999;
    z-index: 1;
}

.item_dat1 .item_dat1_share .share_boxin_rrss>div::before {
    content: "";
    display: block;
    border-top: 8px solid var(--blanco);
    border-bottom: 0px solid transparent;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    height: 0;
    width: 0;
    position: absolute;
    bottom: -8px;
    box-shadow: 0 10 10px #999999;
    left: 16px;
}

.item_dat1 i {
    padding: 10px;
    cursor: pointer;
    font-size: 20px;
    transition: all .3s;
}

.item_dat1 i.fa-solid {
    display: none;
    color: var(--azul);
    transition: all .3s;
}

.item_dat1 i.fa-solid:nth-child(3) {
    position: absolute;
    visibility: hidden;
    font-size: 40px !important;
    opacity: 0;
    bottom: 0;
    left: -10px;
    z-index: 1;
}

.item_dat1 .item_dat1_share .like_count {
    margin-right: -5px;
    display: contents;
}

.item_dat1 .item_dat1_share .share_boxin:hover i.fa-regular,
.item_dat1 .item_dat1_share .like_boxin:hover i.fa-regular {
    display: none;
}

.item_dat1 .item_dat1_share .share_boxin:hover i.fa-regular~i.fa-solid,
.item_dat1 .item_dat1_share .like_boxin:hover i.fa-regular~i.fa-solid {
    display: block;
}

.item_dat1 .item_dat1_share .like_boxin.activado i.fa-solid {
    display: block;
}

.item_dat1 .item_dat1_share .like_boxin.activado i.fa-regular {
    display: none;
}

.item_dat2 {
    font-family: "Poppins", serif;
    font-weight: 500;
    font-size: 13px;
    color: var(--azul);
}

/************* LIKE VOLANDO ***************************/
@keyframes likevolar {
    0% {
        transform: translateY(0px);
        opacity: 0;
    }

    30% {
        opacity: 1;
    }

    100% {
        transform: translateY(-400px);
        opacity: 0;
    }
}

.likevolando {
    visibility: visible !important;
    animation: likevolar 5s ease-out forwards;
}

/************************************************/
.ventanaFull {
    position: fixed;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    display: none;
    background: #333333ee;
    z-index: 2;
    width: 100%;
    height: 100vh;
    padding: 50px;
    overflow: hidden;
    box-sizing: border-box;
    /* transition: 0.5s; */
    /* transform: scale(0) rotate(0deg); */
    transition: width 1.5s ease;
    /* <— esto hace la magia */
}

.ventanaFull .cajaClose {
    position: absolute;
    right: 0px;
    top: 0px;
    cursor: pointer;
    margin: 10px;
    padding: 10px;
    color: var(--blanco);
    font-size: 2em;
    z-index: 2;
}

.ventanaFull .ventanaFullTitulo {
    /* overflow: hidden; */
    height: calc(100vh - 100px);
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/*/********************************/
.swiper {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper.mySwiper .swiper-wrapper {
    /* justify-content: center; */
}

.swiper {
    width: 100%;
    height: 300px;
    margin-left: auto;
    margin-right: auto;
}

.swiper-slide {
    background-size: cover;
    background-position: center;
}

.swiper-slide.sliderjrcentro {
    /* margin-left: auto; */
    /* margin-right: auto !important; */
}

.mySwiper2 {
    height: 80%;
    width: 100%;
}

.mySwiper {
    height: 20%;
    box-sizing: border-box;
    padding: 10px 0;
    overflow-y: visible !important;
    overflow-x: clip !important
}

.mySwiper .swiper-slide {
    width: auto;
    height: 100%;
    opacity: 0.5;
    transition: all .3s;
}

.mySwiper .swiper-slide-thumb-active {
    opacity: 1;
    transform: translateY(-10px) !important;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/*/ VISTA TRABAJO TIPO WEB /*/
.vista_web {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0px;
    padding: 0 0;
}

.vista_web img {
    width: 100%;
    height: auto;
}

/*/ VISTA PDF INTERACTIVO /*/
.vista_embed {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.vista_embed iframe {
    width: 100%;
    height: 100%;
    border: 0 !important;
    outline: none;
}

/*//FLIPBOOK//*/

.vista_pdf {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 20px;
}

/* MÓVIL / VISTA VERTICAL: width al 100%, height se calcula por aspect-ratio */
.flipbook-container {
    width: 100%;
    height: auto;
    max-height: 100%;
    aspect-ratio: 1.45 / 1;
    /* margin: auto; */
    position: relative;
}

#flipbook {
    width: 100%;
    height: 100%;
    position: absolute;
    /* posición absoluta sí respeta el padre */
    top: 0;
    left: 0;
}

#flipbook img {
    width: 100%;
    height: 100%;
}

#flipbook.animation_turn {
    -webkit-transition: margin-left 0.5s;
    -moz-transition: margin-left 0.5s;
    -ms-transition: margin-left 0.5s;
    -o-transition: margin-left 0.5s;
    transition: margin-left 0.5s;
}

#flipbook.flipbook_marginjavi {
    margin-right: -318px;
    /* o lo que necesites */
    transition: all 0.3s ease;
}

/* DESKTOP / VISTA HORIZONTAL: height al 100%, width se calcula por aspect-ratio */
@media (min-aspect-ratio: 4/3) {
    .flipbook-container {
        width: auto;
        margin: 0 auto;
        max-width: 100%;
        height: 100%;
    }
}

.paginador-revista {
    text-align: center;
    margin-top: 5px;
    font-weight: 400;
    font-family: "Poppins", serif;
}

.paginador-revista button {
    background: transparent;
    color: var(--blanco);
    border: none;
    padding: 6px 10px;
    margin: 0 6px;
    cursor: pointer;
}

.spread {
    display: inline-block;
    padding: 6px 12px;
    margin: 2px;
    cursor: pointer;
    border-radius: 4px;
    color: var(--blanco);
}

.spread.activo {
    background: var(--blanco);
    color: var(--azul);
}

#noScrollContainer .spread,
#noScrollContainer .paginador-revista button,
#noScrollContainer .dots {
    color: var(--negro);
}

#noScrollContainer .spread.activo {
    background: var(--negro);
    color: var(--blanco);
}

.dots {
    padding: 6px;
    color: var(--blanco);
}

/*//NO SCROLL//*/
#noScrollContainer {
    height: auto;
    width: 100%;
    overflow: initial;
}

#noScrollContainer>div {
    display: flex;
    width: 100%;
}

#noScrollContainer>div .vista_web {
    overflow-y: initial;
}

#noScrollContainer>div .vista_embed {
    overflow-y: initial;
    height: unset;
}

#noScrollContainer>div .vista_pdf {
    overflow-y: clip;
    overflow-x: clip;
    height: unset;
}

#noScrollContainer>div .menu_left {
    height: calc(100vh - 160px);
    position: sticky;
    top: 100px;
}

#noScrollContainer>div .activi_line {
    height: calc(100vh - 180px);
    position: sticky;
    top: 100px;
    margin-top: 0;
}