﻿

/* PANTALLA DE CARGA */
.loading-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    background: linear-gradient(-45deg, #1a237e, #283593, #1e88e5, #0d47a1);
    background-size: 250% 250%;
    animation: gradientFlow 20s cubic-bezier(0.4, 0, 0.2, 1) infinite;
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.8s ease-out, visibility 0.8s ease-out;
}

    .loading-overlay.fade-out {
        opacity: 0;
        visibility: hidden;
    }

/* Logo estático en pantalla de carga */
.logo-container {
    position: relative;
    width: 400px;
    height: 420px;
}

.diamond-group {
    position: absolute;
    top: 30%;
    left: 99%;
    transform: translateX(-50%) scale(1.15); /* Escala 1.2 = 20% más grande */
    width: 450px;
    height: 450px;
    z-index: 7;
}


.diamond {
    position: absolute;
    width: 45px;
    height: 45px;
    transform: rotate(45deg);
    border-radius: 5px;
    /* Efecto cristalino */
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px); /* Soporte para Safari */
    border: 2px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
    opacity: 1;
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

    /* Posiciones de los rombos (sin cambiar) */
    .diamond:nth-child(1) {
        top: 10px;
        left: -10px;
    }

    .diamond:nth-child(2) {
        top: -30px;
        left: -50px;
    }

    .diamond:nth-child(3) {
        top: -110px;
        left: 30px;
    }

    .diamond:nth-child(4) {
        top: -30px;
        left: 110px;
    }

    .diamond:nth-child(5) {
        top: 90px;
        left: -10px;
    }

    .diamond:nth-child(6) {
        top: 50px;
        left: 110px;
    }

    .diamond:nth-child(7) {
        top: 90px;
        left: 70px;
    }

    .diamond:nth-child(8) {
        top: -30px;
        left: 30px;
    }

    .diamond:nth-child(9) {
        top: 130px;
        left: 30px;
    }

    .diamond:nth-child(10) {
        top: 50px;
        left: -50px;
    }

    .diamond:nth-child(11) {
        top: 50px;
        left: 30px;
    }

.ring-group {
    position: absolute;
    top: 47%;
    left: 50%;
    transform: translateX(-50%);
    width: 240px;
    height: 250px;
    z-index: 5;
    opacity: 1;
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}
.ring-gradient {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    /* Mask con apertura más grande en la parte superior */
    mask: radial-gradient(circle, transparent 30%, black 30%), /* Hueco central */
    conic-gradient(from 0deg, transparent 0deg, transparent 55deg, black 50deg, black 303deg, transparent 303deg, transparent 360deg); /* Apertura de 120 grados */
    -webkit-mask: radial-gradient(circle, transparent 45%, black 40%), /* Hueco central */
    conic-gradient(from 0deg, transparent 0deg, transparent 55deg, black 5deg, black 303deg, transparent 303deg, transparent 360deg); /* Apertura de 120 grados */
    mask-composite: intersect; /* Combina ambas máscaras */
    -webkit-mask-composite: source-in; /* Safari */
    /* Solo efecto cristalino, sin colores */
    background: rgba(255, 255, 255, 0.08);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 2px solid rgba(255, 255, 255, 0.2);
    z-index: 3;
}



.cut-left, .cut-right {
    position: absolute;
    top: 55.5%;
    width: 70px;
    height: 86px;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px); /* Soporte para Safari */
    border: 2px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
    opacity: 10;
    transform-origin: bottom;
    z-index: 5;
    /* AGREGAR ESTA MÁSCARA PARA OCULTARLAS EN EL CÍRCULO: */
}

.cut-left {
    left: 27.5%;
    transform: rotate(-44deg);
    clip-path: polygon(18% 100%, 40% 0%, 80% -50%, 80% 75%);
    -webkit-mask: radial-gradient(circle at 74px 130px, transparent 78.5px, black 78.5px);
    mask: radial-gradient(circle at 74px 130px, transparent 78.5px, black 78.5px);
}

.cut-right {
    right: 26.5%;
    transform: rotate(44deg);
    clip-path: polygon(85% 100%, 60% 0%, 20% -50%, 20% 75%);
    /* Prueba diferentes valores para x: */
    -webkit-mask: radial-gradient(circle at 0px 130px, transparent 78.5px, black 78.5px);
    mask: radial-gradient(circle at 0px 130px, transparent 78.5px, black 78.5px);
}


.circle-decorativo {
    width: 55px;
    height: 55px;
    border-radius: 100%;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px); /* Soporte para Safari */
    border: 2px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
    opacity: 1;
    position: absolute;
    top: 78.5%; /* Ajustado para que quede en el centro del anillo */
    left: 50%;
    transform: translateX(-50%);
    z-index: 7;
    opacity: 1;
}

/* Responsive */
@media (max-width: 480px) {
    .logo-container {
        width: 300px;
        height: 300px;
        transform: scale(0.8);
    }
}

.logo-container:hover .diamond,
.logo-container:hover .ring-gradient,
.logo-container:hover .cut-left,
.logo-container:hover .cut-right,
.logo-container:hover .circle-decorativo {
    animation: global-glow 1.8s infinite ease-in-out;
    border-color: rgba(255, 255, 255, 0.6);
}
