


        .hero {
            padding: 140px 40px 37px 40px;
            /*background-color: purple;*/
            width: 100%;
            display: flex;
            justify-content: space-between;
            height: 90vh;
            position: relative;
            align-items: center;
            gap: 20px;
        }

        .hero h1 {
            font-size: 60px;
            line-height: 54px;
        }

        .hero .textos p {
            font-size: 21px;
            line-height: 28px;
            letter-spacing: 2%;
        }

        .hero .modalidad p {
            font-size: 13px;
            line-height: 17px;
            text-transform: uppercase;
            letter-spacing: 8%;
        }

        .hero .flecha {
            display: flex;
            width: 44px;
            height: 42.67px;
            border: none;
            cursor: pointer;
            z-index: 2;
            background-color: inherit;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            transition:
                background-color 0.3s ease,
                box-shadow 0.3s ease,
                transform 0.3s ease;
        }

        .hero .flecha img {
            transition: transform 0.3s ease;
        }

        .hero .flecha:hover,
        .hero .flecha:focus-visible {
            transform: translateY(-2px);
        }

        .hero .flecha.prev:hover img,
        .hero .flecha.prev:focus-visible img {
            transform: translateX(-2px);
        }

        .hero .flecha.next:hover img,
        .hero .flecha.next:focus-visible img {
            transform: translateX(2px);
        }

        .hero .container {
            width: 100%;
            max-width: 1406px;
            display: flex;
            flex-direction: column;
            gap: 46px;
            /*background-color: brown;*/
            align-items: center;
            z-index: 1;
        }

        .hero .puntitos {
            width: fit-content;
            gap: 10px;
            display: flex;
            /*background-color: orange;*/
        }

        .hero .contenido {
            display: flex;
            width: 100%;
            gap: 42px;
            justify-content: space-between;
            /*background-color: darkblue;*/
        }

        .hero .textos {
            display: flex;
            flex-direction: column;
            gap: 19px;
            width: 100%;
            max-width: 682px;
            /*background-color: blue;*/
            justify-content: center;
            color: white;
        }

        .hero .modalidad {
            display: flex;
            gap: 20px;
            align-items: center;
            color: white;
        }

        .hero .logo {
            width: 72px;
            height: 77px;
            display: flex;
            flex-shrink: 0;
        }

        .hero .picture {
            width: 100%;
            max-width: 549px;
            height: auto;
            aspect-ratio: 549/383.58;
            overflow: hidden;
        }

        .hero .background {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            /*background-color: darkgrey;*/
            overflow: hidden;
            z-index: 0;
        }

        .hero .background img {
            object-position: center;
            object-fit: cover;
            width: 100%;
            height: 100%;
            filter: blur(18px) brightness(0.45);
            transform: scale(1.08);
            background-color: darkgrey;
        }

        .hero img {
            object-position: center;
            object-fit: cover;
            width: 100%;
            height: 100%;
        }

        .hero .hero__button {
            width: fit-content;
            height: 43px;
            margin-top: 30px;
            padding: 0 13px 0 25px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            background: #f2f2f2;
            font-size: 15px;
            line-height: 17.36px;
            text-decoration: none;
            white-space: nowrap;
            color: #000000;
            transition:
                background-color 0.3s ease,
                color 0.3s ease,
                box-shadow 0.3s ease,
                transform 0.3s ease;
        }

        .hero .hero__button-icon {
            width: 21px;
            height: 20px;
            display: block;
            flex: 0 0 21px;
            object-fit: cover;
            object-position: center;
        }

        .hero .picture img {
            transition: transform 0.45s ease;
        }

        .hero .picture:hover img {
            transform: scale(1.04);
        }

        .hero .hero__button:hover,
        .hero .hero__button:focus-visible {
            background-color: #ffffff;
            color: #750b04;
            box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16);
            transform: translateY(-2px);
        }

        .hero .punto {
            height: 9px;
            width: 9px;
            border-radius: 40px;
            background-color: rgba(255,255,255,0.4);
            transition: all .3s ease;
        }

        .hero .punto.activo {
            width: 22px;
            background-color: rgba(255,255,255,0.8);
        }

        @media (min-width: 768px) and (max-width: 1024px) {
            .hero {
                padding: 100px 32px 34px 32px;
                min-height: 100vh;
                height: auto;
                gap: 18px;
                overflow-x: hidden;
            }

            .hero h1 {
                font-size: 44px;
                line-height: 44px;
            }

            .hero .textos p {
                font-size: 18px;
                line-height: 26px;
            }

            .hero .modalidad p {
                font-size: 12px;
                line-height: 16px;
            }

            .hero .flecha {
                width: 40px;
                height: auto;
                flex-shrink: 0;
            }

            .hero .container {
                gap: 32px;
                max-width: 880px;
            }

            .hero .contenido {
                flex-direction: column;
                align-items: center;
                gap: 34px;
            }

            .hero .textos {
                max-width: 720px;
                align-items: center;
                text-align: center;
                gap: 17px;
            }

            .hero .modalidad {
                justify-content: center;
                gap: 16px;
            }

            .hero .logo {
                width: 62px;
                height: 66px;
            }

            .hero .picture {
                max-width: 520px;
            }
        }

        @media (max-width: 767px) {
            .hero {
                padding: 72px 20px 28px 20px;
                min-height: 100vh;
                height: auto;
                justify-content: center;
                gap: 0;
                overflow-x: hidden;
            }

            .hero h1 {
                font-size: 38px;
                line-height: 40px;
            }

            .hero .textos p {
                font-size: 16px;
                line-height: 24px;
            }

            .hero .modalidad p {
                font-size: 11px;
                line-height: 15px;
            }

            .hero .flecha {
                position: absolute;
                top: auto;
                bottom: 28px;
                width: 36px;
               height: auto;
                transform: none;
            }

            .hero .flecha.prev {
                left: calc(50% - 104px);
            }

            .hero .flecha.next {
                right: calc(50% - 104px);
            }

            .hero .container {
                max-width: 100%;
                gap: 28px;
                padding-bottom: 54px;
            }

            .hero .contenido {
                flex-direction: column;
                align-items: center;
                gap: 26px;
            }

            .hero .textos {
                max-width: 100%;
                align-items: center;
                text-align: center;
                gap: 15px;
                padding: 0 18px;
            }

            .hero .modalidad {
                justify-content: center;
                gap: 12px;
            }

            .hero .logo {
                width: 50px;
                height: 54px;
            }

            .hero .picture {
                max-width: 360px;
            }

            .hero .puntitos {
                position: absolute;
                left: 50%;
                bottom: 28px;
                height: 36px;
                transform: translateX(-50%);
                align-items: center;
                gap: 8px;
            }

            .hero .punto {
                width: 8px;
                height: 8px;
            }

            .hero .punto.activo {
                width: 20px;
            }
        }
