    /* =======================
       RESET BÁSICO Y ESTILOS GENERALES
       ======================= */
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }
    body {
        font-family: Arial, sans-serif;
        font-size: 16px;
        margin: 0;
        padding: 0;
    }

    html {
      scroll-behavior: smooth;
    }


    .container {
        width: 100%;
        position: relative;
    }


    @font-face {
        font-family: 'great_vibesregular';
        src: url('/fonts/Raleway-Regular.woff2') format('woff2'),
            url('/fonts/Raleway-Regular.woff') format('woff'),
            url('/fonts/Raleway-Regular.ttf') format('truetype');
    }

    @font-face {
        font-family: 'poiret_oneregular';
        src: url('/fonts/Raleway-Regular.woff2') format('woff2'),
            url('/fonts/Raleway-Regular.woff') format('woff'),
            url('/fonts/Raleway-Regular.ttf') format('truetype');
    }

    @font-face {
      font-family: 'Raleway-SemiBold';
      src: url('/fonts/Raleway-SemiBold.woff2') format('woff2'),
          url('/fonts/Raleway-SemiBold.woff') format('woff'),
          url('/fonts/Raleway-SemiBold.ttf') format('truetype');
  }

    /* =======================
       DIV 1: OVERLAY INICIAL
       ======================= */
    #div-1 {
        width: 100%;
        height: 100vh;
        background-color: #348CB2;
        background-size: cover;
        background-position: center;
        display: none;               /* Oculto por defecto */
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 10;
    }
    #div-1.visible {
        display: flex;
    }
    #div-1 a {
        color: rgb(33, 8, 8);
        text-decoration: none;
        font-size: 1.125rem;
        position: absolute;
        bottom: 0;
    }
    #div-1 a:hover,
    #div-1 a:active {
        color: #e0e0e0;
    }

    /* =======================
       CONTENEDOR PRINCIPAL DE CONTENIDO
       ======================= */
    .content-container {
        width: 100%;
        position: relative;
        z-index: 3;
        margin-top: 0;
    }

    /* =======================
       DIVS 2 A 13: ESTILOS BÁSICOS Y COLORES DE FONDO
       ======================= */
    #div-2, #div-3, #div-4, #div-5, #div-6, #div-7, #div-8, #div-9, #div-10, #div-11, #div-12, #div-13 {
        width: 100%;
        padding: 0;
        overflow-x: hidden;
        position: relative;
    }
    #div-2 { background-color: #ffffff; }
    #div-2 { --background-color1: #ededed; }
    #div-3 { background-color: #ededed; }
    #div-3 { --background-color1: #ededed; }
    #div-4 { background-color: #ffffff; }
    #div-4 { --background-color1: #000000; }
    #div-5 { background-color: #dbdbdb; }
    #div-5 { --background-color1: #000; }
    #div-6 { background-color: #e2e2e2; }
    #div-6 { --background-color1: #000; }
    #div-7 { background-color: #e8e8e8; }
    #div-7 { --background-color1: #000; }
    #div-8 { background-color: #eeeeee; }
    #div-8 { --background-color1: #000; }
    #div-9 { background-color: #ffffff; }
    #div-9 { --background-color1: #000; }
    #div-10 { background-color: #000000; }
    #div-10 { --background-color1: #000; }
    #div-11 { background-color: #ffffff; }
    #div-11 { --background-color1: #000; }
    #div-12 { background-color: #787878; }
    #div-12 { --background-color1: #000; }
    #div-13 { background-color: #727272; }
    #div-13 { --background-color1: #000; }
    #footer { background-color: #000000; }

    /* FONDOS DE IMAGEN Y OVERLAY (clases compartidas) */
    [id^="div-"].background-image {
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
    }
    #div-2.background-image { background-image: url('/img/bg.webp'); }
    #div-3.background-image { background-image: url('/img/bannerBG1_1.webp'); }
    #div-4.background-image { background-image: url('/img/perspectiva.png'); }
    #div-5.background-image { background-image: url('/img/bannerBG1_1.webp'); }
    #div-6.background-image { background-image: url('/img/bannerBG1_1.webp'); }
    #div-7.background-image { background-image: url('/img/bannerBG1_1.webp'); }
    #div-8.background-image { background-image: url('/img/bannerBG1_1.webp'); }
    #div-9.background-image { background-image: url('/img/bannerBG1_1.webp'); }
    #div-10.background-image { background-image: url('/img/bannerBG1_1.webp'); }
    #div-11.background-image { background-image: url('/img/bg.webp'); }
    #div-12.background-image { background-image: url('/img/bg.webp'); }
    #div-13.background-image { background-image: url('/img/bg.webp'); }
    [id^="div-"].background-image.overlay-active::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
        pointer-events: none;
    }
    /* COLORES DE OVERLAY ESPECÍFICOS */
    #div-2.background-image.overlay-active::after { background-color: rgba(0, 128, 0, 0.5); }
    #div-3.background-image.overlay-active::after { background-color: rgba(0, 128, 0, 0.5); }
    #div-4.background-image.overlay-active::after { background-color: rgba(238, 238, 238, 0.957); }
    #div-5.background-image.overlay-active::after { background-color: rgba(5, 17, 131, 0.639); }
    #div-6.background-image.overlay-active::after { background-color: rgba(255, 255, 0, 0.5); }
    #div-7.background-image.overlay-active::after { background-color: rgba(128, 0, 128, 0.5); }
    #div-8.background-image.overlay-active::after { background-color: rgba(0, 255, 255, 0.5); }
    #div-9.background-image.overlay-active::after { background-color: rgba(255, 165, 0, 0.5); }
    #div-10.background-image.overlay-active::after { background-color: rgba(128, 128, 128, 0.5); }
    #div-11.background-image.overlay-active::after { background-color: rgba(255, 192, 203, 0.5); }
    #div-12.background-image.overlay-active::after { background-color: rgba(128, 128, 128, 0.5); }
    #div-13.background-image.overlay-active::after { background-color: rgba(255, 192, 203, 0.5); }

    /* CONTENIDO DENTRO DE CADA DIV */
    .content {
        position: relative;
        z-index: 2;
        max-width: 1400px;
        margin: 0 auto;
        padding: 20px;
        box-sizing: border-box;
    }
    @media (min-width: 2100px) {
        .content {
            max-width: 2500px;
            z-index: 25;
        }
    }

    /* =======================
       FOOTER
       ======================= */
    footer {
        width: 100%;
        background-color: #000000;
        color: white;
        padding: 40px 20px;
    }
    .footer-content {
        max-width: 1200px;
        margin: 0 auto;
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 20px;
    }
    .footer-section h3 {
        font-size: 1.125rem;
        margin-bottom: 1px;
    }
    .footer-section ul {
        list-style: none;
    }
    .footer-section ul li {
        margin-bottom: 10px;
    }
    .footer-section a {
        color: #807f7f;
        text-decoration: none;
        font-size: 0.875rem;
        transition: color 0.3s ease;
    }
    .footer-section a:hover,
    .footer-section a:active {
        color: white;
    }

    .footer-section ul li a {
        transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
        position: relative;
        display: inline-block;
    }
    .footer-section ul li a::after {
        content: "";
        transition: transform 0.3s cubic-bezier(0.4,0,0.2,1), color 0.3s cubic-bezier(0.4,0,0.2,1);
        display: inline-block;
        margin-left: 4px;
        color: #E6220D;
        opacity: 0;
    }
    .footer-section ul li a:hover,
    .footer-section ul li a:active {
        transform: translateX(10px);
    }
    .footer-section ul li a:hover::after,
    .footer-section ul li a:active::after {
        content: " –";
        color: #E6220D;
        opacity: 1;
        transform: translateX(10px);
    }

    /* Asegurarnos de que el enlace "Suscribirse" siempre sea blanco */
    .footer-section a.cta-button {
    color: #ffffff;
    }

    /* Y que siga siendo blanco también al pasar el ratón */
    .footer-section a.cta-button:hover {
    color: #ffffff !important;
    }

    /* Asegurar que la sección services del footer no herede estilos de .services */
    .footer-section.services {
        background: none !important;
        padding: 0 !important;
    }

    .contact-info p {
        font-size: 0.875rem;
        margin-bottom: 10px;
    }
    .social-links a {
        display: inline-block;
        margin-right: 10px;
        font-size: 1.25rem;
    }
    .cta-button {
        display: inline-block;
        padding: 10px 20px;
        background-color: #338CB4;
        color: white;
        text-decoration: none;
        border-radius: 5px;
        font-size: 0.875rem;
        margin-top: 10px;
        transition: background-color 0.3s ease;
    }
    .cta-button:hover,
    .cta-button:active {
        background-color: #1565c0;
    }
    .footer-bottom {
        text-align: center;
        padding-top: 20px;
        border-top: 1px solid #444;
        margin-top: 20px;
        font-size: 0.875rem;
    }
    .footer-bottom img {
        max-width: 100px;
        margin-bottom: 10px;
    }

    /* Estilos para móvil (≤ 768px), los que hacen que el footer sea UNA COLUMNA */
    @media (max-width: 768px) {
        .footer-content {
            /* En móvil: mostramos cada .footer-section en una fila */
            display: flex !important;
            flex-direction: column;
            grid-template-columns: none !important;
            text-align: center;
        }
        .footer-section {
            margin-bottom: 20px;
        }
        .social-links a {
            margin: 0 5px;
        }
        .footer-bottom img {
            max-width: 80px;
        }
        .footer-section a {
            font-size: 1.125rem;
        }
    }

    /* =======================
    SCROLLBAR PERSONALIZADO
    ======================= */
    body {
        --sb-track-color: #ffffff;
        --sb-thumb-color: #03354A;
        --sb-size: 16px;
        }

        body::-webkit-scrollbar {
        width: var(--sb-size);
        }

        body::-webkit-scrollbar-track {
        background: var(--sb-track-color);
        border-radius: 0px;
        }

        body::-webkit-scrollbar-thumb {
        background: var(--sb-thumb-color);
        border-radius: 4px;
        border: 2px solid #ffffff;
        }

        /* Fallback para navegadores que no soporten ::-webkit-scrollbar */
        @supports not selector(::-webkit-scrollbar) {
        body {
            scrollbar-color: var(--sb-thumb-color) var(--sb-track-color);
            scrollbar-width: thin;
        }
    }



    /* =======================
       BOTÓN "SCROLL TO TOP"
       ======================= */
    .progress-wrap {
        position: fixed;
        bottom: 40px;
        right: 30px;
        height: 46px;
        width: 46px;
        border-radius: 50%;
        background-color: #ffffff;
        border: 2px solid #cccccc;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
        cursor: pointer;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease;
        z-index: 1000;
    }
    .progress-wrap.active {
        opacity: 1;
        visibility: visible;
    }
    .progress-wrap::after {
        content: '\2191';
        font-size: 1.5rem;
        color: #1f2029;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        line-height: 46px;
    }
    .progress-wrap:hover::after {
        color: #03354a;
    }
    .progress-circle {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        transform: rotate(-90deg);
    }
    .progress-circle path {
        stroke: #03354a;
        stroke-width: 7px;
        fill: none;
        stroke-dasharray: 308;
        stroke-dashoffset: 308;
        transition: stroke-dashoffset 0.3s ease;
    }
    @media (max-width: 840px) {
        .progress-wrap {
            bottom: 10px;
            right: 10px;
        }
    }

    /* =======================
       STICKY LINKS LATERALES
       ======================= */
    #sticky-links {
        position: fixed;
        top: 50%;
        right: 10px;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        z-index: 8;
        transform: translateY(-50%);
    }
    .sticky-link {
        width: 25px;
        height: 25px;
        background-color: #ffffff;
        border: 1px solid #000000;
        border-radius: 50%;
        margin-bottom: 25px;
        cursor: pointer;
        position: relative;
        transition: background-color 0.3s ease, border 0.3s ease;
        display: block;
    }
    .sticky-link:hover {
        background-color: #ff6200;
        border: 2px solid #000000;
    }
    .sticky-link.active {
        background-color: #348CB2;
        border: 1px solid #000000;
    }
    .sticky-link:hover.active {
        background-color: #ff6200;
        border: 2px solid #000000;
    }
    .sticky-link::after {
        content: attr(data-tooltip);
        position: absolute;
        right: 35px;
        top: 50%;
        transform: translateY(-50%);
        background-color: #333;
        color: #fff;
        padding: 5px 10px;
        border-radius: 4px;
        font-size: 0.75rem;
        white-space: nowrap;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0.3s ease;
    }
    .sticky-link:hover::after {
        opacity: 1;
        visibility: visible;
    }

    /* =======================
       MENÚ STICKY PRINCIPAL
       ======================= */
    #menu {
        width: 100%;
        background-color: #348CB2;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.406);
        position: sticky;
        top: 0;
        z-index: 9;
        margin: 0;
        padding: 0;
    }
    .menu-container {
        max-width: 1200px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px 20px;
    }
    .menu-items {
        display: flex;
        list-style: none;
    }
    .menu-items li {
        position: relative;
        margin: 0 15px;
    }
    .menu-items a {
        text-decoration: none;
        color: #ffffff;
        font-size: 1rem;
        font-weight: 500;
        transition: color 0.3s ease;
    }
    .menu-items a:hover {
        color: #86b5c9;
        /* font-weight: bold; */
    }
    @media (min-width: 769px) {
        .menu-items li:nth-last-child(2) {
            position: absolute;
            right: 120px;
        }
        .menu-items li:last-child {
            position: absolute;
            right: 10px;
        }
        .menu-items li:hover .submenu {
            display: block;
        }
    }
    .submenu {
        display: none;
        position: absolute;
        background-color: #ffffff;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.405);
        top: 100%;
        left: 0;
        list-style: none;
        padding: 10px 0 55px;
        min-width: 250px;
        z-index: 10;
    }
    .submenu li {
        margin: 0;
        padding: 8px 10px;
    }
    .submenu a {
        font-size: 0.875rem;
        color: #333;
    }
    .submenu a:hover {
        color: #E6220D;
        /* font-weight: bold; */
    }

    /* =======================
       opcion ocultar
       ======================= */

      /* Ocultar en resoluciones menores o iguales a 840px */
      @media (max-width: 840px) {
        .ocultar-840 {
          display: none;
        }
      }

      @media (min-width: 841px) {
        .ocultar-840 {
          display: block; /* Puedes cambiar a inline-block, flex, etc. */
        }
      }


      /* Ocultar en resoluciones normales (entre 841px y 2000px) */
      @media (min-width: 841px) and (max-width: 2000px) {
        .ocultar-normal {
          display: none;
        }
      }

      @media (max-width: 840px), (min-width: 2001px) {
        .ocultar-normal {
          display: block;
        }
      }


      /* Ocultar en resoluciones mayores a 2000px */
      @media (min-width: 2001px) {
        .ocultar-2000 {
          display: none;
        }
      }

      @media (max-width: 2000px) {
        .ocultar-2000 {
          display: block;
        }
      }
    

    /* =======================
       HAMBURGER MENU PRINCIPAL (MÓVIL)
       ======================= */
    .menu-toggle {
        display: none;
        font-size: 1.5rem;
        cursor: pointer;
        color: #333;
    }
    @media (max-width: 768px) {
        #menu {
            width: 40px;
            height: 40px;
            background-color: #ffffff;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
            position: fixed;
            top: 0;
        }
        .menu-container {
            width: 40px;
            height: 40px;
            padding: 0;
            display: flex;
            justify-content: center;
            align-items: center;
            background-color: #ffffff;
        }
        .menu-toggle {
            display: block;
            font-size: 1.875rem;
            line-height: 40px;
            text-align: center;
            z-index: 10;
        }
        .menu-items {
            display: none;
            flex-direction: column;
            position: absolute;
            top: 35px;
            left: 0;
            width: 100vw;
            background-color: #000000;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
            padding: 10px 10px;
            z-index: 8;
        }
        .menu-items.active {
            display: flex;
        }
        .menu-toggle::before {
            content: '☰';
            color: #E6220D;
        }
        .menu-toggle.active::before {
            content: '✖';
            color: #E6220D;
            font-size: 1.875rem;
            font-weight: bold;
        }
        .menu-items li {
            margin: 10px 0;
            text-align: left;
        }
        .submenu {
            position: static;
            box-shadow: none;
            background-color: #f9f9f9;
        }
        .menu-items li.active .submenu {
            display: block;
        }
    }

    /* =======================
       HAMBURGER MENU LATERAL (ESCRITORIO & MÓVIL)
       ======================= */
    #hamburger-menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 45px;
        height: 45px;
        background-color: rgba(255, 255, 255, 0.9);
        border-radius: 8px;
        z-index: 9;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        margin: 0;
    }
    .hamburger-toggle {
        width: 40px;
        height: 40px;
        cursor: pointer;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: transform 0.3s ease;
    }
    .hamburger-toggle span {
        width: 30px;
        height: 3px;
        background-color: #333;
        position: absolute;
        transition: all 0.3s ease;
    }
    .hamburger-toggle span::before,
    .hamburger-toggle span::after {
        content: '';
        width: 30px;
        height: 3px;
        background-color: #333;
        position: absolute;
        transition: all 0.3s ease;
    }
    .hamburger-toggle span::before {
        transform: translateY(-10px);
    }
    .hamburger-toggle span::after {
        transform: translateY(10px);
    }
    .hamburger-toggle.active span {
        background-color: transparent;
    }
    .hamburger-toggle.active span::before {
        transform: translateY(0) rotate(45deg);
        background-color: #ff0000;
    }
    .hamburger-toggle.active span::after {
        transform: translateY(0) rotate(-45deg);
        background-color: #ff0000;
    }
    .hamburger-toggle:hover {
        transform: scale(1.1);
    }
    .hamburger-toggle:hover span,
    .hamburger-toggle:hover span::before,
    .hamburger-toggle:hover span::after {
        background-color: #1e90ff;
    }
    .hamburger-menu-items {
        display: none;
        position: fixed;
        top: 50px;
        left: 0;
        width: 250px;
        background-color: #fff;
        box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
        padding: 20px;
        flex-direction: column;
        z-index: 8;
    }
    .hamburger-menu-items.active {
        display: flex;
    }
    .hamburger-menu-items li {
        margin: 15px 0;
        position: relative;
    }
    .hamburger-menu-items a {
        text-decoration: none;
        color: #333;
        font-size: 1rem;
        font-weight: 500;
        transition: color 0.3s ease;
    }
    .hamburger-menu-items a:hover {
        color: #1e90ff;
    }
    .hamburger-submenu {
        display: none;
        list-style: none;
        padding-left: 20px;
        margin-top: 10px;
    }
    .hamburger-menu-items li.active .hamburger-submenu {
        display: block;
    }
    .hamburger-submenu li {
        margin: 10px 0;
    }
    .hamburger-submenu a {
        font-size: 0.875rem;
        color: #666;
    }
    .hamburger-submenu a:hover {
        color: #1e90ff;
    }
    @media (max-width: 768px) {
        .hamburger-menu-items {
            width: 70%;
        }
    }
    @media (min-width: 769px) {
        .hamburger-toggle {
            display: flex;
        }
        .hamburger-menu-items {
            top: 50px;
            left: 0;
            width: 250px;
        }
        .hamburger-menu-items li:hover .hamburger-submenu,
        .hamburger-menu-items li.hover-active .hamburger-submenu {
            display: block;
        }
        .hamburger-submenu {
            position: static;
            background-color: #f9f9f9;
            padding-left: 20px;
            margin-top: 10px;
        }
        .hamburger-submenu li {
            padding: 8px 0;
        }
    }

    /* =======================
       COOKIE CONSENT
       ======================= */
    #cookie-consent {
        display: none;
        position: fixed;
        bottom: 20px;
        left: 20px;
        right: 20px;
        background-color: rgba(0, 0, 0, 0.8);
        color: #ffffff;
        padding: 20px;
        border-radius: 8px;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
        z-index: 1001;
        max-width: 500px;
        margin: 0 auto;
    }
    #cookie-consent p {
        font-size: 0.875rem;
        margin-bottom: 15px;
        line-height: 1.5;
    }
    #cookie-consent a {
        color: #1e90ff;
        text-decoration: underline;
        transition: color 0.3s ease;
    }
    #cookie-consent a:hover {
        color: #1565c0;
    }
    .cookie-buttons {
        display: flex;
        gap: 10px;
        justify-content: flex-end;
    }
    .cookie-button {
        padding: 10px 20px;
        border: none;
        border-radius: 5px;
        font-size: 0.875rem;
        cursor: pointer;
        transition: background-color 0.3s ease;
    }
    #cookie-accept {
        background-color: #28a745;
        color: #ffffff;
    }
    #cookie-accept:hover {
        background-color: #218838;
    }
    #cookie-reject {
        background-color: #6c757d;
        color: #ffffff;
    }
    #cookie-reject:hover {
        background-color: #5a6268;
    }
    #cookie-configure {
        background-color: #ffc107;
        color: #000000;
    }
    #cookie-configure:hover {
        background-color: #e0a800;
    }
    #cookie-preferences {
        margin-top: 15px;
        padding: 10px;
        background-color: rgba(255, 255, 255, 0.1);
        display: none;  /* Oculto por defecto */
    }
    #cookie-preferences h3 {
        font-size: 1rem;
        margin-bottom: 10px;
    }
    #cookie-preferences label {
        display: block;
        margin-bottom: 8px;
    }
    #cookie-save {
        background-color: #1e90ff;
        color: #ffffff;
        padding: 10px 20px;
        border: none;
        border-radius: 5px;
        font-size: 0.875rem;
        cursor: pointer;
        transition: background-color 0.3s ease;
    }
    #cookie-save:hover {
        background-color: #1565c0;
    }
    @keyframes bounceInZoomIn {
        0% {
            opacity: 0;
            transform: scale(0.7);
        }
        50% {
            opacity: 0.5;
            transform: scale(1.1);
        }
        70% {
            opacity: 0.8;
            transform: scale(0.95);
        }
        100% {
            opacity: 1;
            transform: scale(1);
        }
    }
    #cookie-consent.active {
        display: block;
        animation: bounceInZoomIn 0.6s ease;
    }
    @media (max-width: 768px) {
        #cookie-consent {
            bottom: 10px;
            left: 10px;
            right: 10px;
            padding: 15px;
        }
        .cookie-buttons {
            flex-direction: column;
            gap: 8px;
        }
        .cookie-button {
            width: 100%;
            text-align: center;
        }
    }

    /* =======================
       COSITAS LATERAL (SOLO LINKS Y CONTROLES DE FUENTE)
       ======================= */
    #cositas {
        font-size: 16px !important;
        display: none;
        position: fixed;
        top: 50%;
        left: -310px;
        transform: translateY(-50%);
        width: 350px;
        height: 150px;
        z-index: 10;
        transition: left 0.3s ease;
    }
    #cositas.active {
        left: -10px;
    }
    .cositas-container {
        display: flex;
        width: 100%;
        height: 150px;
    }
    .cositas-options {
        width: 310px;
        height: 150px;
        background-color: #ffffff;
        color: #000000;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        padding: 10px;
        /* Quitamos overflow-y para que no haga scroll aquí */
    }
    .cositas-font-controls {
        width: 50px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .cositas-font-button {
        background-color: #f0f0f0;
        border: 1px solid #ccc;
        border-radius: 4px;
        padding: 2px 4px;
        margin: 5px 0;
        font-size: 1rem;
        cursor: pointer;
        transition: background-color 0.3s ease;
    }
    .cositas-font-button:hover {
        background-color: #E6220D;
        color: #ffffff;
    }
    .cositas-links {
        width: 180px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
    }
    .cositas-games {
        width: 60px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
    }
    .cositas-options a {
        color: #000000;
        text-decoration: none;
        margin: 5px 0;
        cursor: pointer;
        transition: color 0.3s ease;
        font-size: 0.875rem;
    }
    .cositas-options a:hover {
        color: #E6220D;
        font-weight: bold;
    }
    .cositas-novedades {
        width: 40px;
        height: 150px;
        background-color: #E6220D;
        color: #ffffff;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 0.75rem;
        cursor: pointer;
        text-align: center;
        writing-mode: vertical-rl;
        transform: rotate(180deg);
    }
    @media (max-width: 768px) {
        #cositas {
            left: -180px;
            width: 250px;
            height: 170px;
        }
        #cositas.active {
            left: -10px;
        }
        .cositas-container {
            height: 170px;
        }
        .cositas-options {
            width: 180px;
            height: 170px;
            flex-direction: column;
            justify-content: flex-start;
            padding: 5px;
        }
        .cositas-novedades {
            font-size: 0.625rem;
            height: 170px;
        }
        .cositas-font-controls {
            width: 100%;
            flex-direction: row;
            justify-content: center;
            margin-bottom: 5px;
        }
        .cositas-font-button {
            font-size: 0.875rem;
            margin: 0 5px;
            padding: 3px 8px;
        }
        .cositas-links {
            width: 100%;
            align-items: center;
            display: flex;
            flex-direction: column;
        }
        .cositas-links a {
            margin-bottom: -10px;
            display: block;
            text-align: center;
        }
        .cositas-links a:last-child {
            margin-bottom: 0;
        }
        .cositas-games {
            width: 100%;
            align-items: center;
        }
        .cositas-options a {
            font-size: 0.75rem;
        }
    }

    /* =======================
       MODAL DE COSITAS
       ======================= */
    .cositas-modal {
        display: none;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 80vw;
        height: 80vh;
        border-radius: 5px;
        background-color: #e9e9e9;
        z-index: 100;
        justify-content: center;
        align-items: center;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.44);
    }
    .cositas-modal.active {
        display: flex;
    }
    .cositas-modal-content {
        font-size: 1.5rem;
        color: #000000;
        text-align: center;
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .cositas-modal-content p {
        margin-bottom: 2px;
    }
    .game-buttons {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        justify-content: center;
    }
    .game-button {
        padding: 3px 6px;
        background-color: #1e90ff;
        color: #ffffff;
        border: none;
        border-radius: 5px;
        font-size: 1rem;
        cursor: pointer;
        transition: background-color 0.3s ease;
    }
    .game-button:hover {
        background-color: #1565c0;
    }
    .game-iframe {
        width: 100%;
        height: 80%;
        border: none;
        margin-top: 5px;
        display: none;
    }
    .cositas-modal-close {
        position: absolute;
        top: 5px;
        right: 5px;
        font-size: 1.5rem;
        color: #ff0000;
        cursor: pointer;
        font-weight: bold;
    }
    .cositas-modal-close:hover {
        color: #cc0000;
    }
    .modal-overlay {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: 99;
    }
    .modal-overlay.active {
        display: block;
    }

    /* =======================
       MODAL SUSCRIPCIÓN
       ======================= */
    .subscribe-modal {
        display: none;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 50vw;
        height: 50vh;
        background-color: #ffffff;
        z-index: 100;
        justify-content: center;
        align-items: center;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
        border-radius: 8px;
    }
    .subscribe-modal.active {
        display: flex;
    }
    .subscribe-modal-content {
        font-size: 1.5rem;
        color: #000000;
        text-align: center;
    }
    .subscribe-modal-close {
        position: absolute;
        top: 10px;
        right: 10px;
        font-size: 1.5rem;
        color: #ff0000;
        cursor: pointer;
        font-weight: bold;
    }
    .subscribe-modal-close:hover {
        color: #cc0000;
    }
    @media (max-width: 768px) {
        .subscribe-modal {
            width: 80vw;
            height: 60vh;
        }
        .subscribe-modal-content {
            font-size: 1.125rem;
        }
        .subscribe-modal-close {
            font-size: 1.25rem;
        }
    }

    /* =======================
       MODAL "ACERCA DE" (USANDO CLASE .about-us-modal)
       ======================= */
    .about-us-modal {
        display: none;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 95vw;
        height: 90vh;
        background-color: #ffffff;
        z-index: 100;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
        border-radius: 8px;
    }
    .about-us-modal.active {
        display: flex;
    }
    .about-us-modal-content {
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .modal-iframe {
        width: 100%;
        height: 100%;
        border: none;
    }
    .about-us-modal-close {
        position: absolute;
        top: 10px;
        right: 10px;
        font-size: 1.5rem;
        color: #ff0000;
        cursor: pointer;
        font-weight: bold;
    }
    .about-us-modal-close:hover {
        color: #cc0000;
    }
    @media (max-width: 768px) {
        .about-us-modal {
            width: 98vw;
            height: 95vh;
        }
        .about-us-modal-close {
            font-size: 1.25rem;
        }
    }

    /* =======================
       MODAL "SOBRE TUNJA" (ANIMACIÓN SCALE)
       ======================= */
    .about-tunja-modal {
        display: none;
        position: fixed;
        top: 0;
        right: 0;
        width: 50vw;
        height: 90vh;
        background-color: #ffffff;
        z-index: 100;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
        border-radius: 8px;
        animation: scaleIn 1s ease forwards;
    }
    @keyframes scaleIn {
        0% {
            transform: scale(0.3);
        }
        100% {
            transform: scale(1);
        }
    }
    .about-tunja-modal.active {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .about-tunja-modal-content {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 20px;
        text-align: justify;
    }
    .about-tunja-modal-content img {
        max-width: 100%;
        height: auto;
        margin-bottom: 20px;
    }
    .about-tunja-modal-content h3 {
        font-size: 1.5rem;
        margin-bottom: 15px;
        text-align: center;
    }
    .about-tunja-modal-content p {
        font-size: 1rem;
        line-height: 1.5;
    }
    .about-tunja-modal-close {
        position: absolute;
        top: 10px;
        right: 10px;
        font-size: 1.5rem;
        color: #ff0000;
        cursor: pointer;
        font-weight: bold;
    }
    .about-tunja-modal-close:hover {
        color: #cc0000;
    }
    @media (max-width: 840px) {
        .about-tunja-modal {
            width: 90vw;
            height: 80vh;
        }
        .about-tunja-modal-content h3 {
            font-size: 1.25rem;
        }
        .about-tunja-modal-content p {
            font-size: 0.875rem;
        }
        .about-tunja-modal-close {
            font-size: 1.25rem;
        }
    }

    /* =======================
       MODAL "SERVICIOS" (REUSA .about-us-modal)
       ======================= */
    #services-modal {
        width: 70vw;
        height: 70vh;
    }
    @media (max-width: 768px) {
        #services-modal {
            width: 98vw;
            height: 95vh;
        }
    }

/* =============================
   MODAL-4 (cositas-modal) yty656 - TRANSICIÓN SUAVE
   ============================= */
   #modal-4.yty656 {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: auto !important;
    height: 100vh !important;
    width: 600px !important;
    max-width: 100vw !important;
    background: #fff;
    z-index: 1200;
    box-shadow: -2px 0 16px rgba(0,0,0,0.18);
    flex-direction: column;
    margin: 0 !important;
    border-radius: 0 !important;
    transform: translateX(100%);
    opacity: 0;
    pointer-events: none;
    transition: transform 1.5s cubic-bezier(.77,0,.18,1), opacity 0.5s;
    display: flex !important;
  }
  #modal-4.yty656.active {
    transform: translateX(0) !important;
    opacity: 1;
    pointer-events: auto;
  }
  @media (max-width: 700px) {
    #modal-4.yty656 {
      width: 340px !important;
    }
  }
  #modal-4.yty656 .cositas-modal-close {
    position: absolute;
    top: 16px;
    left: 16px;
    font-size: 1.5rem;
    cursor: pointer;
    z-index: 2;
  }
  /* Fin modal-4 yty656 - TRANSICIÓN SUAVE */


  /* =============================
   MODAL-5 (cositas-modal) yty656 - MODAL-5
   ============================= */
#modal-5.yty656 {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  height: 100vh !important;
  width: 800px !important;
  max-width: 100vw !important;
  background: #fff;
  z-index: 1200;
  box-shadow: 2px 0 16px rgba(0,0,0,0.18);
  flex-direction: column;
  margin: 0 !important;
  border-radius: 0 !important;
  transform: translateX(-100%);
  opacity: 0;
  pointer-events: none;
  transition: transform 1.5s cubic-bezier(.77,0,.18,1), opacity 0.5s;
  display: flex !important;
}
#modal-5.yty656.active {
  transform: translateX(0) !important;
  opacity: 1;
  pointer-events: auto;
}
@media (max-width: 700px) {
  #modal-5.yty656 {
    width: 360px !important;
  }
}
#modal-5.yty656 .cositas-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  font-size: 1.5rem;
  cursor: pointer;
  z-index: 2;
}
/* Fin modal-5 yty656 - MODAL-5 */


    /* =======================
       TIPOS DE LETRA / FORMATO DE TEXTO
       ======================= */
    /* Tamaños fluidos basados en rem + vw. Escalan al pulsar A+ / A– ajustando font-size de <html> */
    h1 {
        font-family: 'poiret_oneregular', Arial, sans-serif;
        font-size: calc(1.5rem + 1.5vw) !important;
        line-height: calc(2rem + 2vw) !important;
    }

    h2 {
        font-family: 'poiret_oneregular', Arial, sans-serif;
        font-size: calc(1.25rem + 1.1vw) !important;
        line-height: calc(1.75rem + 1.8vw) !important;
    }
    h3 {
        font-family: 'poiret_oneregular', Arial, sans-serif;
        font-size: calc(1.125rem + 1vw) !important;
        line-height: calc(1.5rem + 1.5vw) !important;
    }
    h4 {
        font-family: 'poiret_oneregular', Arial, sans-serif;
        font-size: calc(1rem + 1vw) !important;
        line-height: calc(1.25rem + 1vw) !important;
    }
    h5 {
        font-family: 'poiret_oneregular', Arial, sans-serif;
        font-size: calc(0.875rem + 0.8vw) !important;
        line-height: calc(1.125rem + 0.8vw) !important;
    }
    h6 {
        font-size: calc(0.75rem + 0.5vw) !important;
        line-height: calc(1rem + 0.5vw) !important;
    }
    p {
        font-family: 'poiret_oneregular', Arial, sans-serif;
        font-size: calc(1rem + 0.3vw) !important;
        line-height: calc(1.5rem + 0.5vw) !important;
    }

/* =======================
   AJUSTES MÓVILES
   ======================= */
@media screen and (max-width: 840px) {
    p {
        font-size: 1.1rem !important; /* 17px */
    }
}


    /* =======================
        PÁRRAFOS MÁS PEQUEÑOS EN VISTA NORMAL
        ======================= */
    @media (min-width: 841px) {
        .p-small {
          font-size: 1rem !important;
        line-height: calc(0.75rem + 0.25vw);
        }
    }    

    /* Colores disponibles para títulos y párrafos */
    .text-black   { color: #000000 !important; }
    .text-white   { color: #ffffff !important; }
    .text-orange  { color: #E6220D !important; }
    .text-blue  { color: #03354A !important; }

    /* Alineaciones de texto */
    .text-left    { text-align: left !important; }
    .text-center  { text-align: center !important; }
    .text-right   { text-align: right !important; }
    .text-justify { text-align: justify !important; }

    /* Peso de fuente */
    .font-normal  { font-weight: normal; }
    .font-400     { font-weight: 400; }
    .font-bold    { font-weight: bold; }

    /* =======================
       ENLACES / VÍNCULOS
       ======================= */
    .enlace {
        color: #100e0d;
        text-decoration: none;
        font-weight: normal;
        transition: color 0.3s ease, font-weight 0.3s ease, text-decoration 0.3s ease;
    }
    .enlace:hover {
        font-weight: bold;
        text-decoration: underline;
    }

    /* =======================
       ANIMACIONES DE MOVIMIENTO (DIRECCIONES)
       ======================= */
    .animated {
        opacity: 0;
        transition: transform 2s ease-out, opacity 2s ease-out;
        text-align: center;
    }
    .animated.visible {
        opacity: 1;
        transform: translate(0, 0);
    }
    .move-right { transform: translateX(-100%); }
    .move-left  { transform: translateX(100%);  }
    .move-up    { transform: translateY(100%);  }
    .move-down  { transform: translateY(-100%); }

    /* =======================
       ANIMACIONES DE ESCALA Y MÁS
       ======================= */
    img {
        max-width: 100%;
        height: auto;
        display: block;
        margin: 0 auto;
    }
    .escalar {
        opacity: 0;
        transition: all 1s ease-out;
    }
    .escalar.visible {
        opacity: 1;
    }
    .escalar.scale {
        transform: scale(0.5);
    }
    .escalar.scale.visible {
        transform: scale(1);
    }
    .escalar.slide-up {
        transform: translateY(50px);
    }
    .escalar.slide-up.visible {
        transform: translateY(0);
    }
    .escalar.rotate {
        transform: rotate(-15deg) scale(0.8);
    }
    .escalar.rotate.visible {
        transform: rotate(0deg) scale(1);
    }
    .escalar.bounce-in {
        transform: scale(1.3);
    }
    .escalar.bounce-in.visible {
        transform: scale(1);
        animation: bounce 1s ease-out;
    }
    @keyframes bounce {
        0%   { transform: scale(1.3); }
        50%  { transform: scale(0.8); }
        100% { transform: scale(1);   }
    }
    .escalar.swing-in {
        transform: rotate(20deg);
        transform-origin: center top;
    }
    .escalar.swing-in.visible {
        transform: rotate(0deg);
        animation: swing 1s ease-out;
    }
    @keyframes swing {
        0%  { transform: rotate(20deg); }
        40% { transform: rotate(-10deg); }
        70% { transform: rotate(5deg); }
        100%{ transform: rotate(0deg);  }
    }

    /* =======================
       IMÁGENES PARA FICHAS (.casate)
       ======================= */
    .casate {
        width: auto;
        height: 150px;
        transition: transform 0.3s ease;
    }
    .casate:hover {
        animation: bounce 0.6s ease;
    }
    @media (max-width: 840px) {
        .casate {
            width: auto;
            height: 60px;
        }
    }


/* =======================
   COMPONENTES BOTONES
   ======================= */

/* ---------- Botón 1 - Versión Original ---------- */
.btn1-original {
  all: unset;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  position: relative;
  border-radius: 100em;
  background-color: rgba(0, 0, 0, 0.75);
  box-shadow:
    -0.15em -0.15em 0.15em -0.075em rgba(5, 5, 5, 0.25),
    0.0375em 0.0375em 0.0675em 0 rgba(5, 5, 5, 0.1);
}
.btn1-original::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: calc(100% + 0.3em);
  height: calc(100% + 0.3em);
  top: -0.15em;
  left: -0.15em;
  border-radius: inherit;
  background: linear-gradient(
    -135deg,
    rgba(5, 5, 5, 0.5),
    transparent 20%,
    transparent 100%
  );
  filter: blur(0.0125em);
  opacity: 0.25;
  mix-blend-mode: multiply;
}
.btn1-original .btn1-outer {
  position: relative;
  z-index: 1;
  border-radius: inherit;
  transition: box-shadow 300ms ease;
  will-change: box-shadow;
  box-shadow:
    0 0.05em 0.05em -0.01em rgba(5, 5, 5, 1),
    0 0.01em 0.01em -0.01em rgba(5, 5, 5, 0.5),
    0.15em 0.3em 0.1em -0.01em rgba(5, 5, 5, 0.25);
}
.btn1-original:hover .btn1-outer {
  box-shadow:
    0 0 0 0 rgba(5, 5, 5, 1),
    0 0 0 0 rgba(5, 5, 5, 0.5),
    0 0 0 0 rgba(5, 5, 5, 0.25);
}
.btn1-original .btn1-inner {
  --inset: 0.035em;
  position: relative;
  z-index: 1;
  border-radius: inherit;
  padding: 1em 1.5em;
  background-image: linear-gradient(
    135deg,
    rgba(230, 230, 230, 1),
    rgba(180, 180, 180, 1)
  );
  transition:
    box-shadow 300ms ease,
    clip-path 250ms ease,
    background-image 250ms ease,
    transform 250ms ease;
  will-change: box-shadow, clip-path, background-image, transform;
  overflow: clip;
  clip-path: inset(0 0 0 0 round 100em);
  box-shadow:
    0 0 0 0 inset rgba(5, 5, 5, 0.1),
    -0.05em -0.05em 0.05em 0 inset rgba(5, 5, 5, 0.25),
    0 0 0 0 inset rgba(5, 5, 5, 0.1),
    0 0 0.05em 0.2em inset rgba(255, 255, 255, 0.25),
    0.025em 0.05em 0.1em 0 inset rgba(255, 255, 255, 1),
    0.12em 0.12em 0.12em inset rgba(255, 255, 255, 0.25),
    -0.075em -0.25em 0.25em 0.1em inset rgba(5, 5, 5, 0.25);
}
.btn1-original:hover .btn1-inner {
  clip-path: inset(
    clamp(1px, 0.0625em, 2px) clamp(1px, 0.0625em, 2px)
      clamp(1px, 0.0625em, 2px) clamp(1px, 0.0625em, 2px) round 100em
  );
  box-shadow:
    0.1em 0.15em 0.05em 0 inset rgba(5, 5, 5, 0.75),
    -0.025em -0.03em 0.05em 0.025em inset rgba(5, 5, 5, 0.5),
    0.25em 0.25em 0.2em 0 inset rgba(5, 5, 5, 0.5),
    0 0 0.05em 0.5em inset rgba(255, 255, 255, 0.15),
    0 0 0 0 inset rgba(255, 255, 255, 1),
    0.12em 0.12em 0.12em inset rgba(255, 255, 255, 0.25),
    -0.075em -0.12em 0.2em 0.1em inset rgba(5, 5, 5, 0.25);
}
.btn1-original .btn1-inner span {
  position: relative;
  z-index: 4;
  font-family: "Inter", sans-serif;
  letter-spacing: -0.05em;
  font-weight: 500;
  color: rgba(0, 0, 0, 0);
  background-image: linear-gradient(
    135deg,
    rgba(25, 25, 25, 1),
    rgba(75, 75, 75, 1)
  );
  -webkit-background-clip: text;
  background-clip: text;
  transition: transform 250ms ease;
  display: block;
  will-change: transform;
  text-shadow: rgba(0, 0, 0, 0.1) 0 0 0.1em;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn1-original:hover .btn1-inner span {
  transform: scale(0.975);
}
.btn1-original:active .btn1-inner {
  transform: scale(0.975);
}

/* ---------- Botón 1 - Versión Negra ---------- */
.btn1-black {
  all: unset;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  position: relative;
  border-radius: 100em;
  background-color: rgba(0, 0, 0, 1);
  box-shadow:
    -0.15em -0.15em 0.15em -0.075em rgba(0, 0, 0, 0.4),
    0.0375em 0.0375em 0.0675em 0 rgba(0, 0, 0, 0.2);
}
.btn1-black::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: calc(100% + 0.3em);
  height: calc(100% + 0.3em);
  top: -0.15em;
  left: -0.15em;
  border-radius: inherit;
  background: linear-gradient(
    -135deg,
    rgba(0, 0, 0, 0.5),
    transparent 20%,
    transparent 100%
  );
  filter: blur(0.0125em);
  opacity: 0.25;
  mix-blend-mode: multiply;
}
.btn1-black .btn1-outer {
  position: relative;
  z-index: 1;
  border-radius: inherit;
  transition: box-shadow 300ms ease;
  will-change: box-shadow;
  box-shadow:
    0 0.05em 0.05em -0.01em rgba(0, 0, 0, 1),
    0 0.01em 0.01em -0.01em rgba(0, 0, 0, 0.5),
    0.15em 0.3em 0.1em -0.01em rgba(0, 0, 0, 0.25);
}
.btn1-black:hover .btn1-outer {
  box-shadow:
    0 0 0 0 rgba(0, 0, 0, 1),
    0 0 0 0 rgba(0, 0, 0, 0.5),
    0 0 0 0 rgba(0, 0, 0, 0.25);
}
.btn1-black .btn1-inner {
  --inset: 0.035em;
  position: relative;
  z-index: 1;
  border-radius: inherit;
  padding: 1em 1.5em;
  background-image: linear-gradient(
    135deg,
    rgba(50, 50, 50, 1),
    rgba(20, 20, 20, 1)
  );
  transition:
    box-shadow 300ms ease,
    clip-path 250ms ease,
    background-image 250ms ease,
    transform 250ms ease;
  will-change: box-shadow, clip-path, background-image, transform;
  overflow: clip;
  clip-path: inset(0 0 0 0 round 100em);
  box-shadow:
    0 0 0 0 inset rgba(0, 0, 0, 0.2),
    -0.05em -0.05em 0.05em 0 inset rgba(0, 0, 0, 0.5),
    0 0 0 0 inset rgba(0, 0, 0, 0.2),
    0 0 0.05em 0.2em inset rgba(255, 255, 255, 0.1),
    0.025em 0.05em 0.1em 0 inset rgba(255, 255, 255, 0.2),
    0.12em 0.12em 0.12em inset rgba(255, 255, 255, 0.1),
    -0.075em -0.25em 0.25em 0.1em inset rgba(0, 0, 0, 0.5);
}
.btn1-black:hover .btn1-inner {
  clip-path: inset(
    clamp(1px, 0.0625em, 2px) clamp(1px, 0.0625em, 2px)
      clamp(1px, 0.0625em, 2px) clamp(1px, 0.0625em, 2px) round 100em
  );
  box-shadow:
    0.1em 0.15em 0.05em 0 inset rgba(0, 0, 0, 0.9),
    -0.025em -0.03em 0.05em 0.025em inset rgba(0, 0, 0, 0.6),
    0.25em 0.25em 0.2em 0 inset rgba(0, 0, 0, 0.6),
    0 0 0.05em 0.5em inset rgba(255, 255, 255, 0.15),
    0 0 0 0 inset rgba(255, 255, 255, 0.8),
    0.12em 0.12em 0.12em inset rgba(255, 255, 255, 0.1),
    -0.075em -0.12em 0.2em 0.1em inset rgba(0, 0, 0, 0.5);
}
.btn1-black .btn1-inner span {
  position: relative;
  z-index: 4;
  font-family: "Inter", sans-serif;
  letter-spacing: -0.05em;
  font-weight: 500;
  color: rgba(0, 0, 0, 0);
  background-image: linear-gradient(
    135deg,
    rgba(255, 255, 255, 1),
    rgba(200, 200, 200, 1)
  );
  -webkit-background-clip: text;
  background-clip: text;
  transition: transform 250ms ease;
  display: block;
  will-change: transform;
  text-shadow: rgba(0, 0, 0, 0.1) 0 0 0.1em;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn1-black:hover .btn1-inner span {
  transform: scale(0.975);
}
.btn1-black:active .btn1-inner {
  transform: scale(0.975);
}


/* ---------- Botón 2 - Versión Original ---------- */
.btn2-original-wrapper .btn2 {
  display: block;
  position: relative;
  width: 76px;
  height: 76px;
  margin: 0;
  overflow: hidden;
  outline: none;
  background-color: transparent;
  cursor: pointer;
  border: 0;
}
.btn2-original-wrapper .btn2:before {
  content: "";
  position: absolute;
  border-radius: 50%;
  inset: 7px;
  border: 3px solid black;
  transition:
    opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1) 80ms,
    transform 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955) 80ms;
}
.btn2-original-wrapper .btn2:after {
  content: "";
  position: absolute;
  border-radius: 50%;
  inset: 7px;
  border: 4px solid #599a53;
  transform: scale(1.3);
  transition:
    opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
    transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 0;
}
.btn2-original-wrapper .btn2:hover:before,
.btn2-original-wrapper .btn2:focus:before {
  opacity: 0;
  transform: scale(0.7);
  transition:
    opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
    transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.btn2-original-wrapper .btn2:hover:after,
.btn2-original-wrapper .btn2:focus:after {
  opacity: 1;
  transform: scale(1);
  transition:
    opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1) 80ms,
    transform 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955) 80ms;
}
.btn2-original-wrapper .btn2-box {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
}
.btn2-original-wrapper .btn2-elem {
  display: block;
  width: 30px;
  height: 30px;
  margin: 24px 18px 0 22px;
  transform: rotate(360deg);
  fill: #f0eeef;
}
.btn2-original-wrapper .btn2:hover .btn2-box,
.btn2-original-wrapper .btn2:focus .btn2-box {
  transition: 0.4s;
  transform: translateX(-69px);
}

/* ---------- Botón 2 - Versión Negra ---------- */
.btn2-black-wrapper .btn2 {
  display: block;
  position: relative;
  width: 76px;
  height: 76px;
  margin: 0;
  overflow: hidden;
  outline: none;
  background-color: transparent;
  cursor: pointer;
  border: 0;
}
.btn2-black-wrapper .btn2:before {
  content: "";
  position: absolute;
  border-radius: 50%;
  inset: 7px;
  border: 3px solid #000;
  transition:
    opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1) 80ms,
    transform 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955) 80ms;
}
.btn2-black-wrapper .btn2:after {
  content: "";
  position: absolute;
  border-radius: 50%;
  inset: 7px;
  border: 4px solid #000;
  transform: scale(1.3);
  transition:
    opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
    transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 0;
}
.btn2-black-wrapper .btn2:hover:before,
.btn2-black-wrapper .btn2:focus:before {
  opacity: 0;
  transform: scale(0.7);
  transition:
    opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
    transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.btn2-black-wrapper .btn2:hover:after,
.btn2-black-wrapper .btn2:focus:after {
  opacity: 1;
  transform: scale(1);
  transition:
    opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1) 80ms,
    transform 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955) 80ms;
}
.btn2-black-wrapper .btn2-box {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
}
.btn2-black-wrapper .btn2-elem {
  display: block;
  width: 30px;
  height: 30px;
  margin: 24px 18px 0 22px;
  transform: rotate(360deg);
  fill: #000;
}
.btn2-black-wrapper .btn2:hover .btn2-box,
.btn2-black-wrapper .btn2:focus .btn2-box {
  transition: 0.4s;
  transform: translateX(-69px);
}


/* ---------- Botón 3 - Versión Original ---------- */
.btn3-original {
  --h-button: 48px;
  --w-button: 102px;
  --round: 0.75rem;
  cursor: pointer;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: all 0.25s ease;
  background: radial-gradient(
      65.28% 65.28% at 50% 100%,
      rgba(223, 113, 255, 0.8) 0%,
      rgba(223, 113, 255, 0) 100%
    ),
    linear-gradient(0deg, #7a5af8, #7a5af8);
  border-radius: var(--round);
  border: none;
  outline: none;
  padding: 12px 18px;
}
.btn3-original::before,
.btn3-original::after {
  content: "";
  position: absolute;
  inset: var(--space);
  transition: all 0.5s ease-in-out;
  border-radius: calc(var(--round) - var(--space));
  z-index: 0;
}
.btn3-original::before {
  --space: 1px;
  background: linear-gradient(
    177.95deg,
    rgba(255, 255, 255, 0.19) 0%,
    rgba(255, 255, 255, 0) 100%
  );
}
.btn3-original::after {
  --space: 2px;
  background: radial-gradient(
      65.28% 65.28% at 50% 100%,
      rgba(223, 113, 255, 0.8) 0%,
      rgba(223, 113, 255, 0) 100%
    ),
    linear-gradient(0deg, #7a5af8, #7a5af8);
}
.btn3-original:active {
  transform: scale(0.95);
}
.btn3-original .fold {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 0;
  height: 1rem;
  width: 1rem;
  display: inline-block;
  transition: all 0.5s ease-in-out;
  background: radial-gradient(
    100% 75% at 55%,
    rgba(223, 113, 255, 0.8) 0%,
    rgba(223, 113, 255, 0) 100%
  );
  box-shadow: 0 0 3px black;
  border-bottom-left-radius: 0.5rem;
  border-top-right-radius: var(--round);
}
.btn3-original .fold::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 150%;
  height: 150%;
  transform: rotate(45deg) translateX(0%) translateY(-18px);
  background-color: #e8e8e8;
  pointer-events: none;
}
.btn3-original:hover .fold {
  margin-top: -1rem;
  margin-right: -1rem;
}
.btn3-original .points_wrapper {
  overflow: hidden;
  width: 100%;
  height: 100%;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}
.btn3-original .point {
  bottom: -10px;
  position: absolute;
  animation: floating-points infinite ease-in-out;
  pointer-events: none;
  width: 2px;
  height: 2px;
  background-color: #fff;
  border-radius: 9999px;
}
@keyframes floating-points {
  0% {
    transform: translateY(0);
  }
  85% {
    opacity: 0;
  }
  100% {
    transform: translateY(-55px);
    opacity: 0;
  }
}
.btn3-original .point:nth-child(1) {
  left: 10%;
  opacity: 1;
  animation-duration: 2.35s;
  animation-delay: 0.2s;
}
.btn3-original .point:nth-child(2) {
  left: 30%;
  opacity: 0.7;
  animation-duration: 2.5s;
  animation-delay: 0.5s;
}
.btn3-original .point:nth-child(3) {
  left: 25%;
  opacity: 0.8;
  animation-duration: 2.2s;
  animation-delay: 0.1s;
}
.btn3-original .point:nth-child(4) {
  left: 44%;
  opacity: 0.6;
  animation-duration: 2.05s;
}
.btn3-original .point:nth-child(5) {
  left: 50%;
  opacity: 1;
  animation-duration: 1.9s;
}
.btn3-original .point:nth-child(6) {
  left: 75%;
  opacity: 0.5;
  animation-duration: 1.5s;
  animation-delay: 1.5s;
}
.btn3-original .point:nth-child(7) {
  left: 88%;
  opacity: 0.9;
  animation-duration: 2.2s;
  animation-delay: 0.2s;
}
.btn3-original .point:nth-child(8) {
  left: 58%;
  opacity: 0.8;
  animation-duration: 2.25s;
  animation-delay: 0.2s;
}
.btn3-original .point:nth-child(9) {
  left: 98%;
  opacity: 0.6;
  animation-duration: 2.6s;
  animation-delay: 0.1s;
}
.btn3-original .point:nth-child(10) {
  left: 65%;
  opacity: 1;
  animation-duration: 2.5s;
  animation-delay: 0.2s;
}
.btn3-original .inner {
  z-index: 2;
  gap: 6px;
  position: relative;
  width: 100%;
  color: white;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  transition: color 0.2s ease-in-out;
}
.btn3-original .inner svg.icon {
  width: 18px;
  height: 18px;
  transition: fill 0.1s linear;
}
.btn3-original:focus svg.icon {
  fill: white;
}
.btn3-original:hover svg.icon {
  fill: transparent;
  animation:
    dasharray 1s linear forwards,
    filled 0.1s linear forwards 0.95s;
}
@keyframes dasharray {
  from {
    stroke-dasharray: 0 0 0 0;
  }
  to {
    stroke-dasharray: 68 68 0 0;
  }
}
@keyframes filled {
  to {
    fill: white;
  }
}

/* ---------- Botón 3 - Versión Negra ---------- */
.btn3-black {
  --h-button: 48px;
  --w-button: 102px;
  --round: 0.75rem;
  cursor: pointer;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: all 0.25s ease;
  background: linear-gradient(0deg, #000, #000);
  border-radius: var(--round);
  border: none;
  outline: none;
  padding: 12px 18px;
}
.btn3-black::before,
.btn3-black::after {
  content: "";
  position: absolute;
  inset: var(--space);
  transition: all 0.5s ease-in-out;
  border-radius: calc(var(--round) - var(--space));
  z-index: 0;
}
.btn3-black::before {
  --space: 1px;
  background: linear-gradient(
    177.95deg,
    rgba(255, 255, 255, 0.1) 0%,
    rgba(255, 255, 255, 0) 100%
  );
}
.btn3-black::after {
  --space: 2px;
  background: linear-gradient(0deg, #000, #000);
}
.btn3-black:active {
  transform: scale(0.95);
}
.btn3-black .fold {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 0;
  height: 1rem;
  width: 1rem;
  display: inline-block;
  transition: all 0.5s ease-in-out;
  background: linear-gradient(0deg, #000, #000);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  border-bottom-left-radius: 0.5rem;
  border-top-right-radius: var(--round);
}
.btn3-black .fold::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 150%;
  height: 150%;
  transform: rotate(45deg) translateX(0%) translateY(-18px);
  background-color: #333;
  pointer-events: none;
}
.btn3-black:hover .fold {
  margin-top: -1rem;
  margin-right: -1rem;
}
.btn3-black .points_wrapper {
  overflow: hidden;
  width: 100%;
  height: 100%;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}
.btn3-black .point {
  bottom: -10px;
  position: absolute;
  animation: floating-points infinite ease-in-out;
  pointer-events: none;
  width: 2px;
  height: 2px;
  background-color: #fff;
  border-radius: 9999px;
}
.btn3-black .point:nth-child(1) {
  left: 10%;
  opacity: 1;
  animation-duration: 2.35s;
  animation-delay: 0.2s;
}
.btn3-black .point:nth-child(2) {
  left: 30%;
  opacity: 0.7;
  animation-duration: 2.5s;
  animation-delay: 0.5s;
}
.btn3-black .point:nth-child(3) {
  left: 25%;
  opacity: 0.8;
  animation-duration: 2.2s;
  animation-delay: 0.1s;
}
.btn3-black .point:nth-child(4) {
  left: 44%;
  opacity: 0.6;
  animation-duration: 2.05s;
}
.btn3-black .point:nth-child(5) {
  left: 50%;
  opacity: 1;
  animation-duration: 1.9s;
}
.btn3-black .point:nth-child(6) {
  left: 75%;
  opacity: 0.5;
  animation-duration: 1.5s;
  animation-delay: 1.5s;
}
.btn3-black .point:nth-child(7) {
  left: 88%;
  opacity: 0.9;
  animation-duration: 2.2s;
  animation-delay: 0.2s;
}
.btn3-black .point:nth-child(8) {
  left: 58%;
  opacity: 0.8;
  animation-duration: 2.25s;
  animation-delay: 0.2s;
}
.btn3-black .point:nth-child(9) {
  left: 98%;
  opacity: 0.6;
  animation-duration: 2.6s;
  animation-delay: 0.1s;
}
.btn3-black .point:nth-child(10) {
  left: 65%;
  opacity: 1;
  animation-duration: 2.5s;
  animation-delay: 0.2s;
}
.btn3-black .inner {
  z-index: 2;
  gap: 6px;
  position: relative;
  width: 100%;
  color: white;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  transition: color 0.2s ease-in-out;
}
.btn3-black .inner svg.icon {
  width: 18px;
  height: 18px;
  transition: fill 0.1s linear;
}
.btn3-black:focus svg.icon {
  fill: white;
}
.btn3-black:hover svg.icon {
  fill: transparent;
  animation:
    dasharray 1s linear forwards,
    filled 0.1s linear forwards 0.95s;
}

/* ---------- Botón 4 - Versión Original ---------- */
.btn4-original {
  position: relative;
  display: inline-block;
  cursor: pointer;
  outline: none;
  border: 0;
  vertical-align: middle;
  text-decoration: none;
  background: transparent;
  padding: 0;
  font-size: inherit;
  font-family: inherit;
  width: 20rem;
  height: auto;
}
.btn4-original .btn4-circle {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: relative;
  display: block;
  margin: 0;
  width: 3rem;
  height: 3rem;
  background: #282936;
  border-radius: 1.625rem;
}
.btn4-original .btn4-circle .btn4-icon {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #fff;
}
.btn4-original .btn4-circle .btn4-icon.arrow {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  left: 0.625rem;
  width: 1.125rem;
  height: 0.125rem;
  background: none;
}
.btn4-original .btn4-circle .btn4-icon.arrow::before {
  position: absolute;
  content: "";
  top: -0.29rem;
  right: 0.0625rem;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 0.125rem solid #fff;
  border-right: 0.125rem solid #fff;
  transform: rotate(45deg);
}
.btn4-original .btn4-text {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0.75rem 0;
  margin: 0 0 0 1.85rem;
  color: #282936;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  text-transform: uppercase;
}
.btn4-original:hover .btn4-circle {
  width: 100%;
}
.btn4-original:hover .btn4-circle .btn4-icon.arrow {
  background: #fff;
  transform: translate(1rem, 0);
}
.btn4-original:hover .btn4-text {
  color: #fff;
}

/* ---------- Botón 4 - Versión Negra ---------- */
.btn4-black {
  position: relative;
  display: inline-block;
  cursor: pointer;
  outline: none;
  border: 0;
  vertical-align: middle;
  text-decoration: none;
  background: transparent;
  padding: 0;
  font-size: inherit;
  font-family: inherit;
  width: 12rem;
  height: auto;
}
.btn4-black .btn4-circle {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: relative;
  display: block;
  margin: 0;
  width: 3rem;
  height: 3rem;
  background: #000;
  border-radius: 1.625rem;
}
.btn4-black .btn4-circle .btn4-icon {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #fff;
}
.btn4-black .btn4-circle .btn4-icon.arrow {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  left: 0.625rem;
  width: 1.125rem;
  height: 0.125rem;
  background: none;
}
.btn4-black .btn4-circle .btn4-icon.arrow::before {
  position: absolute;
  content: "";
  top: -0.29rem;
  right: 0.0625rem;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 0.125rem solid #fff;
  border-right: 0.125rem solid #fff;
  transform: rotate(45deg);
}
.btn4-black .btn4-text {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0.75rem 0;
  margin: 0 0 0 1.85rem;
  color: #000;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  text-transform: uppercase;
}
.btn4-black:hover .btn4-circle {
  width: 100%;
}
.btn4-black:hover .btn4-circle .btn4-icon.arrow {
  background: #fff;
  transform: translate(1rem, 0);
}
.btn4-black:hover .btn4-text {
  color: #fff;
}


/* ---------- Botón 5 - Versión Original ---------- */
.btn5-original-uiverse {
  position: relative;
  background: #ffffff;
  color: #000;
  padding: 15px;
  margin: 10px;
  border-radius: 10px;
  width: 150px;
  height: 50px;
  font-size: 17px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.btn5-original-uiverse .btn5-tooltip {
  position: absolute;
  top: 0;
  font-size: 14px;
  background: #ffffff;
  color: #ffffff;
  padding: 5px 8px;
  border-radius: 5px;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.btn5-original-uiverse .btn5-tooltip::before {
  position: absolute;
  content: "";
  height: 8px;
  width: 8px;
  background: #ffffff;
  bottom: -3px;
  left: 50%;
  transform: translate(-50%) rotate(45deg);
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.btn5-original-uiverse:hover .btn5-tooltip {
  top: -45px;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.btn5-original-uiverse:hover,
.btn5-original-uiverse:hover .btn5-tooltip,
.btn5-original-uiverse:hover .btn5-tooltip::before {
  background: linear-gradient(320deg, rgb(3, 77, 146), rgb(0, 60, 255));
  color: #ffffff;
}

/* ---------- Botón 5 - Versión Negra ---------- */
.btn5-black-uiverse {
  position: relative;
  background: #5519d9;
  color: #fff;
  padding: 15px;
  margin: 10px;
  border-radius: 10px;
  width: 250px;
  height: 50px;
  font-size: 17px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.4);
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.btn5-black-uiverse .btn5-tooltip {
  position: absolute;
  top: 0;
  font-size: 14px;
  background: #000;
  color: #fff;
  padding: 5px 8px;
  border-radius: 5px;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.4);
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.btn5-black-uiverse .btn5-tooltip::before {
  position: absolute;
  content: "";
  height: 8px;
  width: 8px;
  background: #000;
  bottom: -3px;
  left: 50%;
  transform: translate(-50%) rotate(45deg);
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.btn5-black-uiverse:hover .btn5-tooltip {
  top: -45px;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.btn5-black-uiverse:hover,
.btn5-black-uiverse:hover .btn5-tooltip,
.btn5-black-uiverse:hover .btn5-tooltip::before {
  background: #1e035a;
  color: #fff;
}


/* ---------- Botón 6 - Versión Original ---------- */
.btn6-original-shine {
  position: relative;
  padding: 12px 48px;
  color: #fff;
  background: linear-gradient(to right, #9f9f9f 0, #fff 10%, #868686 20%);
  background-position: 0;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: shine 3s infinite linear;
  animation-fill-mode: forwards;
  -webkit-text-size-adjust: none;
  font-weight: 600;
  font-size: 16px;
  text-decoration: none;
  white-space: nowrap;
  font-family: "Poppins", sans-serif;
  display: inline-block;
}
@-moz-keyframes shine {
  0% {
    background-position: 0;
  }
  60% {
    background-position: 180px;
  }
  100% {
    background-position: 180px;
  }
}
@-webkit-keyframes shine {
  0% {
    background-position: 0;
  }
  60% {
    background-position: 180px;
  }
  100% {
    background-position: 180px;
  }
}
@-o-keyframes shine {
  0% {
    background-position: 0;
  }
  60% {
    background-position: 180px;
  }
  100% {
    background-position: 180px;
  }
}
@keyframes shine {
  0% {
    background-position: 0;
  }
  60% {
    background-position: 180px;
  }
  100% {
    background-position: 180px;
  }
}

/* ---------- Botón 6 - Versión Negra ---------- */
.btn6-black-shine {
  position: relative;
  padding: 12px 48px;
  color: #000;
  background: linear-gradient(to right, #000 0, #333 10%, #111 20%);
  background-position: 0;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: shine-black 3s infinite linear;
  animation-fill-mode: forwards;
  -webkit-text-size-adjust: none;
  font-weight: 600;
  font-size: 16px;
  text-decoration: none;
  white-space: nowrap;
  font-family: "Poppins", sans-serif;
  display: inline-block;
}
@keyframes shine-black {
  0% {
    background-position: 0;
  }
  60% {
    background-position: 180px;
  }
  100% {
    background-position: 180px;
  }
}


/* ---------- Botón 7 - Versión Original ---------- */
.btn7-original-golden {
  touch-action: manipulation;
  display: inline-block;
  outline: none;
  font-family: inherit;
  font-size: 1em;
  box-sizing: border-box;
  border: none;
  border-radius: 0.3em;
  height: 2.75em;
  line-height: 2.5em;
  text-transform: uppercase;
  padding: 0 1em;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(110, 80, 20, 0.4),
    inset 0 -2px 5px 1px rgba(139, 66, 8, 1),
    inset 0 -1px 1px 3px rgba(250, 227, 133, 1);
  background-image: linear-gradient(
    160deg,
    #a54e07,
    #b47e11,
    #fef1a2,
    #bc881b,
    #a54e07
  );
  border: 1px solid #a55d07;
  color: rgb(120, 50, 5);
  text-shadow: 0 2px 2px rgba(250, 227, 133, 1);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  background-size: 100% 100%;
  background-position: center;
}
.btn7-original-golden:focus,
.btn7-original-golden:hover {
  background-size: 150% 150%;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23),
    inset 0 -2px 5px 1px #b17d10, inset 0 -1px 1px 3px rgba(250, 227, 133, 1);
  border: 1px solid rgba(165, 93, 7, 0.6);
  color: rgba(120, 50, 5, 0.8);
}
.btn7-original-golden:active {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(110, 80, 20, 0.4),
    inset 0 -2px 5px 1px #b17d10, inset 0 -1px 1px 3px rgba(250, 227, 133, 1);
}

/* ---------- Botón 7 - Versión Negra ---------- */
.btn7-black-golden {
  touch-action: manipulation;
  display: inline-block;
  outline: none;
  font-family: inherit;
  font-size: 1em;
  box-sizing: border-box;
  border: none;
  border-radius: 0.3em;
  height: 2.75em;
  line-height: 2.5em;
  text-transform: uppercase;
  padding: 0 1em;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5), 0 3px 6px rgba(30, 30, 30, 0.4),
    inset 0 -2px 5px 1px rgba(50, 50, 50, 1),
    inset 0 -1px 1px 3px rgba(150, 150, 150, 1);
  background-image: linear-gradient(
    160deg,
    #333,
    #444,
    #111,
    #444,
    #333
  );
  border: 1px solid #000;
  color: #fff;
  text-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  background-size: 100% 100%;
  background-position: center;
}
.btn7-black-golden:focus,
.btn7-black-golden:hover {
  background-size: 150% 150%;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.7), 0 6px 6px rgba(0, 0, 0, 0.5),
    inset 0 -2px 5px 1px #222, inset 0 -1px 1px 3px rgba(100, 100, 100, 1);
  border: 1px solid rgba(0, 0, 0, 0.8);
  color: rgba(255, 255, 255, 0.8);
}
.btn7-black-golden:active {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5), 0 3px 6px rgba(30, 30, 30, 0.4),
    inset 0 -2px 5px 1px #222, inset 0 -1px 1px 3px rgba(100, 100, 100, 1);
}


/* =======================
   COMPONENTES FICHAS
   ======================= */

/* ---------- Ficha 1 ---------- */
.ficha1-outer {
  width: 300px;
  height: 250px;
  border-radius: 10px;
  padding: 1px;
  background: radial-gradient(circle 230px at 0% 0%, #ffffff, #0c0d0d);
  position: relative;
}
.ficha1-dot {
  width: 5px;
  aspect-ratio: 1;
  position: absolute;
  background-color: #fff;
  box-shadow: 0 0 10px #ffffff;
  border-radius: 100px;
  z-index: 2;
  right: 10%;
  top: 10%;
  animation: ficha1-moveDot 6s linear infinite;
}
@keyframes ficha1-moveDot {
  0%, 100% {
    top: 10%;
    right: 10%;
  }
  25% {
    top: 10%;
    right: calc(100% - 35px);
  }
  50% {
    top: calc(100% - 30px);
    right: calc(100% - 35px);
  }
  75% {
    top: calc(100% - 30px);
    right: 10%;
  }
}
.ficha1-card {
  z-index: 1;
  width: 100%;
  height: 100%;
  border-radius: 9px;
  border: solid 1px #202222;
  background-size: 20px 20px;
  background: radial-gradient(circle 280px at 0% 0%, #444444, #0c0d0d);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  flex-direction: column;
  color: #fff;
}
.ficha1-ray {
  width: 220px;
  height: 45px;
  border-radius: 100px;
  position: absolute;
  background-color: #c7c7c7;
  opacity: 0.4;
  box-shadow: 0 0 50px #fff;
  filter: blur(10px);
  transform-origin: 10%;
  top: 0%;
  left: 0;
  transform: rotate(40deg);
}
.ficha1-text {
  font-weight: bolder;
  font-size: 4rem;
  background: linear-gradient(45deg, #000000 4%, #fff, #000);
  background-clip: text;
  color: transparent;
}
.ficha1-line {
  width: 100%;
  height: 1px;
  position: absolute;
  background-color: #2c2c2c;
}
.ficha1-topl {
  top: 10%;
  background: linear-gradient(90deg, #888888 30%, #1d1f1f 70%);
}
.ficha1-bottoml {
  bottom: 10%;
}
.ficha1-leftl {
  left: 10%;
  width: 1px;
  height: 100%;
  background: linear-gradient(180deg, #747474 30%, #222424 70%);
}
.ficha1-rightl {
  right: 10%;
  width: 1px;
  height: 100%;
}

/* ---------- Ficha 2 ---------- */
.ficha2-parent {
  width: 290px;
  height: 300px;
  perspective: 1000px;
}
.ficha2-card {
  height: 100%;
  border-radius: 50px;
  background: linear-gradient(135deg, rgb(0, 255, 214) 0%, rgb(8, 226, 96) 100%);
  transition: all 0.5s ease-in-out;
  transform-style: preserve-3d;
  box-shadow: rgba(5, 71, 17, 0) 40px 50px 25px -40px, rgba(5, 71, 17, 0.2) 0px 25px 25px -5px;
  position: relative;
}
.ficha2-glass {
  transform-style: preserve-3d;
  position: absolute;
  inset: 8px;
  border-radius: 55px;
  border-top-right-radius: 100%;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.349) 0%, rgba(255, 255, 255, 0.815) 100%);
  transform: translate3d(0px, 0px, 25px);
  border-left: 1px solid white;
  border-bottom: 1px solid white;
  transition: all 0.5s ease-in-out;
}
.ficha2-content {
  padding: 100px 60px 0px 30px;
  transform: translate3d(0, 0, 26px);
}
.ficha2-title {
  display: block;
  color: #00894d;
  font-weight: 900;
  font-size: 20px;
}
.ficha2-text {
  display: block;
  color: rgba(0, 137, 78, 0.7647058824);
  font-size: 15px;
  margin-top: 20px;
}
.ficha2-bottom {
  padding: 10px 12px;
  transform-style: preserve-3d;
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transform: translate3d(0, 0, 26px);
}
.ficha2-social-buttons-container {
  display: flex;
  gap: 10px;
  transform-style: preserve-3d;
}
.ficha2-social-button {
  width: 30px;
  aspect-ratio: 1;
  padding: 5px;
  background: rgb(255, 255, 255);
  border-radius: 50%;
  border: none;
  display: grid;
  place-content: center;
  box-shadow: rgba(5, 71, 17, 0.5) 0px 7px 5px -5px;
  transition: transform 0.2s ease-in-out 0.4s, box-shadow 0.2s ease-in-out 0.4s;
}
.ficha2-social-button:nth-child(2) {
  transition: transform 0.2s ease-in-out 0.6s, box-shadow 0.2s ease-in-out 0.6s;
}
.ficha2-social-button:nth-child(3) {
  transition: transform 0.2s ease-in-out 0.8s, box-shadow 0.2s ease-in-out 0.8s;
}
.ficha2-social-button svg {
  width: 15px;
  fill: #00894d;
  transition: fill 0.2s ease-in-out;
}
.ficha2-social-button:hover {
  background: black;
}
.ficha2-social-button:hover svg {
  fill: white;
}
.ficha2-social-button:active {
  background: rgb(255, 234, 0);
}
.ficha2-social-button:active svg {
  fill: black;
}
.ficha2-view-more {
  display: flex;
  align-items: center;
  width: 40%;
  justify-content: flex-end;
  transition: all 0.2s ease-in-out;
}
.ficha2-view-more:hover {
  transform: translate3d(0, 0, 10px);
}
.ficha2-view-more-button {
  background: none;
  border: none;
  color: #00c37b;
  font-weight: bolder;
  font-size: 12px;
}
.ficha2-view-more svg {
  fill: none;
  stroke: #00c37b;
  stroke-width: 3px;
  max-height: 15px;
}
.ficha2-logo {
  position: absolute;
  right: 0;
  top: 0;
  transform-style: preserve-3d;
}
.ficha2-logo .circle {
  display: block;
  position: absolute;
  aspect-ratio: 1;
  border-radius: 50%;
  top: 0;
  right: 0;
  box-shadow: rgba(100, 100, 111, 0.2) -10px 10px 20px 0px;
  backdrop-filter: blur(5px);
  background: rgba(0, 249, 203, 0.2);
  transition: all 0.5s ease-in-out;
}
.ficha2-circle1 {
  width: 170px;
  transform: translate3d(0, 0, 20px);
  top: 8px;
  right: 8px;
}
.ficha2-circle2 {
  width: 140px;
  transform: translate3d(0, 0, 40px);
  top: 10px;
  right: 10px;
  backdrop-filter: blur(1px);
  transition-delay: 0.4s;
}
.ficha2-circle3 {
  width: 110px;
  transform: translate3d(0, 0, 60px);
  top: 17px;
  right: 17px;
  transition-delay: 0.8s;
}
.ficha2-circle4 {
  width: 80px;
  transform: translate3d(0, 0, 80px);
  top: 23px;
  right: 23px;
  transition-delay: 1.2s;
}
.ficha2-circle5 {
  width: 50px;
  transform: translate3d(0, 0, 100px);
  top: 30px;
  right: 30px;
  display: grid;
  place-content: center;
  transition-delay: 1.6s;
}
.ficha2-circle5 svg {
  width: 20px;
  fill: white;
}
.ficha2-parent:hover .ficha2-card {
  transform: rotate3d(1, 1, 0, 30deg);
  box-shadow: rgba(5, 71, 17, 0.3) 30px 50px 25px -40px, rgba(5, 71, 17, 0.1) 0px 25px 30px 0px;
}
.ficha2-parent:hover .ficha2-social-buttons-container .ficha2-social-button {
  transform: translate3d(0, 0, 50px);
  box-shadow: rgba(5, 71, 17, 0.2) -5px 20px 10px 0px;
}
.ficha2-parent:hover .ficha2-circle2 {
  transform: translate3d(0, 0, 60px);
}
.ficha2-parent:hover .ficha2-circle3 {
  transform: translate3d(0, 0, 80px);
}
.ficha2-parent:hover .ficha2-circle4 {
  transform: translate3d(0, 0, 100px);
}
.ficha2-parent:hover .ficha2-circle5 {
  transform: translate3d(0, 0, 120px);
}

/* ---------- Ficha 3 ---------- */
.ficha3-card-container {
  position: relative;
  display: inline-block;
  margin: 12px;
}
.ficha3-card1 {
  display: block;
  position: relative;
  max-width: 262px;
  background-color: #f2f8f9;
  border-radius: 4px;
  padding: 32px 24px;
  margin: 12px;
  text-decoration: none;
  z-index: 0;
  overflow: hidden;
}
.ficha3-card1 p {
  font-size: 17px;
  font-weight: 400;
  line-height: 20px;
  color: #666;
}
.ficha3-card1 p.small {
  font-size: 14px;
}
.ficha3-card1:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -16px;
  right: -16px;
  background: #00838d;
  height: 32px;
  width: 32px;
  border-radius: 32px;
  transform: scale(1);
  transform-origin: 50% 50%;
  transition: transform 0.25s ease-out;
}
.ficha3-card1:hover:before {
  transform: scale(21);
}
.ficha3-card1:hover p {
  transition: all 0.3s ease-out;
  color: rgba(255, 255, 255, 0.8);
}
.ficha3-card1:hover h3 {
  transition: all 0.3s ease-out;
  color: #fff;
}

/* Opciones adicionales (card2, card3, card4) si se usan: */
.ficha3-card2 {
  display: block;
  top: 0px;
  position: relative;
  max-width: 262px;
  background-color: #f2f8f9;
  border-radius: 4px;
  padding: 32px 24px;
  margin: 12px;
  text-decoration: none;
  z-index: 0;
  overflow: hidden;
  border: 1px solid #f2f8f9;
}
.ficha3-card2:hover {
  transition: all 0.2s ease-out;
  box-shadow: 0px 4px 8px rgba(38, 38, 38, 0.2);
  top: -4px;
  border: 1px solid #ccc;
  background-color: white;
}
.ficha3-card2:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -16px;
  right: -16px;
  background: #00838d;
  height: 32px;
  width: 32px;
  border-radius: 32px;
  transform: scale(2);
  transform-origin: 50% 50%;
  transition: transform 0.15s ease-out;
}
.ficha3-card2:hover:before {
  transform: scale(2.15);
}

.ficha3-card3 {
  display: block;
  top: 0px;
  position: relative;
  max-width: 262px;
  background-color: #f2f8f9;
  border-radius: 4px;
  padding: 32px 24px;
  margin: 12px;
  text-decoration: none;
  overflow: hidden;
  border: 1px solid #f2f8f9;
}
.ficha3-card3 .go-corner {
  opacity: 0.7;
}
.ficha3-card3:hover {
  border: 1px solid #00838d;
  box-shadow: 0px 0px 999px 999px rgba(255, 255, 255, 0.5);
  z-index: 500;
}
.ficha3-card3:hover p {
  color: #00838d;
}
.ficha3-card3:hover .go-corner {
  transition: opacity 0.3s linear;
  opacity: 1;
}

.ficha3-card4 {
  display: block;
  top: 0px;
  position: relative;
  max-width: 262px;
  background-color: #fff;
  border-radius: 4px;
  padding: 32px 24px;
  margin: 12px;
  text-decoration: none;
  overflow: hidden;
  border: 1px solid #ccc;
}
.ficha3-card4 .go-corner {
  background-color: #00838d;
  height: 100%;
  width: 16px;
  padding-right: 9px;
  border-radius: 0;
  transform: skew(6deg);
  margin-right: -36px;
  align-items: start;
  background-image: linear-gradient(-45deg, #8f479a 1%, #dc2a74 100%);
}
.ficha3-card4 .go-arrow {
  transform: skew(-6deg);
  margin-left: -2px;
  margin-top: 9px;
  opacity: 0;
}
.ficha3-card4:hover {
  border: 1px solid #cd3d73;
}
.ficha3-card4 h3 {
  margin-top: 8px;
}
.ficha3-card4:hover .go-corner {
  margin-right: -12px;
}
.ficha3-card4:hover .go-arrow {
  opacity: 1;
}

/* ---------- Ficha 4 ---------- */
.ficha4-container {
  background-color: #ffffff;
  display: flex;
  width: 460px;
  height: 120px;
  position: relative;
  border-radius: 6px;
  transition: 0.3s ease-in-out;
}
.ficha4-container:hover {
  transform: scale(1.03);
  width: 220px;
}
.ficha4-container:hover .ficha4-left-side {
  width: 100%;
}
.ficha4-left-side {
  background-color: #5de2a3;
  width: 130px;
  height: 120px;
  border-radius: 4px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: 0.3s;
  flex-shrink: 0;
  overflow: hidden;
}
.ficha4-right-side {
  width: calc(100% - 130px);
  display: flex;
  align-items: center;
  overflow: hidden;
  cursor: pointer;
  justify-content: space-between;
  white-space: nowrap;
  transition: 0.3s;
}
.ficha4-right-side:hover {
  background-color: #f9f7f9;
}
.ficha4-arrow {
  width: 20px;
  height: 20px;
  margin-right: 20px;
}
.ficha4-new {
  font-size: 23px;
  font-family: "Lexend Deca", sans-serif;
  margin-left: 20px;
}
.ficha4-card {
  width: 70px;
  height: 46px;
  background-color: #c7ffbc;
  border-radius: 6px;
  position: absolute;
  display: flex;
  z-index: 10;
  flex-direction: column;
  align-items: center;
  box-shadow: 9px 9px 9px -2px rgba(77, 200, 143, 0.72);
}
.ficha4-card-line {
  width: 65px;
  height: 13px;
  background-color: #80ea69;
  border-radius: 2px;
  margin-top: 7px;
}
@media only screen and (max-width: 480px) {
  .ficha4-container {
    transform: scale(0.7);
  }
  .ficha4-container:hover {
    transform: scale(0.74);
  }
  .ficha4-new {
    font-size: 18px;
  }
}
.ficha4-buttons {
  width: 8px;
  height: 8px;
  background-color: #379e1f;
  box-shadow: 0 -10px 0 0 #26850e, 0 10px 0 0 #56be3e;
  border-radius: 50%;
  margin-top: 5px;
  transform: rotate(90deg);
  margin: 10px 0 0 -30px;
}
.ficha4-container:hover .ficha4-card {
  animation: ficha4-slide-top 1.2s cubic-bezier(0.645, 0.045, 0.355, 1) both;
}
.ficha4-container:hover .ficha4-post {
  animation: ficha4-slide-post 1s cubic-bezier(0.165, 0.84, 0.44, 1) both;
}
@keyframes ficha4-slide-top {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-70px) rotate(90deg);
  }
  60% {
    transform: translateY(-70px) rotate(90deg);
  }
  100% {
    transform: translateY(-8px) rotate(90deg);
  }
}
.ficha4-post {
  width: 63px;
  height: 75px;
  background-color: #dddde0;
  position: absolute;
  z-index: 11;
  bottom: 10px;
  top: 120px;
  border-radius: 6px;
  overflow: hidden;
}
.ficha4-post-line {
  width: 47px;
  height: 9px;
  background-color: #545354;
  position: absolute;
  border-radius: 0px 0px 3px 3px;
  right: 8px;
  top: 8px;
}
.ficha4-post-line:before {
  content: "";
  position: absolute;
  width: 47px;
  height: 9px;
  background-color: #757375;
  top: -8px;
}
.ficha4-screen {
  width: 47px;
  height: 23px;
  background-color: #ffffff;
  position: absolute;
  top: 22px;
  right: 8px;
  border-radius: 3px;
}
.ficha4-numbers {
  width: 12px;
  height: 12px;
  background-color: #838183;
  box-shadow: 0 -18px 0 0 #838183, 0 18px 0 0 #838183;
  border-radius: 2px;
  position: absolute;
  transform: rotate(90deg);
  left: 25px;
  top: 52px;
}
.ficha4-numbers-line2 {
  width: 12px;
  height: 12px;
  background-color: #aaa9ab;
  box-shadow: 0 -18px 0 0 #aaa9ab, 0 18px 0 0 #aaa9ab;
  border-radius: 2px;
  position: absolute;
  transform: rotate(90deg);
  left: 25px;
  top: 68px;
}
@keyframes ficha4-slide-post {
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-70px);
  }
}
.ficha4-dollar {
  position: absolute;
  font-size: 16px;
  font-family: "Lexend Deca", sans-serif;
  width: 100%;
  left: 0;
  top: 0;
  color: #4b953b;
  text-align: center;
}
.ficha4-container:hover .ficha4-dollar {
  animation: ficha4-fade-in-fwd 0.3s 1s backwards;
}
@keyframes ficha4-fade-in-fwd {
  0% {
    opacity: 0;
    transform: translateY(-5px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ---------- Ficha 5 ---------- */
.ficha5-container {
  display: flex;
  align-items: center;
  justify-content: center;
}
.ficha5-box {
  width: 200px;
  height: 250px;
  border-radius: 20px;
  background: linear-gradient(170deg, rgba(58, 56, 56, 0.623) 0%, rgb(31, 31, 31) 100%);
  position: relative;
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.55);
  cursor: pointer;
  transition: all 0.3s;
}
.ficha5-box:hover {
  transform: scale(0.9);
}
.ficha5-box span {
  position: absolute;
  overflow: hidden;
  width: 150px;
  height: 150px;
  top: -10px;
  left: -10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ficha5-box span::before {
  content: 'Premium';
  position: absolute;
  width: 150%;
  height: 40px;
  background-image: linear-gradient(45deg, #ff6547 0%, #ffb144 51%, #ff7053 100%);
  transform: rotate(-45deg) translateY(-20px);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.23);
}
.ficha5-box span::after {
  content: '';
  position: absolute;
  width: 10px;
  bottom: 0;
  left: 0;
  height: 10px;
  z-index: -1;
  box-shadow: 140px -140px #cc3f47;
  background-image: linear-gradient(45deg, #FF512F 0%, #F09819 51%, #FF512F 100%);
}

/* ---------- Ficha 6 ---------- */
.ficha6-plan-card {
  background: #fff;
  width: 15rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 10px;
  padding-bottom: 20px;
  border-radius: 10px;
  border-bottom: 4px solid #000446;
  box-shadow: 0 6px 30px rgba(207, 212, 222, 0.3);
  font-family: "Poppins", sans-serif;
}
.ficha6-plan-card h2 {
  margin-bottom: 15px;
  font-size: 27px;
  font-weight: 600;
}
.ficha6-plan-card h2 span {
  display: block;
  margin-top: -4px;
  color: #4d4d4d;
  font-size: 12px;
  font-weight: 400;
}
.ficha6-etiquet-price {
  position: relative;
  background: #fdbd4a;
  width: 14.46rem;
  margin-left: -0.65rem;
  padding: 0.2rem 1.2rem;
  border-radius: 5px 0 0 5px;
}
.ficha6-etiquet-price p {
  margin: 0;
  padding-top: 0.4rem;
  display: flex;
  font-size: 1.9rem;
  font-weight: 500;
}
.ficha6-etiquet-price p:before {
  content: "$";
  margin-right: 5px;
  font-size: 15px;
  font-weight: 300;
}
.ficha6-etiquet-price p:after {
  content: "/ handle";
  margin-left: 5px;
  font-size: 15px;
  font-weight: 300;
}
.ficha6-etiquet-price div {
  position: absolute;
  bottom: -23px;
  right: 0px;
  width: 0;
  height: 0;
  border-top: 13px solid #c58102;
  border-bottom: 10px solid transparent;
  border-right: 13px solid transparent;
  z-index: -6;
}
.ficha6-benefits-list {
  margin-top: 16px;
}
.ficha6-benefits-list ul {
  padding: 0;
  font-size: 14px;
}
.ficha6-benefits-list ul li {
  color: #4d4d4d;
  list-style: none;
  margin-bottom: 0.2rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.ficha6-benefits-list ul li svg {
  width: 0.9rem;
  fill: currentColor;
}
.ficha6-benefits-list ul li span {
  font-weight: 300;
}
.ficha6-button-get-plan {
  display: flex;
  justify-content: center;
  margin-top: 1.2rem;
}
.ficha6-button-get-plan a {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #000446;
  color: #fff;
  padding: 10px 15px;
  border-radius: 5px;
  text-decoration: none;
  font-size: 0.8rem;
  letter-spacing: 0.05rem;
  font-weight: 500;
  transition: all 0.3s ease;
}
.ficha6-button-get-plan a:hover {
  transform: translateY(-3%);
  box-shadow: 0 3px 10px rgba(207, 212, 222, 0.9);
}
.ficha6-button-get-plan .ficha6-svg-rocket {
  margin-right: 10px;
  width: 0.9rem;
  fill: currentColor;
}


#cositas, #cositas * {
    font-size: 16px !important;
}

/* Clase para títulos del footer en escritorio: tamaño fijo de 16px (1rem) */
.footer-title-footer-normal {
    font-size: 1rem !important;
}

/* Enlaces del footer: animación suave de desplazamiento a la derecha en hover, manteniendo la raya */
.footer-section ul li a {
    transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
    position: relative;
    display: inline-block;
}
.footer-section ul li a::after {
    content: " –";
    transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
    display: inline-block;
    margin-left: 4px;
}
.footer-section ul li a:hover,
.footer-section ul li a:active {
    transform: translateX(10px);
}
.footer-section ul li a:hover::after,
.footer-section ul li a:active::after {
    transform: translateX(10px);
}

/* Modal perritos: esquina superior derecha sin curva */
#perritos-modal {
  border-top-right-radius: 0 !important;
}

/* yty999: Efecto desplazamiento a la derecha en hover para enlaces del submenu */
.submenu li a {
    transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
    position: relative;
    display: inline-block;
}
.submenu li a:hover,
.submenu li a:active {
    transform: translateX(10px);
}
.submenu li a:hover::after,
.submenu li a:active::after {
    transform: translateX(10px);
}

/* yty999: Rayita animada en hover para enlaces del submenu */
.submenu li a::after {
    content: " –";
    transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
    display: inline-block;
    margin-left: 4px;
    color: #E6220D;
    opacity: 0;
}
.submenu li a:hover::after,
.submenu li a:active::after {
    opacity: 1;
    transform: translateX(10px);
}

/* Sticky para menú principal solo escritorio */
@media (min-width: 769px) {
    #menu.sticky-enabled {
        position: sticky;
        top: 0;
    }
}

/* yty111: menú fijo en la parte superior */
#menu.fixed-enabled {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
}

/* yty111: compensar el alto del menú fijo */
body.menu-fixed-padding {
    padding-top: 60px; /* Ajusta este valor al alto real del menú */
}

/* =============================
   Header sticky con efecto slide
   ============================= */
@media (min-width: 769px) {
  #menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999; /* Siempre encima de todo el contenido */
    transform: translateY(-100%);
    opacity: 0;
    transition: transform 1.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 1.5s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;
  }
  #menu.header-visible {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }
}

/* =============================
   Header siempre fijo y visible (sin animación, modo sticky OFF)
   ============================= */
@media (min-width: 769px) {
  #menu.header-always-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: auto;
    transition: none !important;
  }
}

img.cositas-link {
  cursor: pointer;
}

