.titulo-principal {
  font-size: 75px;
  font-weight: 800;
  text-transform: uppercase;
}

@media (max-width: 400px) {
  .titulo-principal {
    font-size: 52px;
    color: #fff;
  }
}

.fade-text {
  background: linear-gradient( to right, #ffffff 0%, #ffffff 20%, #ff6666 30%, var(--color-rojo-1) 50%, #ff6666 70%, #ff6666 90%, #cccccc 95%, #e6e6e6 100% );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-size: 200% auto;
  animation: gradientMove var(--timer-s) ease infinite;
}

@keyframes gradientMove {
  to {
    background-position: 200% center;
  }
  from {
    background-position: 0% center;
  }
}

.descripcion-griss {
  color: var(--color-gris-parrafos);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
}

.logo-full-cr {
  width: 400px;
  height: auto;
  display: none;
  position: absolute;
}

.principal-derecha .card {
  width: 100%;
  margin: 0px auto;
  background: linear-gradient(135deg, #1a1a1a, #120707);
  border-radius: 16px;
  box-shadow: 0 20px 80px rgba(0,0,0,0.8);
  overflow: hidden;
}

.principal-derecha .card-header {
  padding: 10px;
  background: rgba(255,255,255,0.05);
}

.principal-derecha .dots {
  display: flex;
  gap: 10px;
}

.principal-derecha .dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
}

.principal-derecha .red {
  background: #ff5f56;
}

.principal-derecha .yellow {
  background: #ffbd2e;
}

.principal-derecha .green {
  background: #27c93f;
}

.principal-derecha .card-body {
  padding: 22px;
}

.principal-derecha .top-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.principal-derecha .title {
  color: #59413D;
  letter-spacing: 2px;
}

.principal-derecha .status {
  color: #2ecc71;
  display: flex;
  align-items: center;
  gap: 8px;
}

.principal-derecha .status-dot {
  width: 10px;
  height: 10px;
  background: #2ecc71;
  border-radius: 50%;
  animation: pulse 1.5s infinite;
}

.principal-derecha .stats {
  display: flex;
  gap: 20px;
  margin-bottom: 18px;
  overflow-x: auto;
}

.principal-derecha .box {
  flex: 1;
  padding: 15px;
  border-radius: 10px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.05);
}

.principal-derecha .box p {
  color: #59413D;
  margin-bottom: 15px;
  font-size: 10px;
}

.principal-derecha .bars {
  display: flex;
  gap: 11px;
}

.principal-derecha .bars span {
  display: block;
  width: 40px;
  height: 11px;
  border-radius: 2px;
  opacity: 0.7;
  animation: barAnim 1.5s infinite ease-in-out;
}

.principal-derecha .red-bars span {
  background: #880000;
}

.principal-derecha .gray-bars span {
  background: #888;
}

.principal-derecha .bars span:nth-child(2) {
  animation-delay: 0.2s;
}

.principal-derecha .bars span:nth-child(3) {
  animation-delay: 0.4s;
}

.principal-derecha .bars span:nth-child(4) {
  animation-delay: 0.6s;
}

.principal-derecha .terminal {
  background: #000;
  padding: 17px;
  border-radius: 10px;
  color: #aaa;
  font-size: 12px;
  font-family: 'Google Sans Code', monospace;
}

.principal-derecha .cmd {
  color: #ff0000;
}

.principal-derecha .success {
  color: #2ecc71;
}

@keyframes barAnim {
  0%, 100% {
    transform: scaleY(0.6);
    opacity: 0.5;
  }
  50% {
    transform: scaleY(1.5);
    opacity: 1;
  }
}

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.4);
    opacity: 0.5;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.principal-derecha .terminal p {
  margin-bottom: 5px;
}

.tecnica-card {
  background-color: #171717;
  padding: 12px 12px 12px 12px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 0px;
  align-items: center;
  color: #aaa;
}

.tecnica-card .tecnica-card-icon {
  text-align: center;
  color: var(--color-rojo-1);
  font-size: 25px;
  margin-bottom: 10px;
}

.tecnica-card .tecnica-card-title p {
  font-weight: 700;
  font-size: 12px;
  line-height: 1.2;
  text-align: center;
  color: var(--color-gris-2);
  text-transform: uppercase;
}

.card-border {
  position: relative;
  border-radius: 0px;
  padding: 5px;
  background: linear-gradient( 120deg, rgba(68,68,68,0.7), #171717, rgba(68,68,68,0.7), #171717);
  background-size: 200% 200%;
  animation: borderMove 4s linear infinite;
  width: 175px;
  height: 140px;
  margin-right: 15px;
}

@media (max-width: 768px) {
  .card-border {
    width: 25%;
  }
}

@media (max-width: 700px) {
  .card-border {
    width: 35.3%;
  }
}

@keyframes borderMove {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 200% 50%;
  }
}

.subtitulo-seccion > * {
  font-size: 15px;
  font-weight: 300;
  letter-spacing: 5px;
  margin-bottom: 10px;
}

.seccion-titulo > * {
  font-size: 60px;
}

@media (max-width: 400px) {
  .seccion-titulo > * {
    font-size: 40px;
  }
}

.subtitulo-seccion-bold > * {
  font-size: 60px;
}

.colum-custom-works {
  max-width: 660px;
}

@media (max-width: 1200px) {
  .colum-custom-works {
    width: 100%;
    max-width: 560px;
  }
}

.work-image img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  object-position: center;
  border: 1px solid var(--color-gris-2);
}

.work-categoria p {
  color: var(--color-rojo-2);
  margin-top: 20px;
  font-size: 16px;
  letter-spacing: 3px;
  margin-bottom: 20px;
}

.work-titulo > * {
  font-size: 30px;
  font-weight: 200;
}

.work-descripcion > p {
  color: var(--color-gris-parrafos);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
}

.fondo-degradado-griss:after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, rgba(163,163,163,0.13), transparent 50%);
  pointer-events: none;
}

.seccion-contacto {
  background-color: #1C1B1B;
  min-height: 550px;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
}

.contacto-titulo {
  font-size: 65px;
  font-weight: 800;
  width: auto;
  text-align: center;
  text-transform: uppercase;
}

@media (max-width: 700px) {
  .contacto-titulo {
    font-size: 45px;
    font-weight: 400;
    width: auto;
    text-align: center;
  }
}

.contacto-parrafo {
  font-size: 20px;
  color: var(--color-gris-1);
  text-align: center;
  margin-top: 20px;
  margin-bottom: 20px;
}

.contacto-btn-container {
  margin-left: auto;
  margin-right: auto;
  display: block;
  margin-top: 40px;
}

.contacto-btn {
  width: 100%;
}

.contacto-btn-card {
  width: 300px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  border-radius: 0px;
  padding: 3px;
  background: linear-gradient( 120deg, rgba(68,68,68,0.7), var(--color-rojo-1), rgba(68,68,68,0.7), var(--color-rojo-1), rgba(68,68,68,0.7));
  background-size: 200% 200%;
  animation: borderMove 6s linear infinite;
}

.seccion-contacto:after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, rgba(136,0,0,0.09), transparent 50%);
  pointer-events: none;
}

.contacto-btn {
  background-color: #131313;
  padding: 20px 10px 20px 10px;
  border-radius: 0px;
}

.contacto-btn:hover {
  background-color: #131313;
}

.contacto-btn-card:hover {
  --color-rojo-1: #A3A3A3;
}

@media (max-width: 768px) {
  .performance-box {
    gap: 10px;
  }
}

@media (max-width: 576px) {
  .seccion-espacios.home-bloque-1 {
    padding-top: 90px;
    padding-bottom: 10px;
  }
}

@media (max-width: 700px) {
  .home-bloque-3 {
    padding-top: 85px;
    padding-bottom: 85px;
  }
}

@media (max-width: 400px) {
  .work-content {
    margin-bottom: 30px;
  }
}

.fade-text-2 {
  font-size: 0.9em;
}

.performance-box {
  /*grid-template-columns: repeat(6, 1fr);*/
  /*grid-template-rows: 1fr;*/
  /*grid-column-gap: 15px;*/
  /*grid-row-gap: 15px;*/
  display: flex;
  overflow: hidden;
}

@media (max-width: 768px) {
  .performance-box {
    /*grid-template-columns: repeat(4, 1fr);*/
    /*grid-template-rows: 1fr;*/
    /*grid-column-gap: 15px;*/
    /*grid-row-gap: 15px;*/
  }
}

@media (max-width: 576px) {
  .performance-box {
    /*grid-template-columns: repeat(3, 1fr);*/
    /*grid-template-rows: 1fr;*/
    /*grid-column-gap: 15px;*/
    /*grid-row-gap: 15px;*/
  }
}

@media (max-width: 400px) {
  .performance-box {
    /*grid-template-columns: repeat(2, 1fr);*/
    /*grid-template-rows: 1fr;*/
    /*grid-column-gap: 15px;*/
    /*grid-row-gap: 15px;*/
  }
}

.flickity-enabled.is-draggable:focus-visible {
  outline: none;
}

@media (max-width: 400px) {
  .subtitulo-seccion-bold > * {
    font-size: 40px!important;
  }
}

